问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

初学OpenGL的几个注意点

发布网友 发布时间:2022-05-07 19:41

我来回答

1个回答

热心网友 时间:2022-07-01 06:02

1,OpenGL是一个状态机,当前设定某个状态之后,效果将一直持续到下次重新设定。状态可以查询。
2,关于变换(矩阵):
i)变换矩阵分为三类,其一是“模型视图”矩阵,其二是“投影”矩阵,其三是“纹理”矩阵;不同命令形成的矩阵将自动归到不同类别,例如glRotatef生成的矩阵属于模型视图,gluPerspective生产的矩阵自动归到投影矩阵那类。但是当你要glLoadIdentity时,你发现它无法自动归类,再或者说你要使用glMultMatrixf时,它也不知道归到哪一类时,这时你必须用命令glMatrixMode来指明清楚,让他归到哪一类。其实说是说三类,实际上当前矩阵就三个(设为M,P,T),假设现在又新生成一个模型视图矩阵A,那么实际上就是在当前的模型视图矩阵M后面再乘以M,即更新后的模型视图矩阵是M*A,都是右边乘上去。
ii)关于变换顺序的理解:如果要在全局坐标系中理解,那么变换得反着看;如果想象成局部坐标系,那么变换就是顺着看(非归一化的缩放除外);
iii)关于矩阵堆栈,有一点必须要明白,那就是当前矩阵总是在栈顶的,也可以说,栈顶就是存放当前矩阵的地方。和i)类似,有三个堆栈(堆栈深度分别为32,2,2),分别用于存取三类矩阵。假设当前三个矩阵为(M,P,T),首先得通过glMatrixMode来指明清楚你即将使用哪个堆栈,如果用的是GL_MODELVIEW参数,然后再glPushMatrix时,就把当前的模型视图矩阵M复制一个(也就是把modelview栈的栈顶复制一个),然后压进了栈顶端(原来的栈顶成了现在的第二了,当然,现在栈顶和第二两个矩阵都是一样的,这样就起到保存当前设置的作用,因为接下来当前矩阵的改变实质是改变栈顶,第二及其以下都是不动的,除非使用pop后),假设你现在手头控制的模型视图矩阵还是M,假设现在又新生成一个模型视图矩阵A,那么当前的模型视图矩阵就是是M*A,同时栈顶端的矩阵也是M*A(因为栈顶就是当前矩阵),此时如果glPopMatrix的话(栈顶自己丢掉,第二个矩阵成栈顶了,因为栈顶就是当前,所以),那么当前的模型视图矩阵又成了M,因为栈顶是M,取出来之后作为当前的视图模型矩阵。 最后,由于深度有限,尽量少push,以免出错。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我网贷一万,手续费300,分24期,每期506.67,请问怎么计算月息,和年利率... 多普达手机铃音多普达手机铃声 【车载软件推荐】有车一族必备软件有哪些?好用的车主必备app 我画画时常被说我画画不动脑筋,弱弱的问一句,画画怎样动脑筋? 三星手机如何设置时间在桌面显示? 精确到十分位,要看小数点右边第一位 对吗 要把一个小数精确到十分位,就要看这个小数的( )A.十分位B.百分位C... 黑米算不算粗粮 存定期协议利率选是还是否? 同城上那些卖二手ndsi的是真的吗? 如何在openGL的视图中用鼠标交互画线 opengl中的gluLookat函数生成的图像为什么会发生变化 用OpenGL建立三维坐标系 怎么删除word表格中的线 以前微信绑定银行卡,以前的不用了,请问怎么才能解除绑定? 已经不用了,绑定的银行卡如何消除 以前微信绑定银行卡,以前的不用了,请问怎么才能解除绑定? 奥迪车的四个OOOO代表什么? 奥迪的车标志是什么样的? 英语的感叹句 8寸的蛋糕有多大 小米手机4系统内存优化等级设置为高级后有什么作用 小米手机哪些牌子是中高端的,哪些是旗舰版,高端的? 小米手机部分网友被称为中低端产品,大家所认为的高端手机是什么? 求透明动态背景图片的下载地址,放在空间里的,急,在线等 透明背景图片 给一张全透明背景图片,或者透明背景很多的图,谢啦! 求雷电png透明背景图片 求此图背景透明图 买了个卡西欧的表6月份没有31号,为什么手表上显示31号呢? 为什么有的三维软件使用OpenGL会闪屏? 如何在MFC中利用OpenGL实现三维图形的绘制 怎样在opengl中如何判断鼠标和摄像机连线的延长线与某个平面相交并求其交点?(代码) OpenGL的控制机理:OpenGL是怎么实现动画的控制的? opengl投影模型视图矩阵怎么设置? 如何只用视图页面中的一部分显示OpenGL绘制结果 opengl分窗口 opengl 编程问题 photoshop有些功能需要opengl支持,怎么装opengl? 数字图书馆系统集成解决方案包括什么内容?求解 请教如何用OpenGL实现两个窗口同步显示不同 运用云终端解决方案的同时,电子图书馆云终端桌面虚拟化如何提高用户的安全性? 急需一份小型图书馆网络设计方案,条件如下 我男朋友是图书馆的项目负责人,现他图书馆需添几台触摸屏阅览器,请问有好心人知道有什么解决方案没?多 绵阳到四姑娘山,走都江堰-卧龙-日隆路好走不? 绵阳至四姑娘山的最近线路是那条? 我从绵阳去九寨沟和黄龙不知先去这两个景点哪一个较好?另外从九寨到... 四姑娘山在绵阳吗? 四姑娘山位于平武什么地方有多远 从四姑娘山可以到夹金山吗