子弹移动以及碰撞条件

 

一、子弹移动

游戏物体移动最主要的是获取一个刚体组件,再对这个刚体组件添加一个向前的力;

具体代码:

public class BulletCtrl : MonoBehaviour
{
    public int damage = 20;
    public float speed = 1000.0F;

    void Start()
    {
        GetComponent<Rigidbody>().AddForce(transform.forward * speed);
    }
}

 

二、设置物理引擎属性

       Edit--->Project Settings--->Physics--->Physics Manager。

 

三、Collider组件

       Box Collider、Sphere Collider、Capsule Collider、Mesh Collider、Wheel Collider、Terrain Collider。

 

四、碰撞感知条件

        1)两个碰撞物体必须都有Collider组件

        2)其中移动物体还必须有Rigidboby组件

        最后补充一点:触发器是碰撞体的一个属性,如果进行触发检测,就可以实现穿透。

 

五、Tag应用

       Add Tag

      具体代码:

public class WallCtrl : MonoBehaviour
{
    void OnCollisionEnter(Collision coll)
    {
        if (coll.collider.tag == "BULLET")
        {
            Destroy(coll.gameObject);
        }
    }
}

如果检查到标签为bullet,则销毁游戏对象。

 

子弹移动以及碰撞条件

上一篇:Leetcode-1031 Maximum Sum of Two Non-Overlapping Subarrays(两个非重叠子数组的最大和)


下一篇:《常用在线工具网站》