天天看点

Unity 初学2 Collider(碰撞器) 物理系统1

BOX  Collider(盒子碰撞器)
Unity 初学2 Collider(碰撞器) 物理系统1
Unity 初学2 Collider(碰撞器) 物理系统1
 Capsule Collider(胶囊碰撞器)
Unity 初学2 Collider(碰撞器) 物理系统1
Unity 初学2 Collider(碰撞器) 物理系统1
Mesh Collider(球碰撞器)
Unity 初学2 Collider(碰撞器) 物理系统1
Unity 初学2 Collider(碰撞器) 物理系统1
Terrain Collider(地形碰撞器)
Unity 初学2 Collider(碰撞器) 物理系统1
Unity 初学2 Collider(碰撞器) 物理系统1
Wheel Collider(车轮碰撞器) 
Unity 初学2 Collider(碰撞器) 物理系统1
Unity 初学2 Collider(碰撞器) 物理系统1
 碰撞器与触发器的区别

碰撞器是触发器的载体,而触发器只是碰撞器身上的一个属性。

当Is Trigger=False时,碰撞器根据物理引擎引发碰撞,产生碰撞效果,可以调用OnCollisionEnter/Stay/Exit函数;

当Is Trigger=true时,碰撞器被物理引擎所忽略,没有碰撞效果,可以调用OnCollisionEnter/Stay/Exit函数;

如果要检测到物体的接触又不想让碰撞检测影响物体移动或要检测一个物体是否经过空间中某个区域,就可以用到触发器。

物体发生碰撞的必要条件

两个物体都必须要带有碰撞器Collider,其中一个物体必须带有Rigidbody刚体。

检测
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

 
public class TestRigidbody : MonoBehaviour

{
	void Start ()
    {

    }	

	void Update ()
    {

    }
    void OnCollisionEnter(Collision collision)
    {        
    }
    void OnCollisionStay(Collision collision)
    {        
    }
    void OnCollisionExit(Collision collision)
    {        
    }
    void OnTriggerEnter(Collider other)
    {
    }
    void OnTriggerStay(Collider other)
    {     
    }
    void OnTriggerExit(Collider other)
    {       
    }
}
           

继续阅读