记录Unity案例中碰到的c#代码(3D案例)

1.碰撞检测

以下的OnCollisionEnter,OnCollisionExit,OnCollisionStay均用来处理碰撞,但调用时间不同

private void OnCollisionEnter(Collision collision)//检测碰撞的发生
{
	print("OnCollisionEnter");
}
private void OnCollisionExit(Collision collision)//检测碰撞体的离开
{
	print("OnCollisionExit");
}
private void OnCollisionStay(Collision collision)//碰撞过程中不断调用
{
	print("OnCollisionStay");
}

2.获取碰撞信息

参数collision为对方碰撞体所在物体

两个物体必须都有碰撞器,其中一个物体必须有刚体

private void OnCollisionEnter(Collision collision)
{
    print(collision.collider);//获取对方碰撞体(类型?)
    print(collision.collider.name);//获取对方名字
    print(collision.collider.tag);//获取对方标签}

3.触发检测和获取触发信息

参数other为对方触发器所在物体

private void OnTriggerEnter(Collider other)
{
    print("OnTriggerEnter");//检测触发的发生
    print("other");//获取触发器(类型?)
    print("other.name");//获取触发器所在物体的名字
    print("other.tag");//获取触发器所在物体的标签
}
private void OnTriggerExit(Collider other)
{
    print("OnTriggerExit");//检测触发的结束
}
private void OnTriggerStay(Collider other)
{
    print("OnTriggerStay");//检测触发的过程
}


未完待续~

你可能感兴趣的:(Unity3D&C#,Unity3D&C#,Unity3D,C#)