脚本是附加在游戏物体上用于定义游戏对象行为的指令代码
语法结构:
Using 命名空间;Public class类名:MonoBehaviour
{void 方法名() {//打印Debug.Log("调试显示信息");Print("本质就是Debug.Log方法");}
}
生命周期事件
生命周期事件全部由系统定义好的,且系统会自动调用。系统调用这些事件的顺序,和我们代码里面的书写顺序无关。全部定义在 MonoBehaviour 这个类中
using UnityEngine;public class NewBehaviourScript : MonoBehaviour
{//唤醒事件,只执行一次。void Awake(){Debug.Log("Awake...");}//启用事件,只执行一次。当脚本组件被启用的时候执行一次。void OnEnable(){Debug.Log("OnEnable...");}//开始事件,只执行一次。void Start(){Debug.Log("Start...");}//固定时间更新事件,执行 N 次,0.02 秒执行一次。不受电脑帧率影响//所有物理组件相关的更新都在这个事件中处理。适合对物体做物理操作(移动、旋转…)void FixedUpdate(){Debug.Log("FixedUpdate...");}//更新事件,执行 N 次,每帧执行一次。受电脑帧率影响void Update(){Debug.Log("Update...");}//稍后更新事件,执行 N 次,在 Update 事件执行完毕后再执行。void LateUpdate(){Debug.Log("LateUpdate...");}//GUI 渲染事件,执行 N 次,执行的次数是 Update 事件的两倍。void OnGUI(){Debug.Log("OnGUI...");}//禁用事件,执行一次。在 OnDestroy 事件前执行。或者当该脚本组件被“禁用”后,也会触发该事件。void OnDisable(){Debug.Log("OnDisable...");}//销毁事件,执行一次。当脚本所挂载的游戏物体被销毁时执行。void OnDestroy(){Debug.Log("OnDestroy...");}
} ·OnCollisionXXX碰撞
当满足碰撞条件时调用
·OnTriggerXXX触发
当满足触发条件时调用
输入事件
OnMouseEnter鼠标移入
鼠标移入到当前Collider时调用
OnMouseOver鼠标经过
鼠标经过到当前Collider时调用
OnMouseExit鼠标离开
鼠标离开到当前Collider时调用
OnMouseDown鼠标按下
鼠标按下到当前Collider时调用
OnMouseUp鼠标抬起
鼠标抬起到当前Collider时调用
场景渲染
OnBecameVisible当可见
当Mesh Renderer在任何相机上可见时调用
·OnBecameInVisible当不可见
当Mesh Renderer在任何相机上都不可见时调用
OnApplicationQuit当程序结束
应用程序退出时被调用
在编译器中显示私有变量
[SerializeFild]//序列化字段,作用:在编译器中显示私有变量
Private int a=100;

希望在别的类里能访问它,但不希望在编译器中能改(看)它,通常脚本不写
[HideInInsperctor]//作用;在编译器中隐藏字段
Public int b;[Range(0,100)]Public int c;