91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

OpenGL ES 矩陣變換及其數學原理詳解(五)

發布時間:2020-10-14 22:16:15 來源:腳本之家 閱讀:128 作者:weiers 欄目:移動開發

引子

  1. 向量刻畫的是線性空間中的對象。
  2. 矩陣刻畫的是向量在線性空間中的運動(變換,躍遷),相似矩陣本質上就是同一個線性變換的不同的描述。
  3. 在一個線性空間中,選定了一組基,對于任何一個線性變化都可以用一個確定的矩陣來描述
  4. 矩陣不僅可以作為線性變換的描述,而且可以作為一組基的描述,作為變換的矩陣,不但可以把線性空間中的一個點給變換到另一個點去,而且也能夠把線性空間中的一個坐標系(基)表換到另一個坐標系(基)去。
  5. 當我們談到向量時,一定要指定它所在的坐標系才有意義,比如向量b=(1,2,3)實際上指的是在單位坐標系I下有一個向量的度量為b。
  6. 就可以理解Ma=b就可以看成Ma=Ib,就是說在坐標系M中度量出來的向量a和在坐標系I里面度量出來的b實際上就是同一個向量。
  7. 對于矩陣而言,他表示出來的那個坐標系也是由一組基(向量)組成的,同樣存在這組基實在哪個坐標系下度量的問題。對于矩陣M,將其理解成IM,即M中的那組向量是在I坐標系中得出的。
  8. MxN本質是聲明了一個在M坐標系中量出的另一個坐標系N,其中M本身是在I坐標系中度量出來的。
  9. 對坐標系施加變換的方法,就是讓表示那個坐標系的矩陣與表示那個變化的矩陣相乘。

因此我們來理解這樣一個式子,ACb,AC為矩陣,b為一個向量

  • b是一個向量,他是在I坐標系下度量的,a = Cb也就是在I坐標系下將向量b變換到向量b,d=ACb=Aa的含義就是繼續在I坐標系下將向量a變換到向量d。即在同一個坐標系I下面進行了兩次變換操作。
  • 另一種理解方式是ACb=IACb,那么IAC三個矩陣相乘就表示了坐標系的變換,在I坐標系中度量處新的坐標系IA,再在IA坐標系下度量出IAC,然后這里最終的坐標系中的向量b和在1中在I坐標系中經過兩次變換得到的向量是同一個向量。

上面的兩種理解方式也揭示了對向量的變換和對坐標系的變換是等價的,這一點也可以通過后面旋轉變換的圖示中看出來。

各種變換

平移矩陣

OpenGL ES 矩陣變換及其數學原理詳解(五)

縮放矩陣

OpenGL ES 矩陣變換及其數學原理詳解(五)

平移矩陣和縮放矩陣很容易理解,并且從矩陣形式我們也可以看到為什么用四維的向量表示一個頂點了,除了w分量用來做透視除法以外,另一個作用不也正好是為了把平移整合進來嗎,都做乘法而不做加法。在數學上也就是將三維空間的坐標表示成其齊次形式.

旋轉變換

旋轉變換相對來說較為復雜,對繞x、y或z軸旋轉的情況比較好理解。

OpenGL ES 矩陣變換及其數學原理詳解(五)

以繞z軸旋轉為例

OpenGL ES 矩陣變換及其數學原理詳解(五)

于是

OpenGL ES 矩陣變換及其數學原理詳解(五)

寫成矩陣形式為

OpenGL ES 矩陣變換及其數學原理詳解(五)

繞任意軸旋轉的旋轉矩陣為

OpenGL ES 矩陣變換及其數學原理詳解(五)

同理,前面學到的正交投影矩陣,透視矩陣以及攝像機矩陣,本質上和上面的變換都是一樣的。

前面可以看到一般傳入渲染管線的是一個由攝像機矩陣,投影矩陣,變換矩陣相乘得到的總的變換矩陣,

在頂點著色器中一般是這樣的形式

gl_Position = uMVPMatrix * vec4(aPosition,1);

上面的代碼中的變量uMVPMatrix表示了模型(M)、視圖(V)、投影(P)三中變換綜合,

OpenGL ES 矩陣變換及其數學原理詳解(五)

注意到矩陣乘法的順序,對每個點所做的變換是有順序的,對每個點先進行模型變換(平移縮放旋轉)、再進行視圖變換(攝像機視角)再進行投影變換,這三個變換順序是不可變得,因為改變順序最終看到的效果都是不一樣的。

對每個點所做的綜合變換本質上就是對這個點進行矩陣相乘,然而就我們傳入的是最終的綜合變換矩陣而言,剛才的理解不是特別準確,換個思路理解成綜合變換矩陣就是對坐標系的變換會更好,因為畢竟我們是一次性將這個相乘后的綜合矩陣傳進去的。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

财经| 炎陵县| 博客| 萨嘎县| 葫芦岛市| 哈尔滨市| 玉树县| 于田县| 东阿县| 桐乡市| 紫金县| 崇明县| 湘阴县| 丹寨县| 万安县| 沙坪坝区| 阿鲁科尔沁旗| 庆阳市| 康平县| 福州市| 淳化县| 保德县| 公主岭市| 南丰县| 沙洋县| 信宜市| 龙陵县| 临沧市| 项城市| 长汀县| 宁蒗| 麟游县| 陆丰市| 霍林郭勒市| 西乌珠穆沁旗| 根河市| 丽江市| 突泉县| 海晏县| 淄博市| 新疆|