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

            Character

            Character是什么?

            Character是一種特殊的3D Entity類型,由一組具有層次結構關系的Body Parts所定義,后者是一個唯一的root對象的子孫。Root 定義了Character的位置與朝向。

            Skin Character

            一個skin Character 也是一種Character,它具有三種可能的body parts類型:skin , bones, dummiesSkin body partsbody parts的一種,它擁有一個mesh, 在進行動畫時,根據一組bone body parts的位置變化,mesh會相應產生變形。一個skin character 只能有一個skin body part,Dummies 是被動的body parts,它的矩陣可用于對象定位.

            Skin character主要的優點是它沒有 skin join 問題(運動時body parts之間的縫隙),它主要的限制是它的處理材質或紋理行為修正的能力。

            每個skin body part有且只有一個mesh,在很多情況下,這可能更加方便(如,對于”Visual/Shadows/Shadow Stencil BB”,你僅需要把 Shadow Stencil Caster屬性加在一個或多個skin body part上。)

            Skin Character’的動畫是輕量級的,靈活的。

            Body Part Character

            一個body part character 由一組body parts構成,它們擁有各自的mesh與可能的dummies,你可能需要使用”Mesh Modifications/Deformation/Skin Join BB”去解決運動時的縫隙問題。

            Mesh Morpher Character

            即使你的動畫使用了不可知的動畫控制器,通過采樣對象的動畫,也可以把動畫導出成Mesh Morpher Character。這種方法存儲每一個動畫幀角色的所有mesh數據,采樣率越低,動畫文件也越小。這種動畫技術相對于其他的動畫技術來講,會產生較大的動畫文件。

            動畫創建時需要注意

            一個character 應該讓它的body parts聯結到一個唯一的body part, 這個body part(root)給出了character的位置與朝向。在virtools中,應該讓Z軸做為前的方向,Y軸作為上的方向。

            character相關的BB

            一個可應用于3D entityBB,可以應用于Character ,也可以是Character’s body parts,兩者都是3D entity,當你管理復雜的層次集合時,不要忘記檢查hierarchy 參數是否為true,尤其是使用3D Transformation BBs時。記住,一個 character 不直接擁有mesh,它的層次中的對象擁有。對這個概念的錯誤理解,容易導致一些問題,為何一個BB會失效。應該正確地就把行為應用到正確的body part上。舉例來說,Simple Shadow BB 是應用到body part 上的,而不是應用到Character上。

            使用動畫:

            Character Controller BB + "Controllers/Keyboard/Keyboard Controller BB" :這兩個是最簡單的使用動畫的方式。

            Unlimited Controller BB

            這是實現復雜的動畫控制的關鍵。

            Wrap

            Start“會在那一個動畫開始時創建一個過渡動畫,除非你確定下一個動畫應該從頭開始播放(例如“跳“這個動畫)。

            “Best”找到best frame來開始下一個動畫。”best frame”通過body part的朝向,位置,縮放等與當前動畫幀的相似性來確定。這對于循環動畫轉換是非常有用的(如,從Walk動畫到Run動畫)

            “Same”創建一個轉換到下一個動畫step(百分比)等于當前動畫的step,Best 相似,而又有更多的控制以用于動畫同步。這個模式必須在產生動畫就是應該有所計劃。

            可停止與不可停止

            動畫分為兩大類:不可停止的(跳,跌倒,開門等)與可停止的。可停止的通常是循環動畫,Wait, Walk , Swim

            一旦一個不可停止的動畫開始,它將會一直播放直到最后一幀完成。因此,當播放不可停止動畫時,不再需要任何消息驅動動畫。與此相反,Unlimited Controller BB 為了播放可停止的動畫,在每幀它都需要接收正確的消息。

            輸入參數

            對于普通的腳本,你可以根據愿望創建輸入參數。可以根據”Unlimited Controller”對話框中對應的參數來創建輸入參數,右擊Cell,(這里是Wait Animation),選擇“Create Input Parameter”

            菜單。通過這種方法更多的控制參數可以被輸入。

             

            上圖是一個使用array來參與控制動畫的例子,通過鍵選擇動畫,當有多個鍵被按下,使用規定優先級。

            不可停止動畫的參數的變化在動畫已經開始后不會被考慮,而可停止的動畫會被考慮。舉例來說,假如你改變一個正在運行的不可停止動畫的“Animation”參數,新的值會在當前動畫的最后一幀播放完后,有相應的消息傳入時才發生改變。

            在下面的例子中,Unlimited Controller BB(只有一行被修改) , 用來在任何時候為下一個動畫設置新值,它每一幀都發送消息,直到動畫輸入參數與當前動畫輸出消息相等。(注;因為當發送一個消息時,本來是想轉換動畫,但此時可能正執行一個不可停止的動畫,于是發送的消息被忽略了,于是還要繼續發送,直到動畫確實發生了改變為止)。

             

             

             

            輔助動畫:

            輔助動畫為角色運動增加了真實性。

            通過”Unlimited Controller” BB,可以把一個動畫說明為輔助動畫,理論上講,任何的輔助“動畫可以作為主動畫使用。但在設計是好考慮好它的用途(作為主動畫還是輔助動畫使用)。

            輔助動畫的建立過程與主動畫類似。然而它不能修改沒有用到的body parts或是root body part的修飾量。“order”參數不存在,既然任何一個輔助動畫都應該可以同時被播放,只要對于默認的body parts,它們不存在交迭.。最后調用的動畫總是比先前調用的動畫有優先權。”turn””orient”參數對于輔助動畫沒有用處。

            Action參數值”Play Once” ,”Loop +Stay”會被考慮。

            輔助動畫參數也可以用作輸入參數。

            Behavioral animations

            角色有時需要執行行為動畫以模擬復雜與不可知的與環境的交互。行為動畫可以作為別的主動畫與輔助動畫的補充。

            混合動畫

            3D變換,一個技巧是保存跟蹤正要修改的body part的直接父結點的矩陣。當行為應用于一組分開的body parts時,第一個問題是是否要使用Exclude from Animation BB

            假如你不用,body part的矩陣在幀開始時就會被當前動畫設置。你可以在相同的幀處理3d 轉換,body part 以它自己作為參考,與當前動畫保持一致。主要的問題衰減參數難于使用。

            假如你使用bb,3D 變換與應用到經典的3d object時相同。因此,與整個的Character 保持一致是較費腦筋的。

            IK 反運動學 

            它從最后一個鏈成員來推導出body part的矩陣。這是個有力的工具,對于與環境進行精確的交互比較有用。目前,只有一個有關于IKBB可以用:IK Position BB,.這容易使用,它不檢查body parts的交互。

            為避免不一致的問題,唯一的辦法是自己做檢測腳本。

            posted on 2007-04-28 15:56 清源游民 閱讀(1468) 評論(2)  編輯 收藏 引用 所屬分類: Virtools

            FeedBack:
            # re: 學習筆記Virtools白皮書之動畫
            2008-03-18 20:08 | winmine90
            有些virtools上的問題想請教你一下,不知道怎么與你聯系?
              回復  更多評論
              
            # virtools可以制作虛擬人嗎?
            2009-02-12 18:59 | 勿忘我
            您好,請教您個問題,vrtools可以制作虛擬人嗎
            我的目的是能夠控制四肢的動作,包括手指的彎曲等。
            而且動作不是預先在3dmax里制作的動畫 ,是不可預測的。
            是否能通過編程控制dof結點來達到目的呢?效果如何呢?能否自動產生彎曲的皺紋呢?
            之前我的想法是在poser里做造型,在creator里創建dof,在vega里通過vc編程。但好像很難。
            請高手指教。多謝啦  回復  更多評論
              
            <2009年11月>
            25262728293031
            1234567
            891011121314
            15161718192021
            22232425262728
            293012345

            留言簿(35)

            隨筆分類(78)

            隨筆檔案(74)

            文章檔案(5)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

            一本一道久久a久久精品综合 | 国产精品久久久久久久久软件| 国产伊人久久| 亚洲精品成人久久久| 久久婷婷五月综合色奶水99啪| 精品免费tv久久久久久久| 久久九九免费高清视频| 久久久久久久波多野结衣高潮| 99久久精品国内| 久久只有这里有精品4| 69久久精品无码一区二区| 亚洲午夜精品久久久久久app| 久久久久成人精品无码中文字幕 | 2020最新久久久视精品爱| 久久综合久久性久99毛片| 国产精品一区二区久久精品| 久久久久久国产a免费观看不卡| 亚洲色婷婷综合久久| 国产福利电影一区二区三区,免费久久久久久久精 | 久久久久久国产精品免费无码| 国产—久久香蕉国产线看观看| 亚洲精品蜜桃久久久久久| 日韩精品国产自在久久现线拍| 一本色道久久88—综合亚洲精品 | 免费一级做a爰片久久毛片潮| 久久99精品久久久久久久不卡| 久久夜色精品国产亚洲av| 香蕉久久夜色精品国产小说| 久久婷婷五月综合色奶水99啪 | 久久久WWW成人免费精品| 国产V亚洲V天堂无码久久久| 亚洲精品tv久久久久久久久| 一级女性全黄久久生活片免费| 狠狠精品久久久无码中文字幕| 久久国产一区二区| 国产一区二区精品久久| 国内精品伊人久久久久av一坑| 久久夜色精品国产噜噜亚洲AV| 久久久噜噜噜久久中文字幕色伊伊| 亚洲精品综合久久| 综合久久精品色|