视频一区二区三区中文字幕,中文字幕成人,午夜欧美理论片,国产专区综合网

187-1056-6905

當前位置:首頁 > 新聞資訊 > 動畫知識

動畫知識

游戲角色是怎么動起來的?3D游戲動畫系統介紹

發布人:admin    閱讀:次    發布時間:2021-08-18 10:27:21

動畫控制了整個游戲角色戰斗的節奏,聲音、特效、鏡頭等表現元素要和位移做好匹配,才能有好的表現效果;游戲中有大量的A類和B類劇情動畫,動畫數據占據了游戲中很大一部分的運行時內存和計算消耗……動畫貫穿了游戲開發的方方面面,所以,學好動畫的相關知識對游戲開發非常重要。

01 骨骼蒙皮動畫

3D動畫主要有幾種動畫技術:第一種是剛體層級動畫,它的特點是連接處有折斷、不自然,是適合機器人的動畫;第二種是頂點動畫,即在每一個關鍵幀改變頂點的位置,它的特點是效果棒、數據爆炸、工作量大;第三種是骨骼蒙皮動畫,它可以解決前兩種動畫技術的缺點。首先介紹一下骨骼蒙皮動畫的幾個概念。

骨架:在生物學中,骨架是由一系列關節以樹狀結構組織而成,關節就是下圖中藍色球的部分,而關節之間的連接,即圖中紅色部分,稱為骨骼。而在游戲動畫領域,骨骼就是指關節,而關節之間的連接是沒有意義的。

姿勢:姿勢就是骨骼的形態,它描述了骨骼當前的位置。

蒙皮:在游戲里是看不到骨骼的,骨骼只是一個邏輯數據,玩家看到的是渲染的皮膚,也就是蒙皮之后的形象。蒙皮就是把皮膚綁定到骨骼上的過程,綁定好之后,皮膚才能隨著骨骼的運動而運動。

動畫數據:在動畫內容制作時,動畫師只會做關鍵幀的數據,其余的部分都是通過插值來完成,通過插值可以取得任意點的姿勢。電影里的動畫是以固定幀率來播放,并不需要插值,而游戲里面,它的幀率會隨時發生改變,會隨著當前一幀需要計算的內容變多而變少,所以中間狀態都需要插值算法來完成。

那么,為什么骨骼蒙皮動畫可以解決掉剛體層級動畫和頂點動畫的缺點?首先,游戲在啟動時,需要去讀取骨骼的層級數據、動畫數據、帶有蒙皮的網格數據;在運行時,會根據時間從動畫數據中算出骨骼的位置,再根據當前骨骼的位置和蒙皮信息計算出網格頂點信息,最后根據網格信息和材質渲染出角色。

骨骼動畫的頂點是受多根骨骼影響的,關節處的皮膚會由多根骨骼拉伸而變形,這個變形和拉伸是符合規律的,所以它不會產生折斷。另外骨骼動畫數據產生的方式是改變骨骼的位置,而不是改變頂點的位置,我們一個人一般會有幾十上百根骨骼,我們去改變這些骨骼的位置,比直接改變幾千乃至幾萬個頂點的數據量要小非常多,這個對動畫師來說,需要做的工作同樣也會小很多,正是這些特點使得骨骼蒙皮動畫,成為當前游戲開發中應用最多的一種動畫技術。

02 動畫是如何流轉的

動畫融合

游戲的交互性,使得動畫都是一個個的小片段,連接這些片段就需要動畫的融合。通常融合有兩種類型:一種是多個動畫的融合;另一種就是一個動畫到另一個動畫的過渡,過渡的方式有兩種,一種是平滑過渡,一種是凍結過渡。

平滑過渡是在動畫A還沒有結束的時候,就開始向動畫B融合,而凍結過渡是在動畫A結束之后才開始向動畫B融合,游戲里面會根據表現的需要來選擇哪種過渡方式。

動畫狀態機

游戲里有多種狀態機的結構,正是這種復雜的結構,才能支撐游戲里流暢自然的動畫效果和良好的交互響應。以外層狀態機為例,它的結構分為Idle、Move和Fight。Idle,即待機,包括戰斗待機、休閑待機等;Move,包括轉向移動等;Fight,即攻擊動畫。這些外層的大狀態,可以通過驅動信號來進行相互之間的過渡,來達到動畫片段流轉的目的。

動畫邏輯管線

在游戲代碼里面,有AI和動畫的接口層,AI會通過游戲接口層向動畫狀態機發送各種信號,比如跑、跳、攻擊,以及跑的速度、轉向角度等等,這些參數告訴動畫狀態機,狀態機會根據它自己的結構來進行跳轉,或是融合到具體的動畫片段,計算出當前幀的骨骼偏移,再通過這些骨骼信息,計算出蒙皮網格,最后再渲染。

上一篇:最基本的原則和標準是什么尋找動畫公司

下一篇:動畫公司制作公益宣傳片應該看哪些方面?

最新文章
案例欣賞
主站蜘蛛池模板: 莱芜市| 东乡县| 闻喜县| 纳雍县| 图木舒克市| 开封市| 邹城市| 凯里市| 崇左市| 柞水县| 田阳县| 房产| 卓资县| 罗城| 普兰店市| 中宁县| 苍溪县| 江油市| 闸北区| 琼海市| 泽库县| 富裕县| 南宁市| 元阳县| 固原市| 临夏市| 龙岩市| 明水县| 揭西县| 姜堰市| 二连浩特市| 塔河县| 临猗县| 镇远县| 郑州市| 北海市| 黄山市| 桐柏县| 芦山县| 中宁县| 凯里市|