Unity 3D Learning
Assignment 1
1、简答题
1、解释 游戏对象(GameObjects) 和 资源(Assets)的区别与联系。
游戏对象 (GameObject)是所有其他组件 (Component)的容器。游戏中的所有对象本质上都是游戏对象 (GameObject)。游戏对象 (GameObject) 自身不会向游戏添加任何特性。而是容纳实现实际功能的组件 (Component) 的容器。对象一般有玩家、敌人、环境、摄像机和音乐等虚拟父类,这些父节点本身没有实体,但它们的子类真正包含了游戏中会出现的对象。
资源(Assets)不仅包括游戏对象,还包括各组件中的C#脚本文件,各种游戏场景,预设,GUI,Animation,material等,并且可以直接导入已经完成好的package,或者从场景中导出到package。在资源文件夹,通常有对象、材质、场景、声音、预设、贴图、脚本、动作,在这些文件夹下可以继续进行划分。
资源可以被多个游戏对象使用,资源整合的具体表现是直接出现在游戏场景的对象。有些资源作为模板,可实例化成游戏中具体的对象。
2、下载几个游戏案例,分别总结资源、对象组织的结构(指资源的目录组织结构与游戏对象树的层次结构)
3、编写一个代码,使用 debug 语句来验证MonoBehaviour基本行为或事件触发的条件
基本行为包括 Awake() Start() Update() FixedUpdate() LateUpdate()
常用事件包括 OnGUI() OnDisable() OnEnable()
Debug语句:
Debug.Log();
Debug.LogWarning();
Debug.LogError();
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Example : MonoBehaviour {
void Awake () {
Debug.Log ("Awake");
}
// Use this for initialization
void Start () {
Debug.Log ("Start");
}
// Update is called once per frame
void Update () {
Debug.Log ("Update");
}
void FixedUpdate () {
Debug.Log ("FixedUpdate");
}
void LateUpdate () {
Debug.Log ("LateUpdate");
}
void Reset () {
Debug.Log ("Reset");
}
void OnGUI () {
Debug.Log ("OnGUI");
}
void OnDestroy () {
Debug.Log ("OnDestroy");
}
void OnDisable () {
Debug.Log ("OnDisable");
}
}
生命周期():