移植 3DS 游戏到网页

把 3DS 游戏移植到网页

一款你拥有的 3DS 游戏要做成浏览器版本,需要较小的包体、触控和键盘输入,以及合适的托管平台。Summer Engine 可以为 GDScript 项目导出网页版本。

把 3DS 游戏移植到网页,意思是重建一款你拥有的游戏并导出浏览器版本,通常是 WebAssembly 加 WebGL。网页版本是把可玩版本摆到人们面前最便宜的方式,因为不用安装、没有商店、也不用审批。

网页同时也是这里约束最多的目标。构建必须先下载完才有人能玩,它在内存受限的浏览器沙盒里运行,音频在玩家与页面交互之前不能开始,而且没有文件系统。

动手之前有一条产品事实很重要。Summer Engine 可以为 GDScript 项目导出网页版本,也就是一个 .zip 文件,你把它发布到 Summer Games,玩家就能在浏览器中游玩。C# 项目无法导出到网页。下文说明浏览器版本需要什么。

下载体积决定你的跳出率

桌面玩家愿意等 Steam 下载,因为他们已经做出了承诺。网页玩家是在进度条走动时评判你的游戏。给初始载荷定预算,压缩贴图和音频,剔掉未使用的资源,后面的关卡用流式加载而不是一次性全发。3DS 规格的美术预算是实打实的优势:240p 年代的精灵和小模型能压成几秒就加载完的载荷,而这正是浏览器构建需要的。

无法退出的浏览器沙盒规则

在玩家点击或点按之前音频不会播放,所以用一个开始按钮把游戏挡住,别自动播放音乐。存档写进浏览器存储,玩家随时可以清掉,所以把它当作方便而非永久,并在进度重要时提供导出或云端选项。内存比原生更紧。有些功能,包括多线程构建,需要托管该构建的服务器设置特定的跨源隔离头,所以在依赖它们之前先确认你的托管是否允许。

一个构建里同时支持键盘、鼠标和触摸

同一个网页构建会被带键盘的桌面加载,也会被带触摸屏的手机加载。两者都要检测并支持。鼠标很好地承接原来的触控笔交互。触摸需要更大的点击目标。键盘需要一套避开浏览器快捷键的布局。接上手柄时,可以通过浏览器手柄 API 工作。也要处理失焦:玩家会切换标签页,而一个在后台仍然全速运行的游戏会耗干笔记本电量,然后被关掉。

网页构建托管在哪里

itch.io 是托管可玩网页版本的标准去处,上传即可,没有守门人,但有总大小 500 MB、单个文件 200 MB、最多 1000 个文件的限制。Newgrounds、itch.io 上的合集和游戏 jam 页面也是同样的方式。你也可以把版本嵌进自己的站点。网页版本和付费桌面版本可以共存,浏览器版本当试玩,桌面版本是人们掏钱买的东西。用 Summer 的话,你可以在 Steam 页面旁边把网页版本发布到 Summer Games。

常见问题

我能把 3DS 游戏放进浏览器吗?

你可以重建一款你拥有的 3DS 游戏,并用支持网页导出的引擎导出为浏览器版本。那是一次真正的游戏移植,不是一个模拟器页面。用 Summer 的话,用 GDScript 重建的游戏可以导出网页版本,你把它发布到 Summer Games。在浏览器里跑别人的卡带数据,不是 Summer Engine 的用途。

网页导出能用 C# 吗?

用 C# 不行。Godot 4 无法把 C# 项目导出到网页,这一点在 Summer 中同样成立。在 Summer 中,GDScript 项目可以导出网页版本,你把它发布到 Summer Games。C# 可在桌面编辑器中用于制作桌面版本。

我的网页构建为什么一开始不出声?

浏览器在用户与页面交互之前会拦住音频。在游戏前面放一个开始或点击游玩的界面,让第一次用户手势解锁音频上下文,之后再开始音乐和音效。

网页构建把进度存在哪里?

存在浏览器存储里,玩家可以清掉,而且它不会跟到另一台设备或另一个浏览器。把存档数据做小,如果进度重要,就提供导出码、文件下载,或基于账号的存档。

网页移植适合当 Steam 发行的演示吗?

适合,浏览器试玩片段是最实用的试玩形式之一,因为谁都不用安装任何东西。用 Summer 的话,你可以把 GDScript 网页版本发布到 Summer Games,并从商店页面和媒体联络中链接过去。

继续探索

用 Summer Engine 创作的更多方式

AI 游戏制作器

用语言描述就能制作完整 2D 和 3D 游戏的中心。

打开

Port a 3DS game to Steam

Rebuild a 3DS game you own in Summer Engine, then export a Windows, macOS, or Linux build and publish it on Steam.

打开

Port a 3DS game to iOS

Rebuild a 3DS game you own in Summer Engine, then export a signed build for iPhone and iPad and submit it to the App Store.

打开

Port a 3DS game to Android

Rebuild a 3DS game you own in Summer Engine, then export an Android App Bundle and publish it on Google Play.

打开

Port a 3DS game to PC

Rebuild a 3DS game you own in Summer Engine, then export Windows, macOS, and Linux builds and distribute them however you like.

打开

Port a 3DS game to Switch

Rebuild a 3DS game you own in Summer Engine and ship it on PC first. A Switch version needs Nintendo approval and usually a licensed porting partner.

打开

Port a 3DS game to Steam Deck

Rebuild a 3DS game you own in Summer Engine, then ship a Steam build that plays well on a 1280x800 handheld with gamepad only input.

打开

How to port a 3DS game

The full process, in order: rights, asset inventory, rebuild, screen and input redesign, testing, export, and store submission.

打开

Port a game to web

A browser build has no filesystem, a hard memory ceiling, and a download the player watches. Those three facts shape the whole port.

打开

平台游戏模板

从现成的项目开始,描述你想要的改动即可。

浏览

浏览所有游戏模板

从现成的项目开始,描述你想要的改动即可。

浏览

现在就开始制作你的游戏

下载 Summer Engine,描述你想要的,看着它逐渐成形。免费开始,无需编程。