Unity之路(一):游戏组成和生命周期

游戏构成

游戏:场景1,场景2,…,场景n;
场景:游戏对象1, 游戏对象1,…,游戏对象n;
游戏对象:组件1,组件2,…,组件n;

脚本组件

添加一个脚本组件,其默认内容如下:

using UnityEngine;
using System.Collections;

// 继承自MonoBehaviour的类叫运行时类,运行时类不能手动实例化,即不能手动创建对象
public class Cube : MonoBehaviour {
	// Use this for initialization
	void Start () {
        print("Start");
    }
	
	// Update is called once per frame
	void Update () {
        print("Update");
    }
}

除了这两个方法之外,还有另外几个生命周期相关的方法:

using UnityEngine;
using System.Collections;

public class Cube : MonoBehaviour {

    // 每当脚本被加载时调用,只会调用一次
    // 可以在Awake中初始化public成员
    void Awake() {
        print("Awake");
    }
    
    // 在每次激活脚本时调用
    // 可以在OnEnable中重置一些变量,比如计时器
    void OnEnable() {
        print("OnEnable");
    }
    
	// 在第一次调用Update之前,只调用一次
	// 可以在Start中初始化一些private成员
	void Start () {
        print("Start");
    }
	
	// 每帧调用,可以更新数据
	void Update () {
        print("Update");
    }
    
    // 在Update方法之后调用,更新UI
    void LateUpdate() {
        print("LateUpdate");
    }

    // 取消激活后调用
    void OnDisable() {
        print("OnDisable");
    }

    // 脚本销毁时只调用一次
    void OnDestroy() {
        print("OnDestroy");
    }

    // 持续调用-IMGUI代码需要写在此方法中
    void OnGUI() {
        print("OnGUI");
    }

    // 以固定频率调用,不会受帧率影响
    // 一般会把处理物理的代码放在这里
    void FixedUpdate()
    {
        print("FixedUpdate");
    }
}

调用顺序: Awake->OnEnable->Start->Update->LateUpdate->OnDisable->OnDestroy

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值