Opengl 顶点逆时针/顺时针

Opengl 顶点逆时针/顺时针,opengl,vertices,Opengl,Vertices,我正在读几本关于OpenGL的书,其中两本书总是逆时针定义顶点。据我所知,这是非常关键的,因为它决定了前面和后面的位置 但我也在阅读关于的教程,他是按顺时针方向定义的 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中的默认值 另外,为

我正在读几本关于OpenGL的书,其中两本书总是逆时针定义顶点。据我所知,这是非常关键的,因为它决定了前面和后面的位置

但我也在阅读关于的教程,他是按顺时针方向定义的

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中的默认值

另外,为什么a型
浮动
?它不应该是一个
GLfloat

我不应该总是使用逆时针符号吗,因为那是 opengl中的默认设置

这是你的选择。您可以使用CCW或CW表示法。您始终可以使用
glFrontFace()
覆盖此行为。硬件没有区别,哪种方式工作,但是,我想,当试图使用第三方库时,选择CW可能会导致一些意想不到的问题,而第三方库更喜欢CCW或类似的东西

为什么a型浮动?这不应该是一辆汽车吗

它应该是
GLfloat
。另一方面,在大多数平台上,
float
GLfloat
是完全相同的,没有任何区别。从可移植性的角度来看,使用
GLfloat
是更好的做法。另一个考虑事项:它强调变量用于图形渲染,因此这是一件好事