W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
力是在物體之間的相互作用過程中表現(xiàn)出來的,在物理學(xué)中力是非常重要的元素。
力的種類有很多,剛體組件因為受到力的作用而進(jìn)行加速或拋物線運(yùn)動。
Unity 3D 中通過 rigidbody.AddForce(x,y,z)方法
添加力的作用,該方法的參數(shù):
游戲中物體受力是對現(xiàn)實現(xiàn)象的模擬。
本案例通過對小球施加力的作用產(chǎn)生與發(fā)生盒子碰撞的效果:
在 Unity 3D 內(nèi)創(chuàng)建一個簡單的 3D 場景,場景內(nèi)放有 1 個 Sphere
,1 個 Plane
和 3 個 Cube
。
Plane
用于充當(dāng)?shù)孛妫?code>Sphere 和 Cube
用于做力的測試。
在初始場景中 Cube
處于靜止?fàn)顟B(tài),通過 Sphere
瞬間施加一個力,使 Cube
運(yùn)動。
實施步驟
執(zhí)行 GameObject
→ 3D Object
→ Plane
命令,此時在 Scene 視圖中出現(xiàn)了一個平面,在右側(cè)的 Inspector 面板中設(shè)置平面位置(0,0,-5)。
執(zhí)行菜單欄中的 GameObject
→ 3D Object
→ Cube
命令,創(chuàng)建 3 個立方體盒子,在右側(cè)的 Inspector 面板中分別設(shè)置 3 個立方體盒子的位置(0,0.5,-5),(0.5,1.5,-5)(0.5,2.5,-5)。
執(zhí)行菜單欄中的 GameObject
→ 3D Object
→ Sphere
命令,在 Inspector 面板中設(shè)置球體位置屬性(-1,0.5,-7)。
為球體、立方體及地面貼材質(zhì)。
Component
→ Physics
→ Rigidbody
命令。為球體和立方體添加剛體屬性。
var addForceObj:GameObject;
function Start(){
addForceObj=GameObject.Find("Sphere");
}
function OnGUI(){
if(GUILayout.Button("force", GUILayout.Height(50))) addForceObj.rigidbody.AddForce(500, 0, 1000);
}
小球會受到力的作用向前運(yùn)動,并與立方體發(fā)生碰撞。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: