首先,是常用的几个:
using UnityEngine;
public class Inatant : MonoBehaviour {
void Awake()
{
//程序启动时调用(运行一次)
}
void OnEnable()
{
//当脚本被激活时调用 (从可用到不可用的变化次数决定它的执行次数)
}
void Start ()
{
//运行时,运行一次。在运行Start()前,会先调用Awake()
}
void FixedUpdate()
{
//以固定时间(间隔)进行调用,关于FixedUpdate执行在Update之前
}
void Update (){
//每一帧运行一次,注意:每一帧的执行时间可能是不一致的(具体看设备性能)
}
void LateUpdate()
{
//在进行下一次更新前被自动调用
}
void OnGUI()
{
//用来绘制GUI,每帧会被多次调用
}
void OnDisable()
{
//当脚本不可用的时候调用
}
void OnDestroy()
{
//脚本或物体被销毁时调用(在执行OnDestroy前会先执行OnDisable)
}
void OnApplicationQuit()
{
//退出程序时调用
}
}
下面是:需要碰撞器才有用的:
//疑似在 Unity2017 中,需要引入命名空间 using system.Collsctions;
void OnCollisionEnter(Collision collOther) //参数是碰撞者信息
{
//当碰进入时执行
}
void OnCollisionStay(Collision collOther)
{
//当碰撞体与刚体接触时,每帧执行
}
void OnCollisionExit(Collision collOther)
{
//当停止碰撞时执行
}
下面是:需要触发器才有用的:
void OnTriggerEnter(Collider other) //参数Collider是被触发者的信息
{
//开始
}
void OnTriggerStay(Collider other)
{
//持续
}
void OnTriggerExit(Collider other)
{
//结束
}
下面是:需要“角色控制器”才有用的:
void OnControllerColliderHit(ControllerColliderHit hit)
{
//参数是:返回角色控制器接触到物体的信息
}