本人一直喜歡開發(fā)戰(zhàn)爭題材的游戲,在此簡單介紹一下坦克履帶模擬器的工作原理:
如果地形是平面,也就是說場景地形沒有崎嶇不平,坦克履帶的移動效果完全可以采用偏移坦克履帶材質(zhì)的貼圖來實現(xiàn),即采用UV動畫。
如果地形崎嶇不平,這時候如果開動坦克,履帶就要有適應(yīng)地形的表現(xiàn)效果,而不僅僅是偏移履帶貼圖,因此本人采用的方法如下:
(1)坦克的履帶是蒙皮,并且在每個輪子的正中心的位置都綁定了骨骼,并且刷好權(quán)重,當(dāng)然綁定骨骼這一步驟我是在3dmax中完成的:
(2)坦克輪子的運動采用輪體碰撞器來模擬:
(3)游戲運行時,坦克的輪體碰撞器由于直接和地面發(fā)生接觸,運行時相對于坦克自身的垂直方向會不斷產(chǎn)生位移,那么就記錄下輪體碰撞器此時的位置信息,再將此位置信息賦值給對應(yīng)位置的輪子模型和對應(yīng)位置的輪子骨骼,又由于相應(yīng)位置的輪子骨骼是和履帶蒙皮綁定在一起的,輪子骨骼相對于坦克發(fā)生位移,就會帶動對應(yīng)部分的履帶發(fā)生拉伸或擠壓的形變效果,這樣坦克的履帶就可以很好地模擬適應(yīng)地形的效果:
本人已經(jīng)將此坦克履帶模擬器做成了插件,并且已經(jīng)在Unity Asset Store上進行了發(fā)布,需要的話請購買:https://assetstore.unity.com/packages/slug/99013
這是本人編寫的坦克履帶模擬器的編輯器界面:
如果有技術(shù)上的疑問請給我發(fā)郵件