刷到这条消息的时候我愣了一下:有人把《披萨塔》跑在了任天堂3DS上。不是重制,不是移植版,就是那款用GameMaker Studio 2做的原版游戏,在3DS的屏幕上动起来了。
做这件事的人叫Casriel,身份是程序员。他展示的项目叫Cinnamon,一个开源项目,目标是把GameMaker: Studio做出来的游戏搬到老任天堂主机上——目前是3DS和Wii U。演示视频里跑的是《披萨塔》的SAGE 2019 Demo,这款2D平台游戏出自Tour De Pizza之手,用的是GameMaker Studio 2。
![]()
看到这儿我第一反应是:这到底怎么做到的?
关键在"字节码"这三个字
Casriel自己解释过这件事的原理。当开发者在GameMaker: Studio里做完一款游戏并导出时,这个引擎导出的不是原生编译代码,而是字节码。这个细节很要命——因为代码是字节码形式,理论上只要某个平台上有对应的运行器(runner),游戏就能跑起来。开发者甚至可以自己动手写一个运行器,把GameMaker的游戏搬到新设备上。
Cinnamon就是这样一个运行器。它不是从零开始写的,而是基于另一个开源项目Butterscotch——那是GameMaker运行器的一个开源重实现,Cinnamon是在它基础上分叉出来的。
还有个细节值得单独拎出来说:Casriel明确表示,这套方案没有用到任何AI。在现在这个什么都要提一句AI的节点上,这句话反而显得有点特别。
能跑的不止《披萨塔》
按照Casriel的说法,Cinnamon在正式发布时能运行的游戏不止一款。目前已知能跑起来的包括:
- Undertale Yellow
- Undertale
- Deltarune
这几款都是GameMaker系的作品,也都在玩家圈子里有相当的分量。Casriel还提到,Cinnamon未来可能会支持其他任天堂主机——注意,这里说的是可能,不是确定。
想了解细节的话,项目放在GitHub上,是开源的。
它本来是为另一个项目服务的
Cinnamon的诞生其实有个很具体的起因:它是为了Project Sunshine的移植工作而做的。Project Sunshine是一个粉丝自制移植合集,把《Undertale》《Deltarune》和《Undertale Yellow》搬到Wii U、Wii、GameCube和3DS上。Cinnamon就是这套移植工程背后的技术支撑。
换句话说,这不是某个程序员一时兴起的炫技,而是先有一个明确的移植需求,才倒推出来一个通用的运行器方案。这个顺序挺有意思——先有"我想在这些老机器上玩到这些游戏"的执念,再去找技术上的解法。
为什么这件事值得看一眼
GameMaker: Studio本身是个面向2D游戏的免费引擎,门槛不高,很多人拿它做独立游戏。但引擎免费不代表游戏就能随便上任何平台——平台适配一直是道坎。Cinnamon这类运行器的思路,等于绕开了"每款游戏单独移植一遍"的重复劳动:只要游戏是GameMaker做的、导出的是字节码,理论上就有机会通过运行器跑在老主机上。
当然,能跑和跑得好是两回事。演示视频展示的是《披萨塔》的SAGE 2019 Demo,不是完整版游戏,实际运行效果如何、帧数稳不稳、有没有操作延迟,这些从现有信息里看不出来。Casriel说Cinnamon发布时能运行多款游戏,但具体名单和完成度,目前也只有他本人在推进。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.