我想在openGL3.3中创建一些简单的多边形。我有2种具有以下属性类型的对象:GL_CULL_FACE使所有的对象消失
对象1 - 10个顶点(在下面列出,按顺序)存储在GL_ARRAY_BUFFER
并使用GL_TRIANGLE_FAN
v x y z w
v 0.0 0.0 1.0 1.0
v 0.0 1.0 0.1 1.0
v 0.71 0.71 0.1 1.0
v 1.0 0.0 0.1 1.0
v 0.71 -0.71 0.1 1.0
v 0.0 -1.0 0.1 1.0
v -0.71 -0.71 0.1 1.0
v -1.0 0.0 0.1 1.0
v -0.71 0.71 0.1 1.0
v 0.0 1.0 0.1 1.0
对象2 - 4个顶点(在下面列出,在顺序)存储在GL_ARRAY_BUFFER
并使用GL_TRIANGLE_STRIP
v x y z w
v 0.0 0.0 0.0 1.0
v 0.0 1.0 0.0 1.0
v 1.0 0.0 0.0 1.0
v 1.0 1.0 0.0 1.0
予加载64 Object1的和4 Object2的的。对象2的缩放使用glm::scale(20, 20, 0)
。
当我试图呈现这些与GL_CULL_FACE
禁用,但GL_DEPTH_TEST
启用glDepthFunc(GL_LESS)
一切工作正常。只要我尝试启用GL_CULL_FACE
,我所得到的只是一个空白窗口。
一些其他有用的信息:
- 渲染顺序= 4对象2的后面64 Object1的
- 相机 - glm::lookAt(glm::vec3(0.0f, 0.0f, 50.0f), glm::vec3(0.0f, 0.0f, 0.0f), glm::vec3(0.0f, 1.0f, 0.0f));
- 视角 - glm::perspective(45.0f, 16.0f/9.0f, 0.01f, 1000.0f);
我一直在试图找出为什么GL_CULL_FACE
不起作用过去几天却不知道。任何帮助深表感谢。