使用GLfixed
我的顶点号键入下面的代码绘制贴图预期:任何想法为什么glVertexPointer()在使用GL_FLOAT时不会绘制任何东西?
GLfixed vertices[] =
{
(int)point.x, (int)point.y + size.height,
(int)point.x + size.width, (int)point.y + size.height,
(int)point.x, (int)point.y,
(int)point.x + size.width, (int)point.y
};
glVertexPointer(2, GL_FIXED, 0, vertices);
我在OpenGL的文档阅读GLfixed
是最有效的类型,我应该使用GLfloat
代替。但是当我将代码切换到浮动模式时,没有任何东西可以绘制。
GLfloat vertices[] =
{
point.x, point.y + size.height,
point.x + size.width, point.y + size.height,
point.x, point.y,
point.x + size.width, point.y
};
glVertexPointer(2, GL_FLOAT, 0, vertices);
是否有另一个标志,我需要在OpenGL状态机中设置,以使其表现符合预期?
@Shaun,我在我的答案中修复了一个小错误。 – 2009-12-15 21:34:46
在完全放弃浮点的定点值之前,应该考虑将几何转换为使用GLshort。由于尺寸缩小,它们可能比GLfloats或GLfixeds更有效。在iPhone上调整OpenGL性能时,最小化几何体的大小至关重要。 – 2009-12-16 03:02:45