一个 模块化环境 是由可重用资产组成的 3D 空间,这些资产可以无缝地组合在一起,形成更大复杂对象的多种配置变体。例如,Studio 的 现代城市模板 是一个模块化环境,利用来自 模块化建筑工具包 和 材料包 的可重用墙壁、窗户和门,创建出构成整个市中心区域的建筑变体。
组装模块化环境非常有用,因为这意味着您不需要在游戏中手动创建每个单独的资产。相反,您只需创建几个可以重用和自定义的资产,以在场景中创造多样性。这个过程不仅显著加快了您构建大型环境的速度,还可以帮助每个独特的对象在您的游戏中保持一致性。


使用构建 Studio 现代城市模板的相同模块化建筑工具包的组件,本指南将引导您了解一致的支点位置的重要性,以便模块化资产能够对齐并无缝连接,展示如何组合模块化资产以创建逼真的建筑,并演示如何自定义模块化资产以在环境中创造多样性。
一致的支点位置的重要性
Studio 中的每个对象都根据其支点位置移动和旋转。默认情况下,部件和网格的支点位置位于对象的中心,因此当您移动它们时,它们是从对象的中心向外移动。默认的支点位置对于对称缩放和旋转是有用的,但当您希望以可预测和统一的方式将不同形状的对象连接在一起时,这就会变得有问题。
例如,以下两个部件的大小值均为 [10, 10, 1],并保持其默认支点位置。如果您在 X 轴上以 5 个 studs 的增量移动黄色部件,它将从其中心移动到边缘,并能够轻松对齐并连接到蓝色部件的任一侧。

但是,如果您旋转黄色部件并继续在 X 轴上以 5 个 studs 的增量移动它,它将无法对齐并连接到蓝色部件的任一侧。这是因为黄色部件的宽度现在为一个 stud,因此当它从中心移动 5 个 studs 时,它从中心移动 0.5 个 studs + 4.5 个 studs 在世界网格上,导致在蓝色部件的两侧各有 0.5 个 studs 的重叠。


如果您想再次对齐它们,您可以更改 stud 增量移动值或手动调整位置,直到它们对齐,但这个过程很快就会变得乏味且不可持续,特别是当您需要对许多不同大小、独特支点位置或复杂几何形状的对象(例如您在第三方建模工具中创建的网格)应用它时。
这就是为什么为模块化资产设置一致的支点位置至关重要,以便在启用网格对齐时,它们可以在相对彼此的预定增量距离处连接在一起。例如,现代城市示例模块化建筑工具包中的每个网格的最小长度为 7.5 个 studs,最大长度是 7.5 个 studs 的倍数,因此即使在旋转时,每个网格也可以无缝对齐和连接而不会重叠。

模块化资产可以由几乎无限种不同形状、大小和轮廓组成,并体现各种用途,例如墙壁、角落或装饰性附加物,因此一致的支点位置对于每个模块化建筑工具包来说都是不同的。对于现代城市示例模块化建筑工具包,每个网格的支点位置一致,位于最前面的下角,或在允许它们连接到建筑物上逻辑位置的地方,例如阳台、檐口和遮阳篷。



有关如何配置您在 Studio 中创建的部件和模型的支点位置的信息,请参见 支点工具。有关如何配置您在第三方建模工具中创建的网格的支点位置的信息,请参见 Blender 或 Maya 的支点文档。
配置对齐行为
Studio 的默认设置允许您自由移动和旋转对象到任何分数的 stud 或度。然而,由于模块化建筑工具包依赖于资产在精确增量处对齐,您必须根据每个模块化建筑工具包的要求更改这些默认设置。例如,现代城市示例 模块化建筑工具包 要求每个网格以 7.5 个 studs 和 45 度的增量旋转,并关闭碰撞。这确保了当您在 3D 环境中移动和旋转网格时,它们可以连接并保持彼此之间的清晰对齐,随着建筑的增长。
要为示例模块化建筑工具包配置 Studio 设置以实现理想的对齐行为,请在工具栏中:
- 禁用 碰撞。
- 启用 旋转 对齐并将其设置为 45。
- 启用 移动 对齐并将其设置为 7.5。
组合模块化资产
当您开始将模块化资产组装成更大的复杂对象时,选择一个核心对象作为参考位置坐标是很有帮助的。这确保每个附加对象在移动到不同位置之前能够快速对齐到正确的支点位置。
要使用示例模块化建筑工具包将模块化资产连接在一起以创建建筑:
选择一个底部的模块化网格。这个例子使用的是一扇门。
在视口中,将此网格放置在您希望创建建筑的位置。

在 属性 窗口中,复制 位置 坐标。
在视口中,选择一个您想要连接到第一个网格的单个网格。
在 属性 窗口中,粘贴第一个网格的 位置 坐标。第二个网格显示在第一个网格的上方。

在工具栏中,选择 移动 工具,然后将第二个网格移动到第一个网格的任一侧的新位置。它在同一轴上以 7.5 的增量对齐。

对于您希望构成建筑的每个网格,重复此过程,持续粘贴第一个网格的位置坐标,以确保建筑中每个网格的起始支点位置保持相同。
自定义模块化资产
为了确保每个对象看起来和感觉上都与其他对象独特,重要的是自定义您的模块化资产以创造视觉多样性。虽然以下部分探讨了示例模块化建筑工具包的自定义策略,例如使用不同的材料为墙壁和装饰,尝试这些装饰的不同色调,消除在大表面上平铺材料的重复,以及用装饰性道具装饰对象,您可以对任何用于创建模块化环境的模块化建筑工具包使用类似的方法。
使用自定义材料
示例模块化建筑工具包中的每个网格都使用来自示例 材料包 的 自定义材料,您可以使用它来改变建筑墙壁的外观和物理特性。例如,默认情况下,所有墙壁都以 PaintedBrick 自定义材料开始,但您可以将其更改为各种形式的替代砖、混凝土和石膏,然后为材料设置独特的色调,以赋予每栋建筑独特的外观。
要为墙网格使用替代自定义材料:
在视口中,按住 AltShift (⌥Shift),然后单击您建筑中任何带砖材料的网格。

在 属性 窗口中,单击 MaterialVariant 下拉菜单。所有替代自定义材料将显示。

选择一个替代材料变体。所有活动的墙网格在视口中更新其材料。

- 可选为了进一步自定义新的自定义材料,选择一个新的色调。
在 属性 窗口中,单击 BrickColor 或 Color。六边形地图或颜色弹出窗口将分别显示。
选择一种新颜色。所有活动的墙网格在视口中更新其色调。

使用 SurfaceAppearance 对象
示例模块化建筑工具包中每个带装饰的网格都包含一个 SurfaceAppearance 对象,利用自定义纹理使每栋建筑的装饰感觉更真实。为了使您游戏中的每栋建筑感觉独特,您可以在工作区的 SurfaceAppearance 文件夹中将任何 SurfaceAppearance 对象替换为另一个,包括混凝土、石膏和木材等材料,然后为装饰设置独特的色调以增加多样性。
要为装饰网格替换 SurfaceAppearance 对象:
在视口中,选择一个带装饰的网格。

在 资源管理器 窗口中,展开父模型,然后展开子网格,直到 SurfaceAppearance 对象可见。

删除 SurfaceAppearance 对象。网格的视觉外观在视口中更新。

在 SurfaceAppearance 文件夹中,复制您想要用于装饰的替代 SurfaceAppearance 对象。

返回到装饰模型,然后将新的 SurfaceAppearance 对象粘贴到子网格中。网格的视觉外观在视口中更新。


对建筑上的每个装饰网格重复此过程。

- 可选为了进一步自定义新的 SurfaceAppearance 对象,选择一个新的色调。
在视口中,按住 AltShift (⌥Shift),然后单击您建筑中任何带装饰的网格。
在 属性 窗口中,单击 BrickColor 或 Color。六边形地图或颜色弹出窗口将分别显示。
选择一种新颜色。所有活动的装饰网格在视口中更新其色调。

减少可见重复
当您构建使用平铺材料(如砖和混凝土)的大型对象时,平铺图案可能会迅速显露出可见的重复。为了帮助减少这些材料的可见平铺,您可以创建一个污垢贴花或纹理,然后将其作为子对象添加到您的墙网格上,以覆盖在墙的活动材料之上。这种自定义策略的好处是为您的建筑增加额外的真实感,迅速提高您 3D 环境的质量。有关如何应用和自定义纹理的信息,请参见 纹理和贴花。



添加装饰道具
作为使对象在其更大的模块化环境中感觉独特的最后一步,您可以通过用装饰道具装饰它们为每个对象增添大量个性。例如,示例模块化建筑工具包包括消防逃生梯、窗户阳台、空调单元和植物等资产,您可以尝试使用这些资产来装饰每栋建筑,使其感觉有人居住。即使仅仅添加几个装饰道具也可以为您的场景增添大量故事性。
