1

SharpGL を使用してレンダリングすると、画像が大きすぎます。正しく読み込むにはどうすればよいですか?画像のサイズはわずか 313 x 79 ピクセルですが、レンダリングすると画面の残りの部分をほぼ占有します。

このコードは codeplex から取得しました。与えられた例は、3D で画像をレンダリングする方法です (プロジェクトの名前は NativeTexturesSample です)。 https://sharpgl.codeplex.com/downloads/get/614989 . なんとか2Dでレンダリングできましたが、正しくやっていないと思います。

    private void openGLControl1_OpenGLDraw(object sender, RenderEventArgs e)
    {
        const int screenWidth = 1920;
        const int screenHeight = 1080;

        SharpGL.OpenGL gl = this.openGLControl1.OpenGL;

        gl.MatrixMode(OpenGL.GL_PROJECTION);
        gl.Ortho2D(0, screenWidth , screenHeight , 0);
        gl.Disable(OpenGL.GL_DEPTH_TEST);

        gl.LoadIdentity();
        texture.Create(gl, @"C:\image\footerlogo.bmp");
        texture.Bind(gl);

        gl.Begin(OpenGL.GL_QUADS);

        gl.TexCoord(0.0f, 1.0f); gl.Vertex(-2.0f, 0.0f);
        gl.TexCoord(1.0f, 1.0f); gl.Vertex(1.0f, 0.0f);
        gl.TexCoord(1.0f, 0.0f); gl.Vertex(1.0f, 1.0f);
        gl.TexCoord(0.0f, 0.0f); gl.Vertex(-2.0f, 1.0f);

        gl.End();

        gl.Flush();
    }
4

1 に答える 1