Unity3D学习(1)——游戏对象、行为
来源:互联网 发布:影视鉴赏网络课答案16 编辑:程序博客网 时间:2024/06/15 01:47
Unity3D是一个用于开发三维游戏,制作三维动画等用途的综合开发工具,功能强大。本系列博客记录了我学习Unity3D中遇到的一些问题以及归纳总结的知识。
第一节,我们的主题为游戏对象的认识。以下是我记录下的一些知识点:
1. 对象与资源的区别与联系
对象出现在游戏的场景中,是资源整合的具体表现;
资源可以被多个对象使用,有些可作为模板被实例化成游戏中具体的对象。
对象一般有玩家、敌人、环境、摄像机等非实体虚拟父类,但子类常为游戏内的实体;
资源一般包含对象、材质、场景、声音、预设、贴图、脚本、动作等子文件夹,通常可进一步划分。
2. 用一段简单程序代码,逐一验证 MonoBehaviour 基本行为触发的条件
cs文件添加于主摄像机对象上,代码截图以及控制台截图如下:
3.查找并解释 GameObject,Transform,Component 对象三者之间的关系,并画出其UMLet 图
GameObject包含Component,Transform属于一种Component;即GameObject必定包含一个Transform组件,可能包含其它Component。
4. 整理官方和其他学习材料,介绍如何用程序(代码)管理一个场景的游戏对象树林
可以加入一个父类作为森林,并向该父类添加若干子对象,每一个对象都是森林的一颗树。然后为森林对象编写属性函数,这些属性将适用于所有森林中的树。
查找对象
通过名字查找:public static GameObject Find(string name)
通过标签查找单个对象:public static GameObject FindWithTag(string tag)
通过标签查找多个对象:public static GameObject[] FindGameObjectsWithTag(string tag)
添加子对象 public static GameObect CreatePrimitive(PrimitiveTypetype)
遍历对象树
foreach (Transform child in transform) { Debug.Log(child.gameObject.name);}
清除所有子对象
foreach (Transform child in transform) { Destroy(child.gameObject);}
5. 预设有什么好处?与对象克隆 (clone or copy or Instantiate of Unity Object) 关系?
预设类似模板,通过预设创建相同属性的对象并和预设关联。预设发生改变,所有通过预设实例化的对象都会产生相应的变化,批量处理方面较方便。
对象克隆不受克隆本体的影响,即A对象克隆的对象B不随A的改变而改变。
6. 解释组合模式。并编写验证程序,向组合对象中子对象 cast 消息, 验证组合模式的优点。
组合模式将对象组合成树形结构来表现”部分-整体“的层次结构,使得客户以一致的方式处理单个对象以及对象的组合。关键点在于简单对象和复合对象必须实现相同的接口。
cs文件分别添加于父对象和子对象上,代码截图以及控制台截图如下:
- Unity3D学习(1)——游戏对象、行为
- Unity3D脚印1——游戏对象&组件
- Unity3D学习之获取游戏对象
- Unity3D学习记录——飞盘射击游戏1
- Unity3D学习——井字棋游戏
- Unity3D游戏学习笔记1
- Unity3D Instantiate实例化游戏对象【1】
- unity3d 获取游戏对象
- js学习笔记:对象——行为委托
- Unity3D——汽车游戏自学1
- unity3d AI 学习--个体行为操控(1)
- 游戏开发学习笔记——第二期:初识Unity3D
- Unity3D 学习笔记4 —— UGUI+uLua游戏框架
- Unity3D学习笔记(6)—— 飞碟射击游戏
- Unity3D学习笔记(7)—— 击球游戏
- Unity3D学习笔记(10)—— 游戏序列化
- Unity3D学习——射飞碟游戏(工厂模式)
- Unity3D学习——射箭游戏(工厂模式)
- 让editplus支持sql编辑
- 【URAL】1554 Multiplicative Functions
- css相关
- 在windows下安装nvm-setup.exe
- 合并两个排序链表
- Unity3D学习(1)——游戏对象、行为
- 微软2017年预科生计划在线编程笔试 题目1 : Legendary Items
- C#129课的主要内容
- java基础------》数据结构---》交换排序(冒泡排序,快速排序),选择排序,系统排序,插入排序
- 链表划分
- B1001. 害死人不偿命的(3n+1)猜想(15')
- JavaScript eval() 函数详解
- 边做边爱(1)——mapbox帮对象做分析图
- poj 2724 二分图匹配