|   |      1 
                                  9
                             glviewport()完全独立于矩阵转换堆栈,可以随时调用。 glloadIdentity()通常在矩阵模式更改后立即调用,因此如果愿意,您将启动“fresh”。gluPerspective()、glortho()、glfrutStum()、glrotate()、glmultmatrix()、gltranslate()等矩阵转换是累积操作,因为它们聚合起来可以让您描述复杂的三维世界空间转换或描述OpenGL查看体积。示例:如果我想让一个立方体在+X方向上转换,然后围绕Z轴旋转,我会发出一个glrotate(),后面跟着一个gltranslate()。 glloadIdentity()使用标识矩阵擦除矩阵(当前矩阵模式),因此glloadIdentity()使用gluPerspective()等同于对glloadIdentity()的单个调用。换言之,这个顺序是无意义的。 颠倒这些顺序,因为gluPerspective()将用透视转换来乘以当前矩阵。如果当前矩阵是同一矩阵,那么乘法只会导致gluPerspective()矩阵转换,这是透视视图时99%的投影矩阵模式所需的转换。 在glmatrixmode()的行为或这些矩阵函数如何修改gl矩阵状态方面,OpenGL和OpenGL ES之间没有区别。 | 
|   |      2 
                                  2
                             glloadIdentity将一个标识矩阵加载到当前矩阵(由glmatrixMode激活),从而重置它。我不明白首先调用gluPerspective然后调用glloadIdentity如何完成任何合理的事情。 您发布的代码也正是您在普通OpenGL中执行该操作的方式。 | 
|   | Murilo · Jetpack编写导航栏项目图标 8 月前 | 
|   | KolaYAndr · 活动RESULT_OK似乎从未发生过 9 月前 | 
|   | psycho_pat · Android应用程序中的权限 9 月前 | 
|  | FarazFiroz · 如何将argb转换为描述性文本颜色 9 月前 | 
|   | Daniel · Unity Android游戏支持的设备数量太少 9 月前 |