首批拥有虚拟化身,即可以早期访问 Decentraland。
X
你好,请选择
语言
关闭

重要信息:本教程仅适用于 Decentraland SDK 的早期版本,现已不再使用。 SDK 的当前版本请参阅 Decentraland 文档

Decentraland 的场景预览是与 Now 兼容的,这是一项非常方便的服务,可以让您将内容上传到服务器,只要您愿意,就可以一直免费运行。 您可以非常轻松地将 Decentraland 场景上传到其中的服务器中,这样每个访问者可以自动启动该场景的预览。

这是与他人分享您的内容的绝佳方式! 小区建设领导者可以使用它来展示小区建设的进展,开发人员可以从他人那里获得反馈,或者您可以简单地与社区分享您创建的内容,以获得其它人的认可并激励他人。

上传到 Now 后,只需点击链接就可以让人们看到你的场景。不需要安装 CLI,Node,NPM 或在本地计算机上运行预览所需的任何其他工具。

例如,这里有一些当前正在 Now 中运行的场景:

请记住,每个打开链接的人在运行场景时都是独立于其他用户的。 即使场景在同一服务器上运行,场景状态也只会存储在用户的浏览器中,因此您无法与其他用户进行交互或看到其它用户。

另一方面,如果部署了 远程场景,则 可以 与打开链接的其他人进行交互。 请继续阅读如何将远程场景部署到 Now

准备好您的场景

要在 Now 中运行场景,请确保使用的是最新版本的 SDK(4.1.0)。 记住,SDK 版本是在场景中指定的,在您首次使用 CLI 创建场景时确定。 因此,如果您使用较旧版本的 CLI 创建了场景,然后更新了 CLI,则需要手动更新场景,以便它引用最新版本的 SDK。

要手动更新场景,请按照 将场景迁移到 4.1.0 一节中的说明操作。

将场景更新到 4.1.0 后,修改 package.json 文件以包含名为 now-start 的新脚本。 这个脚本会运行 dcl start --ci

您的 package.json 文件应包含类似以下内容:

{
  "name": "dcl-project",
  "version": "1.0.0",
  "description": "My new Decentraland project",
  "scripts": {
    "start": "dcl start",
    "now-start": "dcl start --ci",
    "build": "decentraland-compiler build.json",
    "watch": "decentraland-compiler build.json --watch"
  },
  "author": "",
  "license": "MIT",
  "devDependencies": {
    "decentraland-api": "latest",
    "decentraland": "latest"
  },
  "dependencies": {
    "ajv": "^6.5.3"
  }
}

只要部署场景,Now 就会自动运行 now-start 中的脚本。 我们在 dcl start 命令中使用 --ci 标志使预览以稍微不同的方式运行,从而与 Now 和其他托管和测试服务完全兼容。

下载并使用 Now 桌面客户端

  • zeit.co 网站 下载 Now Desktop Client.
  • 安装并打开桌面客户端后,您应该会在其他正在运行的程序旁边看到三角形的Now 图标。

  • 将整个场景文件夹拖放到工具栏上的 Now 图标上。 这会将文件夹的内容上传到服务器。
  • 您的 Web 浏览器会自动打开一个新选项卡,向您显示服务器的控制台,因为它会安装必要的依赖项以运行场景。 这需要几分钟,最终安装完成后,场景预览会自动打开。
  • 与其它人分享此链接!Now 会继续在该链接上托管您的场景。

请记住,Now 的免费版本限制总的文件大小为50 MB.

如果场景超出此限制,请尝试删除 node_modules 文件夹以及场景文件夹中不需要上传的任何其他文件,以及服务器可以基于 package.json 自动安装的文件。

上传远程场景到 Now

如果使用 CLI 中的 Remote Scene 选项创建了场景,则需要对 Now 进行两次单独部署,一次针对服务器,另一次针对场景客户端。

首先将 /server 文件夹拖放到工具栏上的 Now 图标进行部署。这将打开一个浏览器窗口,会显示一个安装所有依赖项的控制台。完成此操作后会启动预览,从浏览器选项卡复制 URL 链接。

/scene 文件夹中,打开 scene.json 并修改 main 字段,使其指向您部署到 Now 的服务器的链接(刚刚复制的 URL )。 您必须手动修改 URL 地址,以便以 wss(web socket secure)而不是 https 开头。

例如,如果服务器的地址是 https://dcl-project-fsutefbepd.now.sh/,则您的 scene.json 文件应如下所示:

{
  "display": {
    "title": "scene-example",
    "favicon": "favicon_asset"
  },
  "owner": "",
  "contact": {
    "name": "",
    "email": ""
  },
  "main": "wss://dcl-project-fsutefbepd.now.sh/",
  "tags": [],
  "scene": {
    "parcels": ["0,0"],
    "base": "0,0"
  },
  "communications": {
    "type": "webrtc",
    "signalling": "https://rendezvous.decentraland.org"
  },
  "policy": {
    "contentRating": "E",
    "fly": true,
    "voiceEnabled": true,
    "blacklist": [],
    "teleportPosition": "0,0,0"
  }
}

编辑 scene.json 后,您可以将 /scene 文件夹拖到工具栏中的 Now 图标上进行部署。

后记

如果您正在使用 SDK 构建内容,我们建议您与社区分享!交互式预览是最佳方式,因为任何人都可以访问它并完整地展示您的工作。我们还鼓励您在 Discord 中发布您的链接,在那里我们拥有一个充满活力的开发人员和艺术家社区,他们会很高兴看到您的作品!

祝开发快乐!

在虚拟世界中展示您的特色
首批拥有虚拟化身,即可先期进入 Decentraland 世界。
了解更多