GameObject相关
GameObject意指游戏对象
下面这些都是游戏对象
文章图片
游戏对象 1 GameObject标识
1.1 Name
对象名,可以重复,无限数量
//我们可以通过名字寻找对象
GameObject.Find(string name);
//此方法每次都会遍历整个场景来寻找匹配的游戏物体,比较消耗资源
1.2 Tag 对象的标签,在Tags&Layer面板中设置
当物体可能是空物体时,(游戏开发中,常用空物体去保存一些位置信息,空物体没有渲染,这时给物体添加一个图标,便于寻找查看)
//我们可以通过Tag标签来寻找游戏对象
GameObject.FindGameObjectWithTag(string tag);
//查找一个对象
GameObject.FindGameObjectsWithTag(string tag);
//查找所有挂载此标签的对象,并返回一个GameObject数组
文章图片
例子 1.3 Layer 标记对象渲染组名字,常用于射线碰撞,摄像机裁剪,最多只能有32组
所在位置如下图
文章图片
Paste_Image.png 2 动态创建物体 方法1 利用GameObject.CreatePrimitive创建 此方法创建一个带有基本网络渲染器和相应碰撞器的游戏物体
文章图片
例子 方法2 利用GameObject.Instantiate创建
public GameObject obj1;
void Start () {
GameObject game1 = GameObject.Instantiate(obj1);
game1.name = "Player2";
game1.transform.position = new Vector3(2, 2, 0);
}
文章图片
例子 3 动态添加物体组件
文章图片
Paste_Image.png
//例子
//Sphere.AddComponent();
//泛型
Sphere.AddComponent(typeof(Rigidbody));
//非泛型
4 删除游戏对象 Destroy(Object obj); //立刻删除对象
Destroy(Object obj,float 1f); //延时删除
文章图片
例子 5 发送消息 (1)向上发送消息,向物体自身和父物体发送消息,如果消息没有被任何一个组件处理,则会打印一个错误。 方法为:SendMessageUpwards("父物体方法名"); //例子如下图
文章图片
字物体脚本 (2)广播消息,对物体自身和所有子物体发送消息。如果消息没有被任何一个组件处理,则会打印一个错误。 方法为:BroadcastMessage("字物体方法名"); //例子如下图
文章图片
父物体脚本
打印结果如下
文章图片
打印结果 (3)向同级发送消息,如果消息没有被任何一个组件处理,则会打印一个错误 方法为:Obj.SendMessage("同级物体方法名"); //例子如下图 【GameObject相关】球的脚本
文章图片
球的脚本 胶囊的脚本
文章图片
胶囊的脚本 在unity的操作
文章图片
在Unity的操作 打印结果如下
文章图片
打印结果
推荐阅读
- 思维导图作业3—工作相关导图
- AnyProxy抓取http/https请求
- day16-Linux|day16-Linux 软件管理
- 适合写进作文与疫情相关的句子|适合写进作文与疫情相关的句子|你看 爱和希望蔓延的比病毒更快 每一种爱 都刻进武汉的心脏
- Linux|Linux 服务器nginx相关命令
- linux环境变量相关操作
- iOS|iOS 系统相关复习
- 【Linux学习笔记】目录结构和文件操作相关
- adb|adb 相关命令
- Linux相关命令