我有一些项目,其中包括来自 Glut 命名空间的许多 3d 对象,例如
Glut.glutSolidCone(0.75, 30, 4, 20);
我无论如何都找不到在这些对象上应用纹理,只有 2d 纹理适用于 2d 对象。
我试过这段代码,虽然我认为它是错误的,但它没有用,
Gl.glPushMatrix();
Gl.glEnable(Gl.GL_TEXTURE_2D);
Try.Terrain.LoadGLTextures("Textures/Sitework.Paving - Surfacing.Riverstone.jpg");
Gl.glTexCoord2d(0, 0);
Gl.glTexCoord2d(0, 1);
Gl.glTexCoord2d(1, 1);
Gl.glTexCoord2d(1, 1);
Gl.glRotated(90, 1, 0, 0);
Glut.glutSolidCone(5, 10, 30, 30);
Gl.glDisable(Gl.GL_TEXTURE_2D);
Gl.glPopMatrix();
结果是这个 3d 对象出现时应用了纹理的基本颜色。