Unity 游戏对象

2024 年 8 月 29 日 | 阅读 2 分钟

GameObject 是 Unity 编辑器中最重要的东西。您游戏中的每个对象都是一个 GameObject。这意味着您认为要包含在游戏中的所有内容都必须是一个 GameObject。但是,GameObject 本身无法执行任何操作;您必须先为其提供属性,然后它才能成为一个角色、一个环境或一个特殊效果。

GameObject 是一个容器;我们必须向 GameObject 容器添加部分内容,才能将其变成一个角色、一棵树、一盏灯、一个声音,或者您希望它成为的任何其他内容。每个部分都称为一个组件。

根据您要创建的对象类型,您可以将不同的组件组合添加到 GameObject 中。您可以将 GameObject 比作一个空锅,组件比作构成您游戏玩法配方的不同配料。Unity 有许多不同的内置组件类型,您还可以使用 Unity Scripting API 制作自己的组件。

要记住的三个重要点

  1. GameObjects 可以包含其他 GameObjects。 这种行为允许组织和父化相互关联的 GameObjects。更重要的是,对父 GameObject 的更改可能会影响其子对象——稍后会详细介绍。
  2. 模型被转换为 GameObjects。 Unity 为您的模型创建了 GameObjects,您可以像任何其他 GameObject 一样更改它们。
  3. 层次结构中包含的所有内容都是一个 GameObject。 即使是灯光和相机等内容也是 GameObjects。如果它在层次结构中,那么它就是一个受您控制的 GameObject。

创建和销毁 GameObjects

有些游戏处理场景中的许多对象,但我们也可以在游戏过程中创建和删除宝藏、角色和其他对象。

在 Unity 中,我们可以使用 Instantiate 函数创建一个 GameObject,该函数可以制作现有对象的新副本

Unity 还可以提供 Destroy 函数,该函数用于在帧更新完成后或在短时间延迟后销毁一个对象

请注意,Destroy 函数也用于销毁单个组件,而不会影响 GameObject 本身。一个常见的错误是写这样的代码


下一主题Unity 组件