官方文档 https://docs.unity3d.com/ScriptReference/MonoBehaviour.html
MonoBehavior类中主要可重写的方法
| Awake | 在脚本加载时被调用 |
|
Start |
在Update和FixUpdate事件之前被调用 |
|
Update |
每帧调用 |
| LateUpdate | Update之后调用 |
| FixedUpdate | 在固定的物理时间被调用 |
|
OnApplicationFocus(bool hasFocus) |
应用得到或失去焦点时调用 |
|
OnApplicationPause(bool pauseStatus) |
应用暂停时调用 |
|
OnApplicationQuit |
应用退出时调用 |
| OnCollisionEnter | 刚体撞击时被调用 |
|
OnCollisionExit |
当两个collider/rigidbody由接触变为未接触时触发 |
|
OnCollisionStay |
相互接触的两个collider/rigidbody会每帧触发 |
|
OnTriggerEnter |
当一个GameObject与另一个GameObject碰撞时,Unity会调用OnTriggerEnter。 |
|
OnTriggerExit |
当一个GameObject离开触发器区域时触发OnTriggerExit。 |
|
OnTriggerStay |
相互接触的两个collider/rigidbody会每帧触发 |
|
OnEnable |
GameObject显示时调用 |
|
OnDisable |
GameObject隐藏时调用 |
|
OnDestroy |
GameObject销毁时调用 |
|
OnBecameInvisible |
当renderer不再被任何摄像机可见时调用 |
|
OnBecameVisible |
当renderer被任何一个摄像机可见时调用 |
| OnGUI | 处理和渲染GUI时被调用 |
|
OnMouseDown |
当用户在Collider上按下鼠标键时触发 |
|
OnMouseDrag |
当用户在Collider上按钮下鼠标拖拽时触发 |
|
OnMouseEnter |
鼠标进入Collider时触发 |
|
OnMouseExit |
鼠标离开Collider时触发 |
|
OnMouseOver |
鼠标滑到Collider时触发 |
|
OnMouseUp |
鼠标在Collider上释放按钮时触发 |
|
OnMouseUpAsButton |
鼠标必须停留在Collider上释放按键才会触发,而OnMouseUp即使鼠标移出了Collider区域也会触发。 |
|
OnWillRenderObject |
物体(非UI元素)被摄像机渲染前调用 |
MonoBehavior类中主要的继承函数
| GetComponent | 返回一个游戏对象指定类型的组件,不存在则返回空 |
| GetComponents | 返回游戏对象指定类型的全部组件 |
| GetComponentInChildren | 返回游戏对象或其任何子对象指定类型的第一个遇到的组件 |
| GetComponentsInChildren | 返回游戏对象或任何其子对象所有指定类型的组件 |
| ToString | 返回游戏对象的名字 |
MonoBehavior类中主要的继承类函数
| Instantiate | 实例化,复制一个对象并返回克隆体 |
| Destroy | 根据函数参数,在一定时间后摧毁游戏对象 |
| DestroyImmediate | 根据函数参数,是否立即摧毁游戏对象 |
| FindObjectsOfType | 返回指定类型并且处于游戏状态的游戏对象列表 |
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Test : MonoBehaviour
{
private void Start() { }
private void Update() { }
private void FixedUpdate() { }
private void LateUpdate() { }
private void OnGUI() { }
private void OnDisable() { }
private void OnEnable() { }
// 当Inspector上的值发生改变时触发(仅在Editor中有效)
private void OnValidate() { }
}