预设和实例
January 2024
预设 和 实例 是两种把各种地图资源整合进可重复使用的内容里的方法。几何形状、模型和实体对像都可以,但是在创建自定义地图时有不同的用法。
预设(Prefabs)
预设,是一个集模型、实体和模型组织为一体的文件,它被保存在一个单独的VMAP文件里。它就像在一个可以被移动,并且在地图中被可以看成一个单一对象的 群组 里。
不论是在自定义地图中放置出来,还是在独立的VMAP文件里,预设都可以进行编辑。如果预设被改变,他就会保存到现在的预设VMAP文件中。使用这个预设的所有其他地图将会同时被更新(他们将需要重新编译为未填充的预设直到地图的更新的预设被加载)。如果不想一遍一遍重复同样编辑的多个地图,这个功能就很有用。
创建预设
- 选择多个对象或网格
- 右键单击对象,弹出快捷菜单,选择 Selected Objects -> New Prefab From Selection
- 这会自动创建一个预设并且弹出窗口询问是否保存一个新VMAP文件
- 选择一个适合的名字保存VMAP文件
- 接下来,这个预设就可以在这个地图世界里使用了
保证全局偏移(Maintain World Offset): 创建一个预设,让其原点和现有的世界原点进行重合。
原点中心(Center On Origin): 创建一个预设,设置原点到当前轴心。
编辑预设
当你在三维视图中双击一个预设就可以开始编辑这个预设了。这个编辑的预设将会保存在本地。保存地图时会提示是否保存至预设VMAP文件。
坍塌预设(Collapsing Prefabs)
如果想要当前预设坍塌,右键弹出快捷菜单 Selected Prefabs -> Collapse。
当一个预设处于坍塌状态时,所有对象如果都单独放置并且留在世界里就可以对他们进行编辑。
实例(Instances)
实例和预设有一点点的不同,和预设有各自的优点。值得一提的是,他能有两种情况,几何或实体。最大的不同在于,它不能在任意其他地图中被引用,但是可以在被它创建的地图中引用。他是一个针对本地地图的用法。
实例的第一个好处是渲染(效率的提升)。如果一个模型被重复渲染了一遍又一遍,那么它将会被整合到一个单一的渲染管线中。实例也使用了同样的原理。实例化的重复几何细节在渲染的时候会被整合到一起。
另一个好处是在编辑实例时候可以立即看到周围所有相同实例的改动。比如给一个房子实例添加一扇窗户,这个改动会立即复制到其他相同的实例上。
创建实例
- 选择一系列物体或者网格
- 右键弹出快捷菜单并且选择 Selected Objects -> Create Instance
编辑实例
在实例上双击可以对它进行编辑。如果有任何修改,实例将会自动复制到地图上其他的实例中。
坍塌实例(Collapsing Instances)
右键一个实例并且选择 Selected Objects -> Collapse Instances。类似坍塌预设的坍塌实例会保留所有单个的物体和网格。