摘要: 碰撞测试这个再游戏的开发中是很有必要的,当敌人的攻击的时候,发生碰撞这时候就会造成一定的伤害,因此我们需要根据受到的伤害对用户的生命值进行控制,因此碰撞的测试是 我们在游戏的开发过程中需要的一种比 ...
碰撞测试这个再游戏的开发中是很有必要的,当敌人的攻击的时候,发生碰撞这时候就会造成一定的伤害,因此我们需要根据受到的伤害对用户的生命值进行控制,因此碰撞的测试是 我们在游戏的开发过程中需要的一种比较重要的数据。 在Unity中的碰撞测试有两种,一种是碰撞,一种是触发!一种属于物理碰撞,一种属于非物理碰撞。个人理解为一种是真是的碰撞,一种只是一种靠近后所触发的碰撞!当然对于这些的使用也是见仁见智啦!你觉得怎么样会比较好就怎么用啦! 好啦!现在我们来介绍这两种吧! 1.Collision检测:在碰撞的过程中有三种状态分别是OnCollisionEnter;OnCollosionStay;OnCollisionExit;相信通过也能大概了解到他们的大体作用,分别是碰撞开始,碰撞持续,碰撞结束; 2,.Trigger检测:使用这个之前需要勾选IsTrigger属性并用到三种方法:OnTriggerEnter;OnTriggerStay;OnTriggerExit;和上面的类似。 ok,下面我们来分析下两种碰撞测试吧! 一,Collision检测: |
void OnCollisionEnter(Collision mCollision){Debug.Log("OnCollisionEnter");}void OnCollisionStay(Collision mCollision){Debug.Log("OnCollisionStay");}void OnCollisionExit(Collision mCollision){Debug.Log("OnCollisionExit");} 二,Trigger检测:void OnTriggerEnter(Collision mCollision){Debug.Log("OnTriggerEnter");}void OnTriggerStay(Collision mCollision){Debug.Log("OnTriggerStay");}void OnTriggerExit(Collision mCollision){Debug.Log("OnTriggerExit");} ok,其实函数也就这样,不过更重要的是对函数内部的操作,比如说我们碰撞啦!这是后我们需要知道的碰撞的物体是什么东西,这时候我们就需要用到Collision这个对象啦!