日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

游戏引擎架构----动画

發布時間:2024/1/8 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 游戏引擎架构----动画 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.角色動畫類型 ? 賽璐璐動畫(cel animation):基于幀的,電子版本為精靈動畫(sprite animation),可以設計成循環動畫(looping animation)? ? 剛性層階式動畫(rigid hierarchical animation):可能在關節處產生裂縫 ? 每頂點動畫(per-vertex animation):網格添加動畫,數據密集 ? 變形目標動畫(morph target animation):極端的網格姿勢+混合 ? 蒙皮動畫(skinned animation):骨骼+皮膚
2.骨骼: 剛性 關節(joint)的樹形層級結構構成。骨骼只是關節間的空位,關節是動畫師控制的 內存中存儲:關節名字,父關節索引,關節綁定姿勢的逆變換矩陣(蒙皮綁定時關節的姿勢)
3. 姿勢: 關節相對模型參考系的位置、定向和縮放。用矩陣或者 SQT數據結構表示(縮放scale、四元數旋轉quaternion、平移translation) 綁定姿勢:參考姿勢、放松姿勢、T姿勢 局部姿勢:相對父關節的姿勢,SQT表示。每個關節定義了一個坐標空間。把關節姿勢變換Pj施于關節j坐標系表示的點時,得到的是父關節空間表示該點。即從子關節空間變換到父關節空間。Pj=P(j->parent(j)) 全局姿勢:在模型空間的姿勢。從關節到根關節,乘以局部姿勢得到。P2->m = P2->1*P1->0*P0->m
4. 動畫片段(animation clip) 互動:動畫 非互動:游戲內置電影(in-game cinematics IGC)、非交互連續鏡頭(non interactive sequence NIS)、全動視頻(full motion video FMV) 半互動: 快速反應事件(quick time event QTE) 動畫片段的采樣定義了連續函數。動畫片段是 SQT組成的通道函數(channel funciton),通道函數是連續的。游戲引擎使用分段線性逼近的方法插值。 4.1 局部時間線: 時間:0-T 關鍵姿勢(key pose)、關鍵幀+插值。t是實數,不一定是整數 時間比例(time scale):負值則動畫倒轉 幀:有時指一段時間,有時指一個時間點 采樣(sample):代表時間點,那相應的時間可以指幀了。非循環動畫:N幀有N+1個采樣、循環動畫:N幀有N個采樣 相位(phase):歸一化的時間,0表示開始,1表示結束 4.2 全局時間線: 播放動畫:局部時間映射到全局時間。循環就使用模除。起始時間、播放速率/時間比例、循環次數、持續時間 同步動畫時,由于通信系統的時間延遲,造成動畫不同步。使用全局時鐘可以同步動畫,將動畫的全局開始時間匹配即可。 4.3 動畫重訂目標(retarget): 動畫通常只兼容特定骨骼,此技術可以讓動畫適用于不同骨骼 4.4 元通道(metachannel): 非關節通道,如事件觸發器通道,定位器通道。 定位器用于記錄游戲中物體的位置和方向,也是一個仿射變換。可以設置攝像機的位置和角度
5. 蒙皮 網格每個頂點可以綁定至一個或者多個關節,再加權平均 蒙皮矩陣(skinning matrix):把網格頂點從綁定姿勢的位置變換至骨骼的當前姿勢的位置。蒙皮頂點的位置在模型空間定義的,所以變換前后的位置都在模型空間。 頂點在綁定至關節的位置時,在關節空間是不變的:頂點在模型空間的位置->頂點在關節空間的位置->關節變換->頂點回到模型空間 假設只有一個關節:則綁定姿勢的網格位置VmB, 關節在模型空間中的綁定姿勢B,關節在模型空間中的當前姿勢C可得到:VmB * B^-1 * C = VmC ? ? ?==> ?蒙皮矩陣:B^-1 * C:綁定姿勢的逆矩陣*目標姿勢的變換矩陣? 矩陣調色板(matrix palette): 一系列矩陣,每個矩陣對應了關節j的蒙皮矩陣。將網格頂點關聯的蒙皮矩陣取出,加權求和后,將頂點從綁定姿勢位置變成目標姿勢位置,由于C是每幀變化的,B^-1會緩存起來 將模型空間變化到世界空間:乘以矩陣Mm->w,可以預處理將B^-1*Mm->w緩存 動畫實例(animation instancing):多個角色同時播放單個動畫。此時不應該將B^-1*Mm->w緩存
6.動畫混合(animation blending) 將多個動畫片段混合,對角色最終姿勢起作用 6.0 無需混合 核心姿勢:站立、蹲下 確保每個動畫片段都以某個核心姿勢開始核心姿勢結束,就無需混合 6.1 線性插值混合 linear interpolation(LERP),混合百分比、混合因子=[0,1] 姿勢混合通常在局部進行 應用: 時間混合 動作連續性(淡入淡出):混合因子隨時間按三次函數變化:緩出曲線(ease out curve)、緩入曲線(ease in curve) 圓滑過渡:兩個片段的混合因子都同時變換,同時播放 凍結過渡:一個片段凍結,另一個片段一遍播放一遍增加混合因子 方向性運動: 軸轉移動(pivotal movement):按軸旋轉 靶向移動(targeted movement):面朝著一個方向,身體朝不同地方移動。制作三個基本動畫:朝前、朝左、朝右做一個半圓,按照移動方向和靶向的角度選擇混合因子 復雜的線性插值混合: 一維線性插值混合:多個片段的一維混合 二維線性插值混合:三個一維混合可得:x軸方向兩個,求出中間姿勢,y軸方向使用前面的兩個中間結果得到。 三角形的二維線性插值混合:a,b, 1-a-b的加權混合 泛化的二維插值混合:利用Delaunay三角剖分求出一組三角形,再找到對應的姿勢所在的三角形,最后用三角形的二維線插值混合得到結果 6.2 骨骼分部混合: 達到一只手做A一只手做B的效果 通過允許不同關節有不同的混合百分比實現。 混合因子為0,1時可以實現 混合遮罩(blend mask) 6.3 加法混合(additive blending): 區別片段(difference clip) 來源片段(source clip) + 區別片段 = 參考片段 目標片段 : 任何動畫,+ 區別片段 = 其他片段,也是加法混合的意義 來源于矩陣的乘法,除法 加法混合的應用 移動噪聲 瞄準及注釋:對最左最上最右制作區別動畫,混合至向前動畫就可以得到其他的瞄準動畫。(可以利用時間軸lerp)
7. 后期處理 布娃娃 逆運動學(inverse kinematics IK): 輸入是全局姿勢,稱為末端受動器,根據誤差最小化求出局部姿勢 正向運動學(forward kinematics FK):輸入是一組局部姿勢,輸出是一個全局姿勢以及每個關節的蒙皮矩陣。
8. 壓縮技術 通道省略:移除平移通道,減少存儲姿勢 量化:減少存儲為數。浮點數轉化為n整數表示 采樣頻率減少 選擇性載入
9. 動畫系統 9.1 動畫系統架構 動畫管道(animation pipeline):動畫片段和混合因子作為輸入局部骨骼姿勢作為輸出 動作狀態機(action state machine ASM) 動畫控制器(animation controller):每個控制器通常父子一個類型的角色行為,如掩護、跑步。能提供高層次的動畫管理接口 9.2 動畫管道 片段解壓以及姿勢提取->姿勢混合->全局姿勢生成->后期處理->重新計算全局姿勢->矩陣調色板生成 數據結構: 共享資源數據(shared resource data):骨骼、蒙皮網格、動畫片段。骨骼是中心,蒙皮綁定至骨骼,動畫應用于骨骼 每實體狀態信息(per-instance data structure):動畫片段的狀態(局部時鐘、播放速率)、混合方法、混合權重、局部姿勢、全局姿勢、矩陣調色板 混合方法: 加權平均法 混合樹:將6變成樹的結構,就是加法混和必須為一個葉子節點,而其他的混合可以而且是葉子節點和內節點。 淡入淡出: 加權平均法:調整片段權重、將片段邏輯分組,調節組權重 混合樹:加入一個二叉混合節點,混合原來的樹和新的樹 9.3 動作狀態機 每個狀態對應一個任意復雜的動畫片段集合,在混合樹架構中狀態對應一棵樹、加權平均法中狀態對應一系列權重何一組片段 過渡:定義狀態間的過渡矩陣 過渡方法:跳轉、淡入淡出(引入過渡狀態節點 transitional state) 狀態層: 預備動作(anticipation):由一個部位引領其他部位的動作,即要獨立操控不同部位,同時有多個狀態出現 引入狀態層:每層在某一刻只有一個狀態,不同層之間狀態是獨立的 9.4 約束 依附:依附點/ 定位器(locator):特殊的關節,僅僅為依附中的父子關系加入額外的變換 對準:多個角色參與一個動畫 利用定位器,使多個角色的動畫中的定位器在世界空間內重合 解決滑步的方法:
  • 動作提取:從動畫中提取出每幀角色重心到局部空間原點的距離(利用元通道),作為速度參數來移動角色。同時將局部空間原點移動到此幀的角色重心處
  • 2. 腳步IK:腳接觸地面時,記下其在世界空間的位置,我們用IK去調整腿的姿勢,令腳能固定于正確位置 注視 掩護對準




    總結

    以上是生活随笔為你收集整理的游戏引擎架构----动画的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 全部免费毛片在线播放一个 | 成人教育av在线 | 妺妺窝人体色www在线小说 | 波多野结衣在线播放 | 91精品国产99久久久久久 | 中文字幕在线网址 | 日韩制服诱惑 | 久久天天躁狠狠躁夜夜躁2014 | 在线免费观看污片 | 国产情侣在线视频 | 久久久久久色 | 亚洲porn| 性色av浪潮 | 国产另类在线 | 欧美人喂奶吃大乳 | www黄色 | 国产精品videossex久久发布 | 交视频在线播放 | 解开人妻的裙子猛烈进入 | 亚洲第一欧美 | 亚洲精品在线观看免费 | 日本一区二区在线不卡 | 欧美六区 | 久久久久久久久久久综合 | 日韩欧美黄色大片 | 青娱乐最新地址 | 黄网地址| 久久久无码一区二区三区 | 麻豆一区二区三区在线观看 | 国产大片一区二区三区 | 欧美日韩一区二区视频在线观看 | 亚洲作爱视频 | 久久怡春院| 亚洲激情午夜 | 青青伊人av | 久久久午夜电影 | 国产91边播边对白在线 | 福利片一区二区 | 午夜视频在线观看视频 | 五月天六月婷婷 | 国产欧美在线观看视频 | 日本一区二区三区在线免费观看 | 欧美高清hd | 51成人网| 日本wwwxxx | 大黑人交xxx极品hd | 人人艹人人爽 | 午夜国产一区 | 国产精品影院在线观看 | 国产免费av电影 | 性感美女毛片 | 亚洲精品网址 | 一卡二卡三卡视频 | 孕妇爱爱视频 | 97精品熟女少妇一区二区三区 | 台湾佬综合网 | 欧美大片在线 | 国产热99| av永久免费网站 | 麻豆精品在线观看 | 少妇人妻一级a毛片 | 国产在线拍揄自揄拍无码视频 | 国产视频一区二区在线播放 | 醉酒壮男gay强迫野外xx | 免费激情片 | 大陆av在线播放 | 91爱国产| 美利坚合众国av | 国模无码视频一区二区三区 | 噜噜噜网站 | 久久2019 | 一区二区免费视频 | 亚洲无码久久久久久久 | 超碰97人| 超碰免费91 | 日韩视频在线观看二区 | 美女av免费在线观看 | 亚洲丁香 | 免费操片 | 久青草免费视频 | 国产精品99久久免费黑人人妻 | 国产h片在线观看 | 久久机热这里只有精品 | 亚洲免费区 | 婷婷日 | 毛片黄色一级 | 精品国产91久久久久久 | 亚洲天堂男人的天堂 | 色综合天天网 | 欧美性受黑人性爽 | 成人黄色一级视频 | 日韩视频成人 | 美女视频黄免费 | 国产无毛片 | 床戏高潮做进去大尺度视频 | 99re这里只有精品在线 | 自拍偷拍第五页 | 亚洲宅男天堂 | 黄视频免费在线观看 |