C++ OpenGL照明与摄像机
我是OpenGL新手,在OpenGL中的照明系统方面一直遇到问题。我使用顶点法线,当我渲染一个单位立方体或四面体时,顶点法线的计算似乎很好。当我运行代码来投影四面体{0,0,0,1,0,0,0,0,1,0,0,0,1}时,我得到了这里附带的输出 但是,当我尝试渲染复杂模型时,灯光有点奇怪 我不确定出了什么问题 你能帮忙吗C++ OpenGL照明与摄像机,c++,opengl,camera,glut,lighting,C++,Opengl,Camera,Glut,Lighting,我是OpenGL新手,在OpenGL中的照明系统方面一直遇到问题。我使用顶点法线,当我渲染一个单位立方体或四面体时,顶点法线的计算似乎很好。当我运行代码来投影四面体{0,0,0,1,0,0,0,0,1,0,0,0,1}时,我得到了这里附带的输出 但是,当我尝试渲染复杂模型时,灯光有点奇怪 我不确定出了什么问题 你能帮忙吗 谢谢大家! 你是如何定义法向量的?你也可以发布你的“drawMesh”功能吗?我怀疑问题就在这里。我在上面添加了drawMesh函数。我使用的是顶点法线,我相信至少在四面体的情
谢谢大家! 你是如何定义法向量的?你也可以发布你的“drawMesh”功能吗?我怀疑问题就在这里。我在上面添加了drawMesh函数。我使用的是顶点法线,我相信至少在四面体的情况下,这是正确计算的。应该在glVertex3f之前调用glNormal3f。但这不是唯一的问题。出于效率考虑,将glBegin/glEnd移到外部For循环之外。是的,我同意Nico Scherlter的观点,带有glVertex3f的线需要与带有GLNORMA3F的线交换,但在计算法线的方式上也可能存在问题。如何初始化m_顶点[]。vnormal_vec[]?