• <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>

            doing5552

            記錄每日點(diǎn)滴,不枉人生一世

              C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
              73 Posts :: 0 Stories :: 94 Comments :: 0 Trackbacks

            公告

            常用鏈接

            留言簿(24)

            我參與的團(tuán)隊(duì)

            最新隨筆

            搜索

            •  

            積分與排名

            • 積分 - 455263
            • 排名 - 48

            最新隨筆

            最新評(píng)論

            閱讀排行榜

            評(píng)論排行榜

                骨骼動(dòng)畫(Skeletal Animation)又叫Bone Animation,它與關(guān)鍵幀動(dòng)畫(Key-frame Animation)相比,占用空間小,因?yàn)樗恍枰箨P(guān)鍵幀動(dòng)畫那樣要存儲(chǔ)每一幀的各個(gè)頂點(diǎn)的數(shù)據(jù),而是只需要存儲(chǔ)每一幀的骨骼,骨骼與頂點(diǎn)相比,當(dāng)然要少得多。所以骨骼動(dòng)畫有很多優(yōu)勢,當(dāng)然其技術(shù)難度也很高。我個(gè)人覺得動(dòng)畫在計(jì)算機(jī)圖形學(xué)中是一個(gè)十分重要的內(nèi)容,不管是在游戲、電影動(dòng)畫還是虛擬現(xiàn)實(shí)中,生動(dòng)逼真的動(dòng)畫(人、動(dòng)物等)會(huì)使之增色不少。所以我決定今后的研究方向就是計(jì)算機(jī)動(dòng)畫。目前在研究Skeletal Animation,這是目前動(dòng)畫技術(shù)中的主流。歡迎同好與我交流,共同提高!

                骨骼動(dòng)畫的實(shí)現(xiàn)思路是從我們?nèi)说纳眢w的運(yùn)動(dòng)方式而來的(所以VR就是對(duì)現(xiàn)實(shí)世界的虛擬嘛 :-))。動(dòng)畫人物的身體(肉、皮膚)是一個(gè)網(wǎng)格(Mesh)模型,網(wǎng)格的內(nèi)部是一個(gè)骨架結(jié)構(gòu)。當(dāng)人物的骨架運(yùn)動(dòng)時(shí),身體就會(huì)跟著骨架一起運(yùn)動(dòng)。骨架是由一定數(shù)目的骨骼組成的層次結(jié)構(gòu),每一個(gè)骨骼的排列和連接關(guān)系對(duì)整個(gè)骨架的運(yùn)動(dòng)有很重要的影響。每一個(gè)骨骼數(shù)據(jù)都包含其自身的動(dòng)畫數(shù)據(jù)。和每個(gè)骨架相關(guān)聯(lián)的是一個(gè)“蒙皮”(Skin)模型,它提供動(dòng)畫繪制所需要的幾何模型(Vertex,Normal,etc)和紋理材質(zhì)信息。每個(gè)頂點(diǎn)都有相應(yīng)的權(quán)值(Weight),這些權(quán)值定義了骨骼的運(yùn)動(dòng)對(duì)有關(guān)頂點(diǎn)的影響因子。當(dāng)把動(dòng)畫人物的姿勢和全局運(yùn)動(dòng)信息作用到骨架上時(shí),這個(gè)“蒙皮”模型就會(huì)跟隨骨架一起運(yùn)動(dòng)。

                所以關(guān)鍵是對(duì)骨架進(jìn)行動(dòng)畫生成,生成的方法也是用關(guān)鍵幀。關(guān)鍵幀動(dòng)畫是對(duì)人物的網(wǎng)格(Mesh)模型采用關(guān)鍵幀生成動(dòng)畫;而骨骼動(dòng)畫則是對(duì)人物的骨架采用關(guān)鍵幀生成動(dòng)畫,然后再讓網(wǎng)格(Mesh)模型跟隨骨架運(yùn)動(dòng)。關(guān)鍵幀動(dòng)畫實(shí)現(xiàn)的2個(gè)關(guān)鍵點(diǎn)是:關(guān)鍵幀的選取和中間幀的插補(bǔ)。

                關(guān)鍵幀的指定有2種基本的方法:前向動(dòng)力學(xué)(FK)和逆向動(dòng)力學(xué)(IK)。前向動(dòng)力學(xué)用一組節(jié)點(diǎn)的角度來找到末端受動(dòng)器的位置;而逆向動(dòng)力學(xué)則是找到將末端受動(dòng)器置于所要位置所需的一組節(jié)點(diǎn)角度。前向動(dòng)力學(xué)的優(yōu)點(diǎn)是:計(jì)算簡單,運(yùn)算速度快,缺點(diǎn)是:需指定每個(gè)關(guān)節(jié)的角度和位置,而由于骨架的各個(gè)節(jié)點(diǎn)之間有內(nèi)在的關(guān)聯(lián)性,直接指定各關(guān)節(jié)的值很容易產(chǎn)生不自然協(xié)調(diào)的動(dòng)作;逆向動(dòng)力學(xué)的優(yōu)點(diǎn)是:只需指定主要關(guān)節(jié)點(diǎn)的位置,負(fù)擔(dān)輕,缺點(diǎn)是:計(jì)算模型比較復(fù)雜,開發(fā)者需要機(jī)械運(yùn)動(dòng)和動(dòng)力學(xué)、幾何學(xué)以及向量數(shù)學(xué)等方面的相關(guān)知識(shí)。

                中間幀的插值分2步:(1) 根據(jù)當(dāng)前時(shí)間,通過插值計(jì)算出每個(gè)骨骼的旋轉(zhuǎn)、平移等值,形成中間幀的骨架。插值算法一般采用四元數(shù)(Quternion)的球面線性插值(Spherical linear interpolation)SLERP,SLERP特別適合在兩個(gè)方位之間進(jìn)行插值,不會(huì)出現(xiàn)像對(duì)歐拉角插值那樣出現(xiàn)萬象鎖的現(xiàn)象,而且這種插值能產(chǎn)生更平滑和連續(xù)的旋轉(zhuǎn),表達(dá)方式也很簡潔;(2) 根據(jù)骨架的變化情況,插值計(jì)算出骨架的“蒙皮”模型的各個(gè)頂點(diǎn)的位置變化。對(duì)于某個(gè)特定骨骼,“蒙皮”模型的頂點(diǎn)變換矩陣=初始姿勢的變換矩陣的逆×姿勢變換后的矩陣。另外還要考慮頂點(diǎn)可能受多個(gè)骨骼運(yùn)動(dòng)的影響。


            posted on 2009-04-20 15:44 doing5552 閱讀(1182) 評(píng)論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久天天躁狠狠躁夜夜不卡 | 欧美国产成人久久精品| 亚洲综合精品香蕉久久网97| 久久久久久久尹人综合网亚洲| 久久亚洲国产中v天仙www| 久久涩综合| 少妇人妻88久久中文字幕| 久久99中文字幕久久| 久久天天躁狠狠躁夜夜av浪潮| 国产成人无码精品久久久性色 | 久久精品一区二区影院| 久久天天躁狠狠躁夜夜不卡| 亚洲国产精品久久久久网站| 亚洲乱码精品久久久久..| 久久激情亚洲精品无码?V| 欧美丰满熟妇BBB久久久| 国产精品久久久久乳精品爆| 久久国产免费直播| 久久精品18| 久久91这里精品国产2020| 久久久久亚洲AV成人片| 久久无码AV一区二区三区| 亚洲国产精品久久| 久久九九青青国产精品| 人妻少妇久久中文字幕| 伊人热热久久原色播放www| 国产香蕉97碰碰久久人人| 国产精品久久久久久搜索| 无遮挡粉嫩小泬久久久久久久| 亚洲欧美成人久久综合中文网 | 国产V亚洲V天堂无码久久久| 99久久国产精品免费一区二区| 亚洲国产婷婷香蕉久久久久久| 国产福利电影一区二区三区久久久久成人精品综合 | 天天做夜夜做久久做狠狠| 久久精品国产99久久丝袜| 国产精品一区二区久久精品| 欧美黑人又粗又大久久久| 天堂久久天堂AV色综合| 久久亚洲精精品中文字幕| 欧洲成人午夜精品无码区久久|