初学者如何为 Decentraland 构建场景?

How do I build scenes for Decentraland as a beginner?

我可以使用什么方法,我需要什么 skills/documentation/tools 来为 Decentraland 构建场景并将它们放在我的土地上?

我一直在使用 DCL Builder,因为这可能是我唯一真正能做的事情。我发现 Builder 让人上瘾!

所以整个三角形的东西可以更容易地加载到 VR 耳机上,对吧?所以在设计时我必须遵守这些限制?

我下载了一个最近的场景,我把它制作成一个 zip 文件,然后解压后没有清晰的文件,我可以看到我可以作为视觉分享,我希望分享我一直在做的一些构建你和团队。如有任何帮助,将不胜感激。

Builder 值得内置还是我应该尝试 A-Frame 并下载它?

我知道我不会在编码方面做得很好 - 我对 Decentraland SDK 的了解为零,但对于设计建筑我非常热衷于尝试并尽可能多地学习,我想以我的绘画背景我可以很自然

我在 Decentraland 有一些相连的私人地块,并为维加斯区贡献了土地。

是的,我同意 Decentraland Builder。我用它为 Decentraland Builder Hackathon 构建了几个场景,发现它简单有趣且非常吸引人。对于艺术家来说,能够创作 3D 作品并在虚拟世界中参观它们是一个美妙的新机会。

有几种方法可以为 Decentraland 制作场景 - Decentraland Builder、Decentraland SDK 和一些第 3 方工具。我将在下面为您和其他读者总结它们。我会说它们是按照从最简单到最高级的顺序排列的。

您可以使用这些方法构建场景并 "visit" 在您的 PC 上本地构建它们,而无需将它们上传到 land。而且,当场景看起来不错时,您可以使用 Builder 或 SDK 将场景上传到您在 Decentraland 中拥有的土地。您可以在 https://market.decentraland.com 获得土地。

您可以成为其他土地所有者的艺术家或建筑师。 Decentraland Discord 服务器上有一个 "hiring" 频道,地址为 https://discordapp.com/invite/9EcuFgC

1.使用 Decentraland Builder 构建场景 要构建场景,请转到 https://builder.decentraland.org,选择要构建的场景的大小(以地块为单位),然后构建场景。 从 Items 目录中选择要放入场景中的东西。找到一个你想尝试的项目,然后 drag/drop 把它放到你的场景中 要访问您的新本地场景并查看它在 Decentraland 中的外观,请单击眼睛按钮(预览)。单击 X 以 return 转到 Builder。 场景保存在您的浏览器内存中,但这不是备份它的好方法。但更安全的存储方式是使用 Download Scene 将其导出到本地 zip 文件。您稍后可以使用主构建器页面上的 "UPLOAD SCENE" 功能上传此 zip 文件来再次上传场景。

接下来,您可以使用下载的 zip 文件中的文件集合来创建场景的 SDK-compatible 版本,以便根据需要进行进一步的自定义,并可选择将其上传到您在 Decentraland 的土地上。为此,请继续执行方法 2。

直接从 Builder 上传场景的功能已在路线图上,在您阅读本文时可能已经存在。

您还可以在构建器中选择 "Publish" 将其添加到场景池中,土地所有者或地区可以使用它来填充他们的土地。

2。使用 Decentraland SDK 构建和部署场景 Decentraland SDK 允许您向场景添加自定义内容和可选的脚本化动态行为。

可以在 https://docs.decentraland.org 找到好的 Decentraland 文档。 请确保您的场景足够简单,以符合此处发布的场景限制。特别是你可能必须专注于限制"triangle count",这是场景表现良好所必需的,尤其是当生活在许多其他场景中时"in world"。

您需要先按照此处提供的说明安装 SDK。

您会发现越来越多的脚本模块由 Decentraland 构建者创建。查看 Decentraland Discord 中的构建器频道,或 MetaVRS.io 等网站,或者您可以使用和学习 Decentraland 示例中的示例代码,您可以在 https://docs.decentraland.org/examples/sample-scenes/ 找到 Decentraland 中的脚本是使用 Typescript 完成的,它是 JavaScript 的一个很好的扩展。场景的主要起始文件是 src 子目录中的 games.ts 文件。

安装 SDK 后,您可以通过创建一个新的工作场景目录来启动一个全新的场景,并在其中 运行 dcl init;或者您可以创建一个工作目录并将 zip 文件的内容提取到其中,然后在该目录中键入 npm i

当您准备好在 SDK 中预览您的场景时,您输入 dcl start

一个优秀免费的SDK场景脚本编辑开发环境"Microsoft Visual Studio Code",您可以下载。它将对您的代码进行语法高亮显示,并向您显示语法错误的位置。当您处理 game.ts 或其他附属代码模块时,代码编辑器会知道 SDK 的 类 和功能,以及您 "import" 到场景中的任何其他代码模块代码,因此它可以帮助您正确拼写和参数。

如果您已经使用 Decentraland Builder 创建了您的场景,并且还没有进一步自定义它的愿望或技能,您仍然可以像上面那样预览它,当您准备好部署 SDK 场景时到你的土地,使用 dcl deploy。您将需要 "sign" 使用您的 MetaMask 或类似的加密钱包进行部署,以便它可以验证您拥有这片土地。要指定您尝试将其上传到哪个包裹,您需要编辑 "scene.json" 文件,编辑 "parcels" 列表和 "base parcel",两者都是您的地块坐标。

3。使用 JanusVR 构建场景并将其转换为 SDK JanusVR 是一个很好的工具,许多人都知道如何使用它来制作 3D/VR 场景。 您可以从 http://janusvr.com 免费下载。 JanusVR场景代码编辑器中的“”代码("JML markup"),可以复制到您在 JanusVR 的托管环境 https://vesta.janusvr.com/ 中制作的场景中的相同标记,然后您可以从那里升级到 Vesta UV Pro,并具有将 Vesta 场景导出到 Decentraland SDK 兼容文件的功能设置(转换为 DCL) JanusVR and/or Vesta 客户端可以由一个或多个人指向 Vesta URL,使协作设计团队能够一起工作。 在 JanusVR 中构建时,请务必仅使用 low-poly gltf 或 glb 模型文件。 JanusVR 支持多种模型文件类型,但只有 gltf 或 glb 格式适用于 Decentraland SDK。

4.在 Unity 中构建场景并将其导出到 SDK 我自己没有尝试过,但请检查一下: https://github.com/decentraland/DecentralandUnityPlugin 同样,坚持使用低多边形模型,并且知道您必须将它们设为 gltf 或 glb 格式才能在 SDK 中使用。

5.在 A-Frame 中构建场景并将它们移植到 SDK 如果您对 A-Frame 标记脚本和 SDK typescript 脚本都感到满意,并且您已经在 A-Frame 中构建了要迁移到 Decentraland 的场景,那么您可以发现转换 A-Frame 将模型和原语标记为 SDK games.ts 语法。 这有点工作,但我已经完成了几个场景。 同样,您必须使用模型的 glb 或 gltf 版本,并牢记三角形和其他限制。

我希望这能帮助您和其他人在 Decentraland 构建和部署场景方面有一个良好的开端。

我使用构建器创建场景基础然后下载它,使用命令行(CLI)你可以安装SDK,这里是指南:https://docs.decentraland.org/getting-started/installation-guide/ 别担心,这很容易,这是您需要在计算机上导航到场景的查看器,创建我喜欢使用 Blender 或 Google Sketchup 的东西,它非常适合初学者创建建筑物或要开始在 3D 中建模,那么您必须以 .glb 格式导出模型 两者都有扩展名,您必须安装 Atom 或 Visul Studio 来编辑 .ts 文件以导入您的 3D 模型(我更喜欢 Atom),但是您有要大量阅读,请阅读 DCL 的所有文档 https://docs.decentraland.org/ 这是创建您想要的一切的唯一方法,学习。