应用精致资产是构建最终环境的最后一步,在此过程中,您将灰盒占位资产替换为高质量的精致资产,以满足游戏的美学目标和设计要求。这个课程的激动人心的部分是您看到您的世界变得生动,形成一个完整且准备发布的统一环境。
使用 Island Jump - Final 文件作为参考,本节教程教您如何使用创作者商店查找并将示例资产库添加到您的项目中,继续您的组织结构以将新资产分类,并将资产库应用于 3D 空间。
获取资产库
创作者商店是 工具箱 的一个选项卡,您可以使用它查找所有由 Roblox 和 Roblox 社区制作的资产,以便在您的项目中使用,包括模型、图像、网格、音频、插件、视频和字体资产。您可以使用创作者商店将单个资产或资产库直接添加到打开的游戏中。
资产库是您可以放置到游戏中心位置以便于访问和重用的资产集合。您将从创作者商店使用的资产库包括六个 3D 资产、两个自定义 MaterialVariant 材料,以及来自 创建基本视觉效果 的最终粒子效果。这六个网格如下:






这些资产是单个 MeshPart 对象或包含多个网格的 Model 对象。它们使用自定义材料和基于物理的渲染 (PBR) 纹理以实现逼真的阴影。有关更多信息,请参见 材料 - 自定义材料 和 PBR 纹理。
要将资产库从您的库存获取到您的游戏中:
打开创作者商店的资产库 详细信息页面,然后单击右上角的 获取模型。库现在在您的库存中,您可以在平台上的任何项目中重用这些资产。
返回 Studio,单击 主页 工具栏选项卡中的 工具箱,切换到 库存 选项卡,然后单击 核心构建和脚本 瓦片。库出现在视口中。

一些网格可能看起来是灰色的,而不是纹理,因为它们的材料引用了尚未安装的 MaterialVariant 对象。要解决此问题,请将 Moss_Lumpy_A 和 Moss_Strata_Noisy_A 从资产库拖到资源管理器中的 MaterialService 容器中。纹理会自动对齐。

继续组织结构
在放置资产之前,扩展您在 灰盒可玩区域 中开始的文件夹结构:
- 在 资源管理器 中,在 World 内部添加两个新文件夹,并将其命名为 Platforms 和 Mountains。
- 在 Platforms 内部,为每个海堆级别添加一个 Model,并将其命名为与您的灰盒级别匹配。例如,示例游戏为环境中的每个平台有 18 个单独的模型容器。

应用资产库
现在将精致资产放置在您的灰盒上。每个部分为您提供三条路径:与助手一起构建(让助手在示例的确切坐标处放置每个资产)、应用您自己的(您可以根据自己的自定义布局放置资产)和 重建示例(您手动在示例的确切坐标处放置它们)。
屏幕截图使占位资产半透明,以便您可以在步骤之间看到您的进展。

平台
该库包括两个平台 Model 对象(每个由两个 MeshPart 子对象组成):
- PlatformA — 包括一个金属圆形底座,用于第一个和最后一个平台。
- PlatformB — 包括基本地形盖,用于中间的平台。

对于下面的每一行,从名为“核心构建和脚本”的资产库中复制匹配的网格到 Workspace > World > Platforms > <Parent Model> 并设置其 Origin.Position 和 Scale。
PlatformA 资产:
- Level_1: Origin.Position -30, 3, 9; Scale 2.2
- Level_2: Origin.Position -24, 11, 24; Scale 1.4
- Level_3a: Origin.Position 34, 31, 9.5; Scale 0.7
- Level_3b: Origin.Position 79, 31, 2; Scale 0.6
- Level_7: Origin.Position 402, 312, 79; Scale 1.1
PlatformB 资产:
- Level_3c: Origin.Position 89, 31, 48; Scale 0.8
- Level_4a: Origin.Position 104, 65.5, 46.5; Scale 0.6
- Level_4b: Origin.Position 127, 66, 67.5; Scale 0.6
- Level_4b: Origin.Position 133.5, 164.5, 70.5; Scale 0.7
- Level_4c: Origin.Position 152, 65.5, 91; Scale 1
- Level_4d: Origin.Position 200, 66, 107; Scale 0.5
- Level_4e: Origin.Position 238.5, 66, 81; Scale 0.8
- Level_5a: Origin.Position 262, 120, 57.5; Scale 0.7
- Level_5b: Origin.Position 245, 122, 15; Scale 0.4
- Level_5c: Origin.Position 271, 122.5, -5.5; Scale 0.4
- Level_5d: Origin.Position 318, 121, -22; Scale 0.9
- Level_6a: Origin.Position 363, 201, -52.5; Scale 1.2
- Level_6b: Origin.Position 381, 201, 11; Scale 0.4
- Level_6c: Origin.Position 389, 201, 47; Scale 0.6
海堆
示例资产库包括两种类型的海堆岩石结构,您可以以创造性的方式堆叠它们以形成海堆平台的支柱:
- SeaStackMesh – 包括一个坚固的岩石结构。
- SeaStackCaveMesh – 包括一个隧道和坚固的顶部。
这两种平台类型都是 MeshPart 对象。


对于下面的每一行,从名为“核心构建和脚本”的资产库中复制匹配的网格到 Workspace > World > Platforms > <Parent Model> 并设置其 Size、CFrame.Position 和 CFrame.Orientation。所有网格都是 SeaStackMesh,除非另有说明。
Level_3a:
- Size 31, 31, 34; CFrame.Position 31, 14, 15.5; CFrame.Orientation 0, 72, 0
- Size 32, 37, 34; CFrame.Position 39, 11, 6; CFrame.Orientation 0, 162, 0
- Size 32, 36, 34; CFrame.Position 31, 13, 7.5; CFrame.Orientation 0, 68, 0
Level_3b:
- Size 35, 47, 36; CFrame.Position 80, 7, 4; CFrame.Orientation 0, -18, 0
Level_3c:
- Size 52, 69, 53; CFrame.Position 90, -4, 48; CFrame.Orientation 0, -18, 0
Level_4a:
- Size 43, 49, 43; CFrame.Position 103, 5, 48; CFrame.Orientation 0, -119, 0
- Size 37, 49, 38; CFrame.Position 104, 41, 47; CFrame.Orientation 0, -18, 0
Level_4b:
- SeaStackCaveMesh; Size 54, 67, 53; CFrame.Position 131, 88, 71; CFrame.Orientation 0, -111, 0
- Size 66, 85, 65; CFrame.Position 133, 23, 71; CFrame.Orientation 0, 87, 0
- Size 46, 55, 47; CFrame.Position 133, 136, 71; CFrame.Orientation 0, -79, 0
Level_4c:
- Size 63, 81, 62; CFrame.Position 151, 25, 91; CFrame.Orientation 0, -50, 0
Level_4d:
- Size 35, 39, 35; CFrame.Position 198, -4, 108; CFrame.Orientation 0, -44, 0
- Size 33, 36, 32; CFrame.Position 199, 21, 108; CFrame.Orientation 0, -119, 0
- Size 27, 36, 28; CFrame.Position 199, 48, 108; CFrame.Orientation 0, -18, 0
Level_4e:
- Size 57, 65, 57; CFrame.Position 239, -14, 82; CFrame.Orientation 0, -63, 0
- Size 48, 65, 50; CFrame.Position 239, 34, 81; CFrame.Orientation 0, 39, 0
Level_5a:
- Size 56, 62, 54; CFrame.Position 264, 11, 55; CFrame.Orientation 0, 150, 0
- Size 50, 57, 50; CFrame.Position 263, 50, 57; CFrame.Orientation 0, 75, 0
- Size 43, 57, 44; CFrame.Position 262, 92, 57; CFrame.Orientation 0, 176, 0
Level_5b:
- Size 47, 36, 40; CFrame.Position 245, -16, 15; CFrame.Orientation 0, 0, 0
- Size 38, 38, 41; CFrame.Position 245, 11, 14; CFrame.Orientation 0, 100, 0
- Size 36, 38, 34; CFrame.Position 243, 34, 15; CFrame.Orientation 0, -164, 0
- Size 31, 34, 30; CFrame.Position 244, 62, 16; CFrame.Orientation 0, -45, 0
- Size 28, 32, 28; CFrame.Position 244, 83, 15; CFrame.Orientation 0, -120, 0
- Size 24, 32, 24; CFrame.Position 244, 106, 15; CFrame.Orientation 0, -18, 0
Level_5c:
- Size 45, 34, 38; CFrame.Position 270, -8, -6; CFrame.Orientation 0, 180, 0
- Size 36, 35, 38; CFrame.Position 270, 17, -5; CFrame.Orientation 0, -80, 0
- Size 34, 35, 32; CFrame.Position 272, 40, -5; CFrame.Orientation 0, 16, 0
- Size 29, 32, 29; CFrame.Position 271, 65, -7; CFrame.Orientation 0, 136, 0
- Size 26, 30, 26; CFrame.Position 271, 86, -6; CFrame.Orientation 0, 61, 0
- Size 22, 30, 23; CFrame.Position 270, 108, -6; CFrame.Orientation 0, 162, 0
Level_5d:
- Size 65, 71, 63; CFrame.Position 315, -5, -27; CFrame.Orientation 0, -161, 0
- Size 58, 66, 58; CFrame.Position 315, 39, -25; CFrame.Orientation 0, 124, 0
- Size 50, 66, 51; CFrame.Position 315, 89, -24; CFrame.Orientation 0, -134, 0
Level_6a:
- Size 94, 104, 92; CFrame.Position 358, 32, -56; CFrame.Orientation 0, -123, 0
- Size 85, 96, 84; CFrame.Position 360, 97, -54; CFrame.Orientation 0, 162, 0
- Size 72, 71, 74; CFrame.Position 361, 165, -52; CFrame.Orientation 0, -79, 0
Level_6b:
- Size 44, 65, 47; CFrame.Position 380, 17, 9; CFrame.Orientation 0, -143, 0
- Size 46, 44, 39; CFrame.Position 380, 61, 11; CFrame.Orientation 0, -78, 0
- Size 37, 37, 40; CFrame.Position 381, 92, 11; CFrame.Orientation 0, 22, 0
- Size 35, 37, 33; CFrame.Position 381, 115, 10; CFrame.Orientation 0, 118, 0
- Size 30, 33, 30; CFrame.Position 379, 141, 10; CFrame.Orientation 0, -123, 0
- Size 27, 31, 27; CFrame.Position 380, 162, 10; CFrame.Orientation 0, 162, 0
- Size 23, 31, 24; CFrame.Position 380, 185, 11; CFrame.Orientation 0, -96, 0
Level_6c:
- Size 68, 52, 57; CFrame.Position 387, 3, 48; CFrame.Orientation 0, -4, 0
- Size 54, 54, 58; CFrame.Position 388, 41, 47; CFrame.Orientation 0, 96, 0
- Size 52, 54, 48; CFrame.Position 385, 75, 47; CFrame.Orientation 0, -168, 0
- Size 44, 49, 43; CFrame.Position 385, 114, 49; CFrame.Orientation 0, -49, 0
- Size 40, 45, 40; CFrame.Position 386, 145, 48; CFrame.Orientation 0, -124, 0
- Size 34, 45, 35; CFrame.Position 387, 178, 48; CFrame.Orientation 0, -22, 0
Level_7a:
- Size 96, 98, 102; CFrame.Position 406, 19, 82; CFrame.Orientation 0, -41, 0
- Size 92, 98, 84; CFrame.Position 407, 81, 82; CFrame.Orientation 0, -19, 0
- Size 81, 90, 79; CFrame.Position 407, 152, 80; CFrame.Orientation 0, 90, 0
- Size 73, 83, 73; CFrame.Position 404, 208, 80; CFrame.Orientation 0, 15, 0
- Size 62, 83, 64; CFrame.Position 403, 270, 79; CFrame.Orientation 0, 116, 0
放置所有海堆后,删除每个级别模型中的占位灰盒圆柱。
硬币
示例资产库包括一个单一的 Coin 资产,它是一个 MeshPart,带有一个子 SurfaceAppearance,使其具有闪亮的金属光泽。将一个放置在您添加占位硬币的地方,然后根据需要调整其位置和方向。

对于下面的每一行,从名为“核心构建和脚本”的资产库中复制硬币网格到工作区 > 世界 > 硬币,并设置其 CFrame.Position 和 CFrame.Orientation:
- CFrame.Position -121, 3, 6; CFrame.Orientation 0, -105, 0
- CFrame.Position -107, 3, 10; CFrame.Orientation 0, -105, 0
- CFrame.Position -104, 3, 35; CFrame.Orientation 0, 120, 0
- CFrame.Position -86, 3, 61; CFrame.Orientation 0, 30, 0
- CFrame.Position -101, 3, -12; CFrame.Orientation 0, -15, 0
- CFrame.Position -22, 6, -39; CFrame.Orientation 0, 120, 0
- CFrame.Position -48, 6, -26; CFrame.Orientation 0, 75, 0
- CFrame.Position -65, 6, -6; CFrame.Orientation 0, 75, 0
- CFrame.Position -74, 6, 19; CFrame.Orientation 0, 75, 0
- CFrame.Position -67, 6, 46; CFrame.Orientation 0, 75, 0
- CFrame.Position -38, 14, 28; CFrame.Orientation 0, 75, 0
- CFrame.Position -8, 14, 8; CFrame.Orientation 0, 75, 0
- CFrame.Position -3, 14, 34; CFrame.Orientation 0, 75, 0
- CFrame.Position 35, 33, 9; CFrame.Orientation 0, -105, 0
- CFrame.Position 59, 39, 6; CFrame.Orientation 0, 90, 0
- CFrame.Position 78, 33, 4; CFrame.Orientation 0, -75, 0
- CFrame.Position 83, 39, 22; CFrame.Orientation 0, -165, 0
- CFrame.Position 113, 70, 56; CFrame.Orientation 0, -135, 0
- CFrame.Position 134, 70, 76; CFrame.Orientation 0, -135, 0
- CFrame.Position 175, 70, 103; CFrame.Orientation 0, 75, 0
- CFrame.Position 197, 70, 107; CFrame.Orientation 0, 105, 0
- CFrame.Position 214, 81, 95; CFrame.Orientation 0, 120, 0
- CFrame.Position 235, 99, 78; CFrame.Orientation 0, 135, 0
- CFrame.Position 258, 125, 54; CFrame.Orientation 0, 135, 0
- CFrame.Position 251, 132, 11; CFrame.Orientation 0, 135, 0
- CFrame.Position 260, 140, 4; CFrame.Orientation 0, 135, 0
- CFrame.Position 270, 132, -5; CFrame.Orientation 0, 135, 0
- CFrame.Position 312, 162, -19; CFrame.Orientation 0, 105, 0
- CFrame.Position 360, 206, -40; CFrame.Orientation 0, 69, 0
- CFrame.Position 377, 260, -4; CFrame.Orientation 0, -145, 0
- CFrame.Position 380, 206, 13; CFrame.Orientation 0, 12, 0
- CFrame.Position 386, 260, 27; CFrame.Orientation 0, -145, 0
- CFrame.Position 391, 206, 45; CFrame.Orientation 0, 12, 0
放置所有硬币后,删除占位符硬币。
山脉
资产库中的单个 MountainMesh 装饰背景,隐藏水域地形的边缘,并封闭可玩区域。旋转和缩放每个实例可以打破重复性,以便玩家不会注意到你反复使用相同的网格。

对于下面的每一行,从名为“核心构建和脚本”的资产库中复制 MountainMesh 到工作区 > 世界 > 山脉,并设置其 Size、CFrame.Position 和 CFrame.Orientation:
- Size 2048, 334, 2048; CFrame.Position -1243, 115, -1402; CFrame.Orientation 0, 46, 0
- Size 2048, 212, 2048; CFrame.Position -326, 230, -1614; CFrame.Orientation -15, -155, 0
- Size 2048, 416, 1871; CFrame.Position 434, 160, -1543; CFrame.Orientation 0, -2, 0
- Size 2048, 400, 2048; CFrame.Position 1200, 147, -1534; CFrame.Orientation -15, -155, 0
- Size 2048, 540, 1488; CFrame.Position 1726, 220, -1139; CFrame.Orientation 0, -95, 0
- Size 2044, 442, 2044; CFrame.Position 2344, 174, -413; CFrame.Orientation 0, 5, 0
- Size 2048, 458, 2048; CFrame.Position 2267, 157, 1084; CFrame.Orientation 0, -81, 0
- Size 2048, 678, 2048; CFrame.Position 1662, 221, 1804; CFrame.Orientation 0, 9, 0
- Size 2043, 352, 1467; CFrame.Position 1025, 147, 2462; CFrame.Orientation 0, 54, 0
- Size 1980, 531, 1742; CFrame.Position 361, 180, 2119; CFrame.Orientation 0, 21, 0
- Size 2048, 415, 2048; CFrame.Position -580, 160, 1961; CFrame.Orientation 0, -122, 0
- Size 2048, 415, 2048; CFrame.Position -900, 160, 1652; CFrame.Orientation 0, 24, 0
- Size 1321, 403, 1321; CFrame.Position -1303, 133, 770; CFrame.Orientation 0, 55, 0
- Size 2048, 335, 2048; CFrame.Position -1653, 114, 161; CFrame.Orientation 0, -20, 0
- Size 2048, 249, 2048; CFrame.Position -1928, 79, -674; CFrame.Orientation 0, 24, 0
- Size 2048, 450, 2048; CFrame.Position -1426, 73, -895; CFrame.Orientation 0, -20, 0
游戏测试
抛光的资产可以稍微改变海堆的形状,从而影响在灰盒版本的关卡中有效的跳跃。在发布之前,最后检查游戏以识别和修复任何问题。
从下拉菜单中选择 测试 并点击 播放。爬到堆顶的信号弹;如果跳跃突然感觉不对,轻推有问题的网格并再试一次。完成后点击 停止。
恭喜你完成核心课程!从这里你可以通过新的游戏玩法特性或关卡扩展你的项目,浏览 Studio 的完整 功能集,或转向另一个课程,如 环境艺术。祝你创作愉快!