我正在浏览一系列NeHe OpenGK教程。 Tutorial #9做一些花哨的东西;我明白了一切,除了两件事我认为是整个教程的骨干。OpenGl旋转和翻译
在DrawGlScene
函数中,我没有理解下面这行。
glRotatef(tilt,1.0f,0.0f,0.0f); // Tilt The View (Using The Value In 'tilt')
我明白那行代码的作用,它在教程中也很清楚地提到。但我不明白他为什么要倾斜屏幕。
另一件事是他首先倾斜屏幕,然后用星形角度旋转屏幕,然后立即旋转屏幕。那是什么技术?什么需要倾斜?当星星面向用户时,旋转星星。
glRotatef(star[loop].angle,0.0f,1.0f,0.0f); // Rotate To The Current Stars Angle
glTranslatef(star[loop].dist,0.0f,0.0f); // Move Forward On The X Plane
glRotatef(-star[loop].angle,0.0f,1.0f,0.0f); // Cancel The Current Stars Angle
glRotatef(-tilt,1.0f,0.0f,0.0f); // Cancel The Screen Tilt
如果有些机构告诉我机制正在进行,我将非常感激。
你可能想看看一个相关的问题http://stackoverflow.com/questions/6565630/rotate-5-circle-problem – whoplisp