添加刚体组件
给球体添加刚体组件,将脚本挂载到上面。
以下效果为:当球体落到平面上会消失。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class c1 : MonoBehaviour
{
void Start()
{
}
void Update()
{
}
// 开始碰撞
private void OnCollisionEnter(Collision collision)
{
Debug.Log("开始碰撞");
// 销毁碰撞物体
Destroy(collision.gameObject);
}
/*
// 碰撞中
private void OnCollisionStay(Collision collision)
{
Debug.Log("碰撞中");
}
// 碰撞结束
private void OnCollisionExit(Collision collision)
{
Debug.Log("结束碰撞");
}
*/
}
触发器
效果:当球体穿过平面时,会消失。当立方体穿过平面时,不会消失。
将球体与立方体都加上刚体组件,分别挂上脚本。将竖起来的平面设置为触发器
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class c2 : MonoBehaviour
{
// Start is called before the first frame update
void Start()
{
}
// Update is called once per frame
void Update()
{
}
// 开始触发
private void OnTriggerEnter(Collider other)
{
Debug.Log("开始触发");
// 让球体消失
// 如果遇到了名字是这个的,退出函数
if (other.gameObject.name == "Sphere")
{
// 销毁碰撞物体
Destroy(other.gameObject);
}
else
{
Debug.Log("开始触发-这不是球体");
}
}
// 触发中
private void OnTriggerStay(Collider other)
{
return;
}
// 触发结束
private void OnTriggerExit(Collider other)
{
return;
}
}
如需不可见触发器可以关闭渲染