包含此页的版本:
不含此页的版本:
Unity 的场景场景包含游戏的环境和菜单。将每个唯一的场景文件视为一个独特的关卡。在每个场景中,你放置你的环境、障碍物和装饰品,基本上是将你的游戏设计和构建成碎片。更多信息
请参阅术语表format 使用 YAML 数据序列化语言的自定义子集。YAML 是一种开放格式,YAML 网站上提供了有关它的文档。有关 Unity 中使用的 YAML 的更多信息,请阅读有关 UnityYAML 的文档。
该文件将场景中的每个对象写入单独的 YAML 文档。该序列在文件中引入每个对象。在此上下文中,术语“对象”是指---游戏对象Unity 场景中的基本对象,可以表示角色、道具、风景、相机、航路点等。游戏对象的功能由附加到它的组件定义。更多信息
请参阅术语表、组件和其他场景数据的集合:这些项目中的每一个都需要在场景文件中拥有自己的 YAML 文档。以下示例展示了序列化对象的基本结构:
--- !u!1 &6
GameObject:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
importerVersion: 3
m_Component:
- 4: {fileID: 8}
- 33: {fileID: 12}
- 65: {fileID: 13}
- 23: {fileID: 11}
m_Layer: 0
m_Name: Cube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
第一行包含字符串!u!1 &6在文档标记之后。之后的第一个数字!u!指示对象的类(在本例中,它是游戏对象)。& 符号后面的数字是文件中唯一的对象 ID 号,尽管该数字是任意分配给每个对象的。对象的每个可序列化属性都由如下所示的行表示:
m_Name: Cube
属性通常以m_但其他方面遵循脚本引用中定义的属性名称。以下示例显示了在文件中进一步定义的第二个对象的外观:
--- !u!4 &8
Transform:
m_ObjectHideFlags: 0
m_PrefabParentObject: {fileID: 0}
m_PrefabInternal: {fileID: 0}
m_GameObject: {fileID: 6}
m_LocalRotation: {x: 0.000000, y: 0.000000, z: 0.000000, w: 1.000000}
m_LocalPosition: {x: -2.618721, y: 1.028581, z: 1.131627}
m_LocalScale: {x: 1.000000, y: 1.000000, z: 1.000000}
m_Children: []
m_Father: {fileID: 0}
以下示例显示了附加的Transform 组件Transform 组件确定场景中每个对象的 Position、Rotation 和 Scale。每个 GameObject 都有一个 Transform。更多信息
请参阅术语表到上面 YAML 文档定义的 GameObject。{fileID:6}用于表示游戏对象,因为文件中游戏对象的对象 ID 为 6。
m_GameObject: {fileID: 6}
…
IEEE 754 格式的十进制表示形式或十六进制数(由 0x 前缀表示)可用于表示浮点数。Unity 使用 IEEE 754 表示形式对值进行无损编码,并写入没有短小数表示形式的浮点值。当 Unity 以十六进制写入数字时,它始终将十进制格式写入括号中以进行调试,但在加载文件时实际仅解析十六进制。要手动编辑这些值,请删除十六进制并输入十进制数。以下示例显示了浮点值的有效表示形式(所有值都表示数字 1):
myValue: 0x3F800000
myValue: 1
myValue: 1.000
myValue: 0x3f800000(1)
myValue: 0.1e1