OpenGL合并转换
生活随笔
收集整理的這篇文章主要介紹了
OpenGL合并转换
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OpenGL合并轉換
- OpenGL合并轉換簡介
- 源代碼剖析
- 主要源代碼
OpenGL合并轉換簡介
在上一課中,我們發現了一些轉換,這些轉換在 3D 空間中靈活地移動對象。我們還有許多要研究的(相機控制和透視投影),但正如您可能已經猜到的,我們需要結合轉換。在大多數情況下,您希望縮放對象以匹配實際縱橫比、旋轉以獲得正確的方向、移動到某處等。為了執行上述轉換,我們需要將第一個轉換矩陣乘以向量,然后將第二個矩陣乘以第一個操作的結果,然后將第三個矩陣乘以先前計算的結果。這將繼續,直到所有矩陣乘以向量。最簡單的方法就是將所有轉換矩陣提供到著色器,并讓它們成乘。但是,這并不有效,因為所有矩陣對于所有頂點都是相同的,只會改變位置向量。幸運的是,線性代數提供了一套規則,使我們的生活更輕松。它告訴我們,如果給出一組矩陣M0…Mn和矢量 V, 然后公平地說: Mn* Mn-1* … * M0* V = (Mn* Mn-1* … * M0) * V 所以,如果你計數: N = Mn* Mn-1* … * M0然后: Mn* Mn-1* … * M0* V = N * V
這意味著我們可以計算 N 乘法,然后將其作為單一變量發送到著色器,在其中,它將對每個頂點進行乘法。因此,GPU 將僅計算每個頂點每個向量的一個矩陣乘法。
在 N 中,矩陣應按什么順序排列?首先要
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的OpenGL合并转换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中国银行信用卡可以网上激活吗
- 下一篇: OpenGL相机控制之一