顶点计数/逆时针

6
我正在阅读几本关于OpenGL的书籍,在其中有两本书总是按逆时针定义顶点。根据我的了解,这非常重要,因为它决定了正反面的位置。
但我也在阅读http://www.arcsynthesis.org/gltut/上的教程,他按顺时针定义它们。
const float vertexPositions[] = {
    0.75f, 0.75f, 0.0f, 1.0f,
    0.75f, -0.75f, 0.0f, 1.0f,
    -0.75f, -0.75f, 0.0f, 1.0f,
};

我应该总是使用逆时针表示法,因为这是OpenGL中的默认设置吗?

另外,为什么类型是float?它不应该是GLfloat吗?

1个回答

9
我应该始终使用逆时针符号,因为这是opengl的默认设置吗?
这是您的选择。您可以使用逆时针或顺时针符号。您始终可以使用glFrontFace()覆盖此行为。硬件无论哪种方式工作都没有区别,但我想选择CW可能会在尝试使用更喜欢CCW的第三方库时引起一些意外的麻烦。
另外,为什么类型是float?它不应该是GLfloat吗?
应该使用GLfloat。另一方面,在大多数平台上,floatGLfloat完全相同,找不到任何区别。从可移植性的角度来看,使用GLfloat是更好的做法。另一个考虑因素是:它强调变量用于图形渲染,所以这是一个好习惯。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接