青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

永遠(yuǎn)也不完美的程序

不斷學(xué)習(xí),不斷實(shí)踐,不斷的重構(gòu)……

常用鏈接

統(tǒng)計(jì)

積分與排名

好友鏈接

最新評(píng)論

MAX SDK的INode的變換矩陣,以及Object的一些常識(shí)

轉(zhuǎn)http://blog.csdn.net/Nhsoft/archive/2005/01/06/241629.aspx

MAX SDK中,INode是很重要的一個(gè)部分。 幾乎所有的東西都需要通過INode來訪問:Mesh Camera等.
下面我來簡單的介紹一下和INode相關(guān)的各種不同的TM.(Transformation Matrix).僅僅代表我近日閱讀MAX SDK的一些理解.希望高手指教.新手討論.

 

首先是介紹一下Node和Object(Mesh TriObject等).
MAX里的Scene是由INode構(gòu)成的,Node里包含很多東西.這個(gè)Node可能是可以Deform(變形)的,或者是不可以Deform的。如常見的Editable Mesh和Cylinder一類的東西是可以Deform的Node. 而Camera是不可以Deform的。
一個(gè)包含了幾何物體的Node(就是可以轉(zhuǎn)化為GeomObject的)中的幾何體并不是Node本身.而是Node中的Object .這個(gè)Object 可能是一個(gè)Derived Object(表示這個(gè)Object從別的Object那里派生出來,通常是從上一個(gè)修改器(Modifier)的結(jié)果那里派生的). 同時(shí)還附加了一些Modefier  每個(gè)Modifer的修改結(jié)果都是一個(gè)Deried Object .而類似Pyhsique的修改器都是作用在Derived Object上.因此,要找一個(gè)Node有沒有Pyhsique的修改器,需要通過Derived Object來得到.
INode->GetObjectRef()可以得到這個(gè)物體的Object . 
Object->SuperClassID() == GEN_DERIVED_CLASS_ID的話,就表示這個(gè)Object是一個(gè)Derived Object . 
DerivedObject->GetObjectRef()得到這個(gè)這個(gè)Derived Object是從那個(gè)Object派生出來的..

用上面三個(gè)函數(shù).可以遍歷一個(gè)Node從創(chuàng)建到形成這個(gè)Node,所有經(jīng)過的Derived Object.

如果要得到這個(gè)Node上最終的Object的狀態(tài)(ObjectState.它包含了Node的Object). 只要調(diào)用INode->EvalWorldState()就可以了。

下面.我來介紹Node里容易引起混淆的幾個(gè)TM.
INode->GetNodeTM().: NodeTM()只包含了Node的TM.不是物體的TM. 每個(gè)Node都有個(gè)基準(zhǔn)點(diǎn)(Pivot Point). 這個(gè)Pivot Point在世界坐標(biāo)中的狀態(tài),就是這個(gè)Node的TM. 而附加在這個(gè)Node上的Object相對這個(gè)Pivot Point可能會(huì)有其他的變換(平一,旋轉(zhuǎn)等). 所以.NodeTM不能用來變換Object. 

INode->GetParentTM(). 父節(jié)點(diǎn)的TM.我們說過NodeTM是在世界坐標(biāo)中的。所以,要得到節(jié)點(diǎn)相對父節(jié)點(diǎn)的TM需要 GetNodeTM()*Inverse(GetParentTM()).

INode->GetObjectTM(). 用這個(gè)矩陣,可以把Node中的Object變換到世界空間來.
其實(shí)GetObjectTM() = NodeTM() * (Object相對于Node的變換).

INode->GetObjTMAfterWSM() : WSM的意思是World Space Modifer. Modifer有兩中,一種是Object Space的。一種是World Space的.如名字所暗示的: World Space Modifier要把Object先變換到世界空間里來.而不是物體空間中,所以,如果一個(gè)Object(Node上的Object)受到過World Space Modifier的影響。我們在EvalWorldState()的時(shí)候已經(jīng)把頂點(diǎn)變換到世界坐標(biāo)系中來了。GetObjectTM返回的將是把Object從INode的局部坐標(biāo)系變換到世界坐標(biāo)系的矩陣, 如果把ObjectTM乘上得到的頂點(diǎn)(經(jīng)過WSM后,頂點(diǎn)已經(jīng)在世界空間中了),就做了兩次世界變換了,所以我們需要得到Node的一個(gè)矩陣,這個(gè)矩陣是表示能把經(jīng)過WSM變換后的頂點(diǎn)正確的變換到世界空間中來. 這個(gè)矩陣就是GetObjTMAfterWSM().  如果一個(gè)INode上沒有WSM. 那么GetObjTMAfterWSM()和GetObjectTM是相同的.同樣,它和GetObjTMBeforeWSM也是相同的。

INode->GetObjTMBeforeWSM() : 這個(gè)函數(shù)的到WSM施加在INode前的ObjectTM.即這個(gè)INode不包括WSM時(shí)候,把它的Object的頂點(diǎn)變換到世界坐標(biāo)系中的變換矩陣..


以上只是本人的拙見.參考了MAX SDK中的:
The Node and Object Offset Transformations
Geometry Pipeline System
的兩個(gè)部分.

發(fā)表在這里,希望能讓MAX SDK中的東西也能引起大家注意. 多多討論.
MAX SDK里有很多沒有天理的東西.希望大家也能商量點(diǎn)天理出來

xheartblue 2005 - 1- 6 凌晨

posted on 2009-05-30 22:12 狂爛球 閱讀(624) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 圖形編程

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品导航| 久久精品视频在线观看| 国产精品久久久久久久久借妻| 久久久人成影片一区二区三区 | 亚洲欧美综合一区| 午夜精品久久| 美日韩在线观看| 亚洲韩国日本中文字幕| 亚洲精品国产日韩| 欧美在线视频一区二区| 牛夜精品久久久久久久99黑人| 欧美久久电影| 黄色成人在线| 亚洲欧美日韩国产综合| 蜜乳av另类精品一区二区| 亚洲大片在线| 久久精品亚洲一区二区三区浴池| 欧美韩日一区| 激情综合色综合久久| 亚洲自拍偷拍麻豆| 亚洲欧美精品在线观看| 久久久久国产精品麻豆ai换脸| 欧美激情一区二区三区全黄| 国产精品麻豆成人av电影艾秋| 国产一区二区高清| 亚洲欧美偷拍卡通变态| 国产精品一区二区在线观看不卡| 最新69国产成人精品视频免费| 久久精品91| 久久久蜜臀国产一区二区| 国产美女精品视频| 欧美一区三区二区在线观看| 一区二区高清视频| 欧美精品一区在线发布| 亚洲桃花岛网站| 亚洲欧美日韩在线观看a三区| 国产精品免费网站在线观看| 一区二区三区欧美激情| 在线亚洲国产精品网站| 国产精品福利久久久| 久久精品亚洲国产奇米99| 久久国产婷婷国产香蕉| 亚洲精品一级| 欧美一区二区网站| 18成人免费观看视频| 亚洲黑丝在线| 国外精品视频| 亚洲片国产一区一级在线观看| 欧美日韩国产小视频| 久久久精品国产免大香伊| 欧美成年人网| 久久久欧美精品| 欧美日韩亚洲精品内裤| 免费成人av在线| 国产精品入口麻豆原神| 国产午夜精品视频免费不卡69堂| 美女露胸一区二区三区| 国产精品久久久久久av福利软件| 久久精品一区四区| 国产精品国产三级国产aⅴ9色| 麻豆精品传媒视频| 国产免费成人av| 亚洲欧美国产精品桃花| 一区二区日韩精品| 欧美va亚洲va国产综合| 久久久久久电影| 国产精品毛片a∨一区二区三区|国| 欧美福利小视频| 亚洲国产清纯| 欧美sm视频| 亚洲福利视频二区| 亚洲精品一区二区三区福利| 欧美成人精精品一区二区频| 免费观看在线综合色| 国产小视频国产精品| 欧美中文字幕在线观看| 久久国产精品一区二区| 国产在线观看91精品一区| 欧美一区二区三区四区视频 | 国内精品写真在线观看| 中文成人激情娱乐网| 午夜精品理论片| 国产一区二区三区日韩欧美| 欧美一级淫片播放口| 猫咪成人在线观看| 亚洲精品在线一区二区| 国产精品永久| 欧美大片一区| 久久精品夜色噜噜亚洲aⅴ| 亚洲日本电影在线| 性欧美1819sex性高清| 国产一区二区三区观看| 欧美黄色网络| 久久久久久网站| 中日韩视频在线观看| 欧美激情一区二区久久久| 亚洲欧美精品在线观看| 亚洲国产视频a| 国产综合18久久久久久| 国产精品福利片| 欧美极品在线视频| 蜜桃久久av一区| 久久久噜噜噜久久中文字幕色伊伊| 亚洲一本大道在线| 日韩一级黄色av| 夜夜嗨av一区二区三区免费区| 欧美成人有码| 欧美激情 亚洲a∨综合| 欧美成人蜜桃| 亚洲国产精品电影在线观看| 美女精品视频一区| 欧美粗暴jizz性欧美20| 美国成人直播| 免费观看在线综合| 亚洲激情在线观看视频免费| 欧美国产日韩一二三区| 亚洲福利视频专区| 亚洲免费观看高清在线观看| 亚洲精品欧美| 亚洲福利免费| 亚洲免费人成在线视频观看| 亚洲欧美另类国产| 久久久91精品国产一区二区三区 | 久久久久九九九九| 亚洲高清免费| 欧美一区=区| 欧美精品粉嫩高潮一区二区| 国产精品久久久久永久免费观看 | 最新国产成人在线观看| 日韩亚洲精品在线| 久久精品卡一| 欧美日韩一区二区三区视频| 国产日产欧美一区| 一区二区av在线| 久久久精品久久久久| 99ri日韩精品视频| 欧美日韩国产成人在线| 亚洲国产另类久久久精品极度| 一本色道久久99精品综合| 美女免费视频一区| 久久成人久久爱| 国产美女精品人人做人人爽| 一区二区三区欧美成人| 欧美激情一区在线观看| 久久午夜羞羞影院免费观看| 国产酒店精品激情| 午夜精品影院| 午夜欧美电影在线观看| 欧美三区在线观看| 午夜国产一区| 亚洲欧美久久| 狠狠入ady亚洲精品经典电影| 欧美中文字幕在线视频| 午夜精品美女久久久久av福利| 国产精品视频久久一区| 久久精品三级| 农夫在线精品视频免费观看| 99热免费精品| 午夜在线不卡| 在线观看欧美日韩| 9色精品在线| 国产日本欧美一区二区三区| 久久综合九色九九| 欧美日韩免费观看一区三区| 性色av香蕉一区二区| 久久久人成影片一区二区三区| 亚洲国产精品电影在线观看| 99热免费精品在线观看| 伊人夜夜躁av伊人久久| 99精品欧美一区| 亚洲国产你懂的| 欧美一区二区三区婷婷月色 | 久久久久九九九| 欧美成人嫩草网站| 久久久久久久久蜜桃| 欧美日韩国产一区| 亚洲国产乱码最新视频| 狠狠88综合久久久久综合网| 一区二区不卡在线视频 午夜欧美不卡在 | 国产精品视频专区| 日韩视频精品在线| 亚洲欧洲精品一区二区三区不卡| 欧美一区2区视频在线观看| 亚洲一区亚洲二区| 欧美日韩国产成人在线| 亚洲精品资源美女情侣酒店| 亚洲国产欧美在线| 免费亚洲电影在线观看| 欧美不卡在线| 一区二区不卡在线视频 午夜欧美不卡在| 久久九九热re6这里有精品| 久久久久久久一区| 亚洲国产婷婷香蕉久久久久久| 久久久综合视频| 亚洲巨乳在线| 午夜激情久久久| 原创国产精品91| 欧美日韩国产综合视频在线观看中文| 亚洲精品视频二区| 欧美与黑人午夜性猛交久久久|