Unity-Rigidbody

using UnityEngine;

public class RigidBodyTest : MonoBehaviour
{
    Rigidbody m_Rigidbody;
    void Start()
    {
        m_Rigidbody = transform.GetComponent<Rigidbody>();
    }

    private void FixedUpdate()
    {
        // 更平滑的移动
        // m_Rigidbody.MovePosition比使用Transform.position更新位置要快,
        // 因为后者将导致所有连接的Colliders重新计算它们相对于Rigidbody的位置。
        m_Rigidbody.MovePosition(transform.position + Vector3.forward * Time.deltaTime);

        //更平滑的旋转
        // m_Rigidbody.MoveRotation比使用Transform.position更新旋转要快,
        // 因为后者将导致所有连接的Colliders重新计算它们相对于Rigidbody的旋转
        Quaternion deltaRotation = Quaternion.Euler(new Vector3(0, 100, 0) * Time.deltaTime);
        m_Rigidbody.MoveRotation(m_Rigidbody.rotation * deltaRotation);

        // 施加力
        m_Rigidbody.AddForce(Vector3.forward, ForceMode.Impulse);
        // 施加扭力
        float turn = Input.GetAxis("Horizontal");
        Vector3 vec = transform.up * 2 * turn;
        m_Rigidbody.AddTorque(vec);

    }
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值