Quad的Normalvector

时间:2011-11-10 11:39:50

标签: opengl vector normals quad

我用glBegin和glEnd推出了一个简单的四边形。使用for-loop我创建四边形的副本并在3D空间中围绕我的y轴旋转它。 现在问题是我只看到前面的四边形。后面的这些不显示。我假设问题在于法向量,哪个方向对我来说。是否有可能为一个四边形定义两个法向量。谢谢

2 个答案:

答案 0 :(得分:3)

听起来你需要禁用背面剔除:

glDisable(GL_CULL_FACE);

答案 1 :(得分:0)

  

不显示背面的这些内容。我认为问题在于法向量,

问题不在于法线向量,而是OpenGL认为正面和背面的问题。什么是由屏幕上的顶点缠绕决定的。如果顶点以逆时针顺序显示在屏幕上,则默认情况下OpenGL采用正面。如果启用了背面剔除,则不会绘制背面。你可以禁用剔除,但是你会得到奇怪的光照效果。

最好的方法是用它自己的一组四边形明确地绘制背面;绕组和法线调整。