一. 简答题
1. 解释 游戏对象(GameObjects) 和 资源(Assets)的区别与联系
- 区别:
游戏对象:Unity场景中所有实体的基类,可直接出现在游戏场景中,是资源整合的具体表现。
资源:可以是我们自定义或下载下来的素材,可以被多个对象使用,有些资源可以实例化为对象。 - 联系:
游戏对象是资源的具体表现,可通过生成预设的方式变为资源。
资源可被游戏对象使用,其中的预设可实例化为游戏对象。
2. 下载几个游戏案例,分别总结资源、对象组织的结构(指资源的目录组织结构与游戏对象树的层次结构)
于是我在Asset Store上下载并打开"Unity-Chan!" Model游戏项目,其中Assets 组织情况如下,
而GameObjects 的组织情况如下,
由此可以看出,
- 资源的目录组织结构:
主要包括动画,文本,场景,素材,模型,预设以及使用说明等。 - 游戏对象树的层次结构:
主要包括摄像机包,游戏开始位置,场景布局以及文本管理等。
3. 编写一个代码,使用 debug 语句来验证 MonoBehaviour 基本行为或事件触发的条件
要求:
基本行为包括 Awake()、Start()、Update()、FixedUpdate()、LateUpdate()
常用事件包括 OnGUI()、OnDisable()、OnEnable()
首先我们添加一个Sphere,再给他写个名为Sphere的脚本
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class SphereBeh : MonoBehaviour
{
// 当一个脚本实例被载入时Awake被调用。或者脚本构造时调用
void Awake()
{
Debug.Log("Awake");
}
// 第一次进入游戏循环时调用
void Start()
{
Debug.Log("Start");
}
// 每个游戏循环,由物理引擎调用
void FixedUpdate()
{
Debug.Log("FixedUpdate");
}
// 所有 Start 调用完后,被游戏循环调用
void Update()
{
Debug.Log("Update");
}
// 所有 Update 调用完后,被游戏循环调用
void LateUpdate()
{
Debug.Log("LateUpdate");
}
// 游戏循环在渲染过程中&#x