我在使用天空盒时遇到问题。一切都很好,但是当相机在中间(或其他任何地方)时,我们真的感觉就像在一个立方体中,正面包含一部分地面,而不是底面,我们真的感觉到两者之间的 90° 角他们。有什么想法可以改进吗?
注意。我已经编辑了图像,所以颜色是相同的,并且取消了任何灯光效果
于 10 月 10 日编辑
我现在要做的是(混合 OpenGL 和伪代码)
glMatrixMode(GL_PROJECTION)
glEnable(GL_DEPH_TEST)
glMatrixMode(GL_MODELVIEW);
Define_skybox (set vertices/texture coords; bind them on triangles)
glEnable(GL_DEPH_TEST)
glEnable(GL_LIGHTING)
glEnable(GL_TEXTURE_2D)
glEnable(GL_BLEND)
glMatrixMode(GL_PROJECTION)
glLoadIdentity();
glFrustumf(xmin, xmax, ymin, ymax, m_near, m_far)
with : m_fov = 90.0f; m_near = 0.1f; ymax = m_near * tan(m_fov * PI / 360); ymin = -ymax; xmax = ymax; xmin = -xmax;
glMatrixMode(GL_MODELVIEW)
glLoadIdentity();
Create 3 vect (center, eye, up) with spherical coordinate for my camera rotation
eye(0;0;0), up (0; 1; 0),
center is calculated from rotation angle & spherical coordiantes
modelviewmatrix = glulookat(eye, center, up);
glLoadMatrix(modelviewmatrix);