一、unity中的四大基本概念:
1.Game Object 和 Component 游戏对象和组件(多个Component构成一个Game Object【游戏对象】 )
每一个gameObject 有uid、layer、Tag
2.Prefab 预设体 (带有组件的预先设计好的游戏对象,如:图标) 可以反复使用
①prefab资源 可以用导入 如MRTK
②prefab的创建 Hierarchy中拉游戏对象 到 Project中创建的prefab =》 变成一个完整的预设体
③prefab的使用 project -> hierarchy (实例化)
④可在不同scene中使用,可反复使用
⑤prefab 与 实例 的关系 prefab发生改变,prefab实例也发生改变;prefab实例发生改变可以选择性覆盖到prefab上。
3.Tags 标签 每一个游戏物体都有一个标签 (便于找到该游戏物体)
①Tag 是一个字符串
②Tag与Game Object 绑定
③用于比较: 确定是不是自己想要的物体 gameObject.CompareTag()
void Start()
{
if (gameObject.CompareTag("test"))
{
Debug.Log("Hello,test!");
}
}
④用于查找: 查找自己想要的游戏物体 GameObject.FindWithTag()
4.Layer 层 (可以设置相机只显示某一层的物体)
①layer 是int类型
②layer与Game Object绑定
③物理 collision、raycast
③裁剪 camera、light
二、一个基本的游戏逻辑循环
输入(接受玩家输入指令)--- 处理(根据玩家的输入做出相应的处理) ---输出(根据处理结构更新游戏画面)
三、unity开发的生命周期
1.void Awake() 该对象被构造时调用,
2.void OnEnable() 该脚本被挂的游戏对象 使用时调用
3.void Start() 该对象被构造之后,第一帧时被调用
4.void Update()
void Ondisable() 该脚本被挂的游戏对象 不使用时调用
void OnDestory() 该脚本被挂的游戏对象 被销毁(删除)时调用 并且先用Ondisable,再用OnDestory
四、如何找bug
1. Debug.Log(); 法
2.断点法:①在C#窗口右侧添加断点(红色)
②附加到unity运行,程序会停在断点(黄色)位置
③按F10 继续执行
【注:1.必须脚本有悬挂的物体 2.先运行敲断点的C# 3.再运行】