在完成入门教程并了解 Roblox Studio 用户界面后,您已准备好在平台上创建体验。
使用示例 高质量喷气式猫apult 资产包,本教程通过向玩家展示在漂浮平台上向目标发射五个项目弹道的过程,包括指导:
- 使用 Studio 的项目模板之一建立和组织一个数据模型以为单个位置提供数据。
- 从创作者商店购买两种原始和复杂的 3D 对象,并为您自己的游戏要求添加独特的属性。
- 组织并放置脚本在其正确位置,以便 Roblox 引擎能够正确模拟和渲染游戏玩法。
- 测试并发布您的创作给全球受众,使用各种设备访问平台。
完成此过程后,您可以学习如何使用 核心课程 重现一个简单的 3D 平台游戏体验,或尝试不同的使用案例教程或开始创建自己的项目。
创建一个项目
一个 项目 是一个集合资源、设置和其他资源的集合,其中包含体验。 所有项目都以一个 地方 开始,玩家加入体验时加载,但您可以在该体验内创建额外的地方来组织资源到不同的游戏区域。 例如,如果您想要玩家在进入到庞大的沙漠或
场景方的对象层是其 数据模型 ,它描述该游戏区域的所有内容,例如构成 3D 世界的对象。当您首次打开一个项目时,开始位场景的数据模型相对简单,但随着您想要在您的体验中实现的对象数量、交互性或行为,它可以变得相当复杂。当您首次打开一个项目时,开始位置的数据模型相对简单,但随着您想要
在你的第一次体验中,本教程使用 Studio 的项目模板向您展示如何使用 Studio 项目模板为单个地点构建和组织数据模型。 项目模板 有用,因为它们提供在起始位场景的数据模型中的一组默认对象,您可以使用它们来为不同的音乐流派构建体验。
例如,如果您想要在拥有 sprawling 城市的角色扮演体验,您可以打开包含可重用的墙壁、窗户和门对象的 现代城市 模板,它包括可以相互组合在一起创建独特建筑变化的捕猎赛车体验。同样,如果您想要建立一种赛车体验,您可以打开 赛车 模板,
为了保持事情简单,本教程指示您创建一个项目使用 基础板板 模板,因为它包含平台上的几个重要体验的默认对象:
- 生成位置 – 一个 SpawnLocation 对象是玩家角色在 3D 空间中加入体验时在 3D 空间中生成的位置,以及当生命值达到零时重生。
- 底板 – 底板是一个 4x4 网格纹理的地板。
此模板是您创建第一个体验的出发点,因为它提供一个中世纪世界的高真实度照明技术,以及一个与您使用以便将 3D 对象位置和方向对齐的地板。斯坦是 Studio 的基础单位长度,每个斯坦相当于 28 厘米。有关 Roblox 主要单位的更多信息,请参阅Roblox 单位。
要使用 Baseplate 模板打开一个项目:
打开 Roblox Studio 。 登录页面显示所有可用的项目模板。
选择 底板 模板瓦片。Studio 打开一个新的体验,包括一个生成位置和一个底板。
获取资产包
现在您有一个打开的项目,您可以在生成位置和底板旁边添加额外的 3D 对象到数据模型。Studio 将 3D 对象表示为 BasePart 对象,它们以物理模拟在 3D 空间中渲染,并且模拟真实世界物理行为,例如重力、摩擦和力。
有几种类型的 BasePart 对象,但最常见的是:
- 零件 – 一个 Part 对象是 Studio 的原始 3D 对象,它有五个不同的形状:球、块、圆砖块、楔形和角楔形。
- 网格 – 一个 MeshPart 对象是由第三方建模应用程序中的垂直、边缘和面组成的对象。
为了帮助您熟悉 3D 对象的两种类型,此教程提供了一个资产包,包含以下部分和网格,用于创建您的第一次体验的核心游戏:
您可以在Creator Store,一个市场,在您的项目中使用 Roblox 和 Roblox 社区的资产,包括模型、图像、网格、音频、插件、视频和字体资产。Creator Store通过 Studio 内的工具箱直接访问,或者通过2>创建者 Hub2>。 对
要从创作者商店插入此教程的资产包到您的 Studio 物品栏,请单击以下部件中的 添加到物品栏 链接。 一旦资产在您的道具中,您可以在平台上的任何项目中重用它们。
要将此资产包从您的库存中获得到您的体验:
在菜单栏中,选择 视图 标签。
在 显示 部分中,单击 工具箱 。显示 工具箱 窗口。
在 工具箱 窗口中,单击 物品栏 选项卡。显示 我的模型 排序显示。
点击 Studio 入门 - 猫apult & 平瓦片 地砖。资产包显示在您的视图中。
自定义目标
当您将3D对象添加到您的体验时,Studio会更新 Explorer窗口 显示对象名称和其子对象在Workspace服务中的子层。例如,在您添加猫apult模型到您的视图后,Explorer窗口会显示 IntrotoStudioCatapult 文件夹和其子对象资源在1> Class.Workspace
Explorer 窗口是您打开体验中的地方数据模型的基础 Studio 窗口。 这意味着如果您有多个地方的体验,这个窗口会根据您当前工作的地方显示不同的对象。
在 Explorer 窗口中选择对象时,Studio 更新 属性 窗口,显示您可以为该对象自定义的属性的选择,而不使用脚本,例如对象的大小、颜色、位置或方向。 要显示此过程,这个教程的本节提供了关于自定义虚拟和行为目标在漂浮平台上的视觉和行为特性的指导。
要自定义您的目标:
选择目标对象之一。
在 Explorer 窗口中,单击左侧的下拉箭头到 IntroToStudioCatapult 文件夹的所有子文件。
使用此过程,扩展 TargetPlatforms 文件夹,子文件 TargetPlatform 模型为接近地面的泛平台,并且其 TargetParts 文件夹显示在漂浮平台上的每个部分。
单击其中一个部件。 视窗 显示在对象周围,表示它已选择,而 属性 窗口更新以显示该特定部件的可定制属性。
在 属性 窗口中,
- 将 BrickColor 设置为您想要的颜色。
- 将 大小 设置为您想要的零件沿 X、Y 和 Z 轴有效。
- 将 CFrame.Position 设置为您想要的部件在平台上的位置。
- 将 CFrame.Orientation 设置为您想要的旋转方向。
重复此过程以其他平台上的零件。
组织脚本
虽然您在项目中组织数据模型的方式有很大的灵活性,但 Roblox 引擎期望某些对象位于特定的 容器服务 中,以便模拟和渲染功能在服务器和客户端之间正常运行。服务器 指向一个 Roblox 电脑,作为保持体验状态的最终
容器服务的主要类别包括:
- 工作区 - 包含在 3D 世界中渲染的对象。
- 环境 - 包含用于环境设置和元素的对象。
- 复制 - 包含在服务器和客户端之间复制的内容和逻辑。
- 服务器 - 仅包含服务器端内容和逻辑。
- 客户端 - 包含客户端内容和逻辑。
- 聊天 - 包含启用聊天功能的对象。
在教程的这一点之前,您只能与数据模型的 Workspace 服务中的对象互动。 但是,为了让猫apult正常运行,您必须将一些子脚本对象移动到不同的容器服务。 Roblox 提供两种类型的脚本对象来容纳 Luau 代码,修改对象行为并实现整个体验的整体逻辑:
- Scripts - 脚本可以在服务器或客户端依照其设置 RunContext 属性运行。
- ModuleScripts - 一个可以从服务器和客户端脚本中重用的脚本。
Class.Script 对象的 RunContext 属性决定是否在客户端或服务器上运行脚本。有三种运行上下文:
- 继承 - 脚本基于其父容器运行。继承是默认运行上下文。
- 服务器 - 脚本仅在服务器上运行,无论其父容器。
- 客户端 - 脚本仅在客户端上运行,无论其父容器。
重要的是,您应该意识到脚本的运行位置,否则您的对象可能无法按如何您想要的方式运行。例如,如果您现在播放体验,玩家不能将弹道装备到弯道或发射到目标。为了确保游戏玩法正常运行,您必须将孩子们移动到 ReplicatedStorage 和 ServerScriptService 文件夹中的相应容器服
ReplicatedStorage 包含可用于服务器和连接的客户端的对象,使其成为了体验游戏逻辑的最佳位置,需要跟踪玩家发射的多少枚子弹,直到显示用户界面。ServerScriptService 包含仅供服务器使
为了将文件夹组织成正确的容器服务,以便猫apult 正常运行:
在 Explorer 窗口 中,扩展 ReplicatedStorage 和 ServerScriptService 文件夹。
选择 ReplicatedStorage 文件夹内的所有子文件,然后拖动它们到 ReplicatedStorage 服务器。
选择 ServerScriptService 文件夹内的所有子文件,然后将它们拖放到 ServerScriptService 服务。
删除 ReplicatedStorage 和 ServerScriptService 文件夹。
- 选择 both 文件夹.
- 按下 Delete 。
进行游戏测试,验证猫apult现在正常工作。
在菜单栏中,单击 播放 按钮。Studio进入播放测试模式。
装备 冰 项目弹体到垫子上,将其瞄准最近的漂浮平台,然后将其发射到目标。
装备 WoodPlanks 项目投射器到直升机,将其瞄准最远的漂浮平台,然后将其发射到目标。
当您完成游戏测试后,请返回菜单栏并单击 停止 按钮。Studio退出游戏测试模式。
自定义发射物
虽然你的子弹大小正确相同,但它们从发射台发射时会以不同的距离旅行,因为每个子弹都有独特的 材料 ,它们会模拟其实体世界对流体的物理特性,包括其密度、弹性和摩擦。
根据牛顿的第二个 运动法律,对象的加速取决于对象和对象自身的力以及其质量。随着弓箭提供每次启动射的相同的力,每个发射物的加速都会根据其质量进行相应的变化。弓箭有小量的质量加速更快,大量的质量加速更慢,大量的质量加
要看到此原理在行动作中,请检查您之前的游戏测试的结果。 WoodPlanks 材料比 Ice 材料密度更低,因此木材项目能更快地加速,从而在同一发
Roblox Studio 是一个真实世界模拟引擎,模拟物理行为实时,因此您需要考虑您的对象在其物理特性上如何不同。 对于游戏教程的最后一部分,您将尝试使用材料来自定义第三个漂浮平台的目标。 要参阅每个材料的物理属性列表,请参阅材料 - 默认物理属性。
要定制第三个投射物:
创建一个第三个漂浮的目标平台。
- 在 Explorer 窗口中,选择一个 目标平台 对象。
- 按下 CMD + D 来复制平台和目标。
- 使用 移动 工具将新平台移到新位置。
将第三个投射物的材料更改为有足够的质量量,以便到达您的第三个平台的目标。
- 在 探险者 窗口中,扩展 ProjectileMaterials 文件夹,然后选择 ProjectileC 。
- 在 属性 窗口中,将 材料 设置为您想要部件模拟的现实世界材料,包括其视觉和物理特性。此材料需要足够的 mass 来到达新平台。
测试体验以验证该发射物与第三个漂浮平台上的目标有影响。
发布体验
Roblox 不仅提供您创建和运行体验的工具和引擎,还提供您访问覆盖全系列设备的社交网络的玩家的大型社交网络。 当您准备好向全球受众发布您的体验时,您必须发布和配置体验的设置,以便它可以在您所协助持的任何设备上都可用于所有玩家。
在 Roblox 中,一切几乎都是以云存储资产的形式表示,其ID 是唯一的。这种ID 通常以 rbxassetid://[ID] 的形式发布,该ID 适用于特定资产类输入。当您发布体验时,体验本身会收到一个 Class.DataModel.GameID|UniverseID
一旦发生这种情况, 创建者仪表板 为您提供工具和资源来监控、管理和执行您的体验和其位置的任务,例如:
- 使用 分析功能 监控玩家1) 活动 2)动态(as in friend activity)、保留和增长。
- 自动翻译在体验中的内容,为全球观众,其中包括多种语言,提供 本地化功能。
- 配置在体验中购买和身临其境广告的 monetization 功能。
你在创建者仪表板上学习到的东西可以为你提供重要的见解,让你了解如何进一步迭代你的项目并与您的观众交互。例如,如果你学到您的观众多喜欢多人游戏竞赛,那么您可以创建多个 catapult 来跟踪每个玩家击倒的目标数,然后重新发布体验,让您的更新立即发布在平台上,无需单点按。
要发布您的体验:
将您的体验上传到云端。
- 在菜单栏中,单击文件,然后选择发布到 Roblox。
- 在 发布游戏 窗口中,填写所有适用的字段。
- 在 名称 字段中,为您的体验提供一个名称。
- 在 描述 字段中,提供玩家对体验的期望。
- 从 类型 选项卡菜单中,选择您想要代表您体验的类型。
- 在 设备 部分中,启用您想要玩家使用的每个设备,以便玩家可以使用您的体验。
- 在窗口的右下角,单击创建按钮。您的体验现在在云端中,并且有一个UniverseID和一个PlaceID作为开始场景。
让体验公开给所有玩家。
导航到创建者仪表板。显示 创建 登录页面的第一个体验。
将鼠标悬停在体验的地瓦片上,点击“⋯”按钮,然后从上下文菜单中选择“公开”。
(可选) 与其他人分享您的体验。
从 创建者仪表板 ,将鼠标悬停在您的体验地瓦片上,单击 复制 URL ,然后从上下文菜单中选择复制。
与其他人共享 URL,作为指向您的体验的直接链接。