을 사용하여 OpenGL
의 간단한 테스트를 작성하려고합니다. 텍스처가있는 정사각형을 그려야합니다. 지금까지 나는 이것에왔다 :Tao.Framework를 사용하여 텍스처로 정사각형을 그리는 간단한 예제
private void simpleOpenGlControl1_Paint(object sender, PaintEventArgs e)
{
simpleOpenGlControl1.InitializeContexts();
Gl.glClearColor(0f, 0f, 0f, 0f);
Gl.glClear(Gl.GL_COLOR_BUFFER_BIT);
Gl.glOrtho(-1, 2, -1, 2, 1, -1);
// Open image
var fileName = @"C:\mypath\image.bmp";
var bmp = new Bitmap(fileName);
var bmpData = bmp.LockBits(
new Rectangle(0, 0, bmp.Width, bmp.Height),
ImageLockMode.ReadOnly,
PixelFormat.Format24bppRgb);
// Texture
Gl.glTexImage2D(Gl.GL_TEXTURE_2D, 0, (int)Gl.GL_RGB8,
bmp.Width, bmp.Height, 0, Gl.GL_BGR_EXT,
Gl.GL_UNSIGNED_BYTE, bmpData.Scan0);
Gl.glBindTexture(Gl.GL_TEXTURE_2D, 0);
// Draw a square.
Gl.glBegin(Gl.GL_POLYGON);
Gl.glVertex2f(0, 0);
Gl.glVertex2f(0, 1);
Gl.glVertex2f(1, 1);
Gl.glVertex2f(1, 0);
Gl.glEnd();
}
사각형은 텍스처가 아닌 예상 된 모양으로 렌더링된다. 나는 OpenGL
에 새롭고, 더 많은 사람은 Tao.Framework
입니다. 어떻게 해결할 수 있습니까? 또는 텍스처를 추가하는 올바른 방법은 무엇입니까?
//...
Gl.glEnable(Gl.GL_TEXTURE_2D);
// Draw a square.
Gl.glBegin(Gl.GL_POLYGON);
Gl.glTexCoord2f(0, 0); Gl.glVertex2f(0, 0);
Gl.glTexCoord2f(0, 1); Gl.glVertex2f(0, 1);
Gl.glTexCoord2f(1, 1); Gl.glVertex2f(1, 1);
Gl.glTexCoord2f(1, 0); Gl.glVertex2f(1, 0);
Gl.glEnd();
그러나 사각형 텍스처없이 유지 : 난 @ j를-P의 도움으로
편집
이보십시오.
더 많은 도움이 필요했는데 :-) –