C++ opengl 对OpenGL中矩阵设置的初步认识
對OpenGL中矩陣設置的初步認識:
在入門級的代碼里面,通常在初始化OpenGL中可以看到這樣的代碼:
此處暫時只做初步認識,不做深入理解!
投影矩陣:
1.人的眼睛或者攝像機:看到的東西投影到攝像機上面(或者理解為視網膜上)就可以看到東西了;
2.投影:把3D空間里面的東西,變成2D的,顯示到屏幕上的;
3.在視角里面,其實有近平面和遠平面,也就是OpenGL里面,可以看到的,最近和最遠的距離。在視野里面看到的東西都會投影到近平面里面;
4.在現實生活中視野都是像金字塔那種形狀的,但在計算機中,他是正方體(但在OpenGL里面會有特定的算法,顯示的時候和現實差不多的,用OpenGL就是以攝像機的形式來編程的)
暫時可以這樣理解這些代碼(非權威)
1.投影矩陣的作用就是為了把所描繪的物體投影到我們的視網膜上面;
2.模型視圖矩陣就是為了放物體的!!!!
解釋下上面的代碼:
1.glMatrixMode(GL_PROJECTION)是設置當前的矩陣為投影矩陣;
2.gluPerspective是為當前的矩陣賦值,因為上一步設置當前矩陣為投影矩陣了,所以gluPerspective相當于為投影矩陣賦值;
3.設置模型視口矩陣模型視口矩陣的操作跟設置投影矩陣是一樣的思路。glMatrixMode(GL_MODELVIEW)是設置當前的矩陣為模型視口矩;
4.glLoadIdentity是為當前的矩陣賦值,因為上一步設置當前矩陣為模型視口矩陣了,所以glLoadIdentity相當于為模型視口矩陣賦值。
因為新建一個OpenGL渲染RC后,里面的矩陣是未知的,所以要設置。繪制模型的時候,投影矩陣和模型視口矩陣是一定會參與運算的。
總結
以上是生活随笔為你收集整理的C++ opengl 对OpenGL中矩阵设置的初步认识的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 系统架构师学习笔记-操作系统(二)
- 下一篇: C++工作笔记-枚举类型的作用