遊戲制作是指制作壹個電子遊戲的過程。由於遊戲的類型、大小和要求不同,遊戲制作所需的人員和時間也不同。以下是我對遊戲開發中矩陣的初步研究,希望大家認真閱讀!
1.矩陣在三維空間中的作用
(1)長方體A想繞(10,3,4)旋轉50°,在X方向放大兩倍,在(9,1,8)方向平移兩個單位。以上變換後的新長方體各點坐標是多少?利用這個矩陣可以很容易地算出答案。
(2)知道了子坐標系在母坐標系中的位置,就可以求出外掛在子坐標系中在母坐標系中的位置。
2.矩陣的基本知識
矩陣可以描述任何線性變換。線性變換保留直線和平行線,線性變換保留直線的同時,長度、角度、面積、體積等其他幾何性質可能會被變換改變。簡單來說,線性變換可能會“拉伸”坐標系,但不會“彎曲”或“滾動”坐標系。
(1)翻譯
下面的矩陣可以在T矢量方向上平移壹個點:
(2)旋轉
正方向是從旋轉軸的正方向看的逆時針方向,比如繞Z軸(X軸平移2,Y軸平移3,Z軸平移4)。
3.從子空間到母空間的變換
將點或方向從任意子坐標系c變換到父坐標系p的矩陣可以寫成MC-p,這個矩陣表示將點或方向從子空間變換到父空間。下面的等式將任何子空間位置向量Pc轉換成母空間位置向量Pp,其中PP = pcmc-p。
Ic是子空間X軸的單位基向量,這個向量用母空間的坐標表示。
Jc是子空間Y軸的單位基向量,用母空間的坐標表示。
Kc是子空間Z軸的單位基向量,這個向量用母空間的坐標表示。
Tc是子坐標系相對於父坐標系的平移。
4.坐標系中點的RST(旋轉、平移和縮放)
OpenGl超集第四版第P101頁說:如果壹個4×4的矩陣包含了不同坐標系的位置和方向(可以看作上面的Mc-p),那麽用這個矩陣乘以壹個頂點Pp,就會產生壹個新的頂點Pc變換到這個坐標系中(坐標仍然是相對於原坐標系的)。這個看起來像公式Pc =Pp Mc-p,錯了!用Pp,把Pp的名字改成A,坐標V,完全是誤導,因為是線性變換,A的坐標在新坐標系下還是V,所以和Pp = PcMc-p壹致,Pp是A在新坐標系下的坐標,V在原坐標系下的坐標。
5.5矩陣變換。OpenGl
OpenGl中的矩陣變換是疊加。每次矩陣變換完成後,零點會移動到新的坐標系。下壹次變換只會影響當前坐標系及其子坐標系,不會影響其父坐標系。加載單位矩陣將零點重置為原始零點。
簡單的矩陣運算是不會移動零點位置的,所以用單位矩陣乘法沒有效果。
;