》而來,實現**使用as3,專案位址是:與-examples,而3d類庫**則是模仿away3d的設計來編寫的,實現上盡可能模仿away3d,部分修改的地方學習筆記中會進行特別說明。
言歸正傳,先看看2d方面,對於2d的笛卡爾座標系,一共有8種表示方式:
如果n表示y軸,e表示x軸,那麼一般2d的座標系選擇的是第二行的第二列來表示(比如flash中的座標系),
2d座標系有乙個特點,無論使用任何表示方式都可以通過旋轉變成任意一種表示方式。
當我們再新增乙個軸變成3d座標系後呢?
左手座標系和右手座標系
在3d笛卡爾座標系中,表示方式變成了48種,並且一種表示方式不能通過旋轉任意變換為另一種表示方式了。
但是如果分為24種左手座標系表示法和24種右手座標系表示法,在左手或右手座標系中,2d的定律任然管用,即無論使用任何表示方式都可以通過旋轉變成任意一種表示方式。
下面我們看看:
書中使用的是左手座標系,(表示方法是:
+x,+y,+z分別指向右方,上方,前方
),而away3d也使用了左手座標系,我的小類庫也就一起使用左手座標系了。
中更傾向於使用右手座標系。
如果我們在處理一些運算或使用3d建模軟體時,需要特別的看一下其使用的座標系是否和我們使用的一致,否則會導致錯誤的結果。
當然左手座標系和右手座標系的轉換也非常簡單,一般來說,我們只要改變任意乙個軸的方向為反向即可。
多座標系
我們在實際使用時不會只使用乙個座標系,而通常會使用到多個座標系,下面我們來具體的看看:
座標系巢狀
我們可以從2d空間開始看,在flash的2d顯示列表中是呈現一種樹形的結構,每個顯示物件都會有一套自己的座標系,這稱為座標系巢狀,那麼在3d中也是一樣的情況。
世界座標系
世界座標系表示當前空間中最根部的座標系,可以理解為
2d中的
或root物件,可以將世界座標系看做絕對座標系。
物體座標系
即每個顯示物件的座標系,可以看做本地座標系或相對座標系。簡單的來說,如果在世界座標系中有乙個人,我們叫他「向前走」是按他的本地座標系來處理,這個人面向的方向不同,其行走的方向就不同,但是對他來說都是向前走,而如果叫他「向東走」,則是按世界座標來處理,無論這個人面向的方向如何,都應該是走向世界座標系的東方。
攝像機座標系
(2d空間)上。
慣性座標系
慣性座標系是一種輔助座標系,其目的是用來簡化兩個座標系之間的轉換。慣性座標系總是平行於世界座標系,即其只表示物體座標系相對於世界座標系的平移,而不管物體座標系的旋轉,將多個操作進行簡化。
3D數學基礎筆記
最近裝置也到手了書也回來了在圖書館窩了幾天把前面五章看了做了點筆記 我是不會說是因為在家裡頹廢被嫌棄才跑出來學習的 xd 看了五章心有感慨想穿越回去把自己揍一頓為什麼不好好學線代為什麼?啊?看了下整本書的目錄大概分為三部分 線性代數的基礎應用比如各種變換如旋轉,反射等等。圖形學 高等變換的線性代數解...
3d數學基礎 常用向量相關運算
作為半路出家的unity程式,必須要補一補3d數學相關的基礎。在遊戲中,運用的比較多的就是三維向量了。三維向量中,比較常見的操作有 1.求兩點距離 這個比較簡單,直接使用目標點各個座標分量相減,然後利用勾股定理求取長度即可。math.sqrt x x y y z z 2.求兩向量夾角 求向量夾角,則...
3D數學筆記 任意軸旋轉
題記 公式 v v n n v v n n cos sin u x v 表示三維空間旋轉的方法有很多,這裡關注軸角式,並採用右手座標系 如圖 有旋轉軸 u x y z 我們希望向量v,沿著這個旋轉軸旋轉 度,變換到v 我們來變換一下v 1.旋轉的分解 首先,我們可以將v分解為平行於旋轉軸u以及正交與...