首先是ReSet相比于其他函数较特殊 只在编辑模式下调用且只调用一次 在用户点Inspector面板下的Reset按钮时或第一次添加组件时调用 Awake 该函数中进行游戏对象的初始化 例如GameObject.FInd GameObject.FindWithTag Awake函数游戏运行之后第一个执行且执行一次 生命周期执行完一次后直接跳到OnEnable 不走Awake 如果要程序运行之后要禁用脚本 在Awake脚本中写this.enable=false 只执行到Enable函数 不进行以下生命周期函数的执行 Enable 该函数中判断当前脚本状态是否可继续执行 如果enable=true继续执行 enable=false不可执行 但可以在其他脚本将enable=true继续往下执行 Start 该函数在生命周期中也是只执行一次 其中可以由自己调整初始化代码顺序 假如Enable为false时在别的脚本中设置为true 也就是说该脚本可以继续执行了 生命周期要重新到Enable函数 走到Start时要判断Start函数是否执行过 执行过就不再执行 比如初始化主角位置为0 生命周期执行完一次之后主角位置改变了 则不能再次进入Start函数将主角位置初始化 FixedUpdate 固定帧更新 常常做一些物理行为的方法 比如刚体加力 发子弹时 就将作用力用在该函数的固定帧中