LearnOpenGL學習筆記(六):座標系統
阿新 • • 發佈:2018-12-13
LearnOpenGL學習筆記(六)
1.概述
在OpenGL中,對我們來說比較重要的總共有5個不同的座標系統:
- 區域性空間(Local Space,或者稱為物體空間(Object Space))
- 世界空間(World Space)
- 觀察空間(View Space,或者稱為視覺空間(Eye Space))
- 裁剪空間(Clip Space)
- 螢幕空間(Screen Space)
區域性空間是指物體所在的座標空間,即物件最開始所在的地方。 世界空間中的座標正如其名:是指頂點相對於(遊戲)世界的座標。 觀察空間經常被人們稱之OpenGL的攝像機(Camera),是將世界空間座標轉化為使用者視野前方的座標而產生的結果。 OpenGL期望所有的座標都能落在一個特定的範圍內,且任何在這個範圍之外的點都應該被裁剪掉(Clipped)。被裁剪掉的座標就會被忽略,所以剩下的座標就將變為螢幕上可見的片段。這也就是裁剪空間
將上述的每一個步驟都建立一個變換矩陣:模型(model)矩陣、觀察(view)矩陣和投影(projection)矩陣。一個頂點(V_local)座標將會根據以下過程被變換到裁剪(V_clip)座標:
2.程式碼和執行結果
這裡直接給出了同時渲染十個立方體且使用模型(model)矩陣只讓是3倍數的箱子旋轉(以及第1個箱子)的程式碼,點選這裡
執行結果如下所示: 其中應該有四個箱子在旋轉。