移植 xbox 360 游戏到 pc

把 Xbox 360 游戏移植到 PC

在 Summer Engine 里重建一款你拥有的 Xbox 360 游戏并导出桌面构建。手柄本来就对得上,渲染器和设置菜单对不上。

把 Xbox 360 游戏移植到 PC,意思是在 Summer Engine 里重建一款你拥有的游戏,并导出 Windows、macOS 和 Linux 构建。这是这个集群里最接近现代 PC 游戏的源平台,因为 360 是一台 DirectX 年代的机器,它的手柄后来成了 PC 游戏的事实标准。

手柄是直接对应的。两根模拟摇杆、一个十字键、四个面按键、两个肩键、两个模拟扳机和摇杆按下,正是现代手柄提供的东西,而现代 PC 的按键提示至今仍默认使用那套布局。

工作在别处:为 DirectX 9 年代管线写的着色器、720p 的输出目标、按 30 帧写的逻辑、平台成就和存档容器,以及围绕光盘流式读取的假设。每一项都有清晰的 PC 替代方案。

现代硬件上的 DirectX 9 年代渲染器

360 年代的渲染用的是前向光照、烘焙阴影、低分辨率阴影贴图,以及一套假定内存预算很紧、GPU 固定的后处理。在现代渲染器上重建,你不用碰几何体就能获得实时阴影、基于物理的材质、更好的过滤和更高分辨率的特效。需要判断的是走多远:现代光照会让为烘焙光照制作的美术看起来不对劲,所以要贴合原作意图去提升保真度,而不是把整体观感整个换掉。

从 720p 和每秒 30 帧出发

多数 360 游戏以 1280 乘 720 为目标,常常再放大到 1080p,而且很多锁在每秒 30 帧。提高分辨率很直接。提高帧率不直接,因为 360 年代的代码经常按帧计时间。把动画长度、冷却时间、无敌帧、输入缓冲和物理步长都查一遍,换成按时间计的数值,使用固定物理时间步长,并让模拟与渲染解耦。然后在 60 帧、在高刷新率显示器上不限帧率,以及在弱硬件上以 30 帧分别测试。

成就、存档容器与平台服务

带成就点数的 Xbox 360 成就可以映射到 Steam 成就,它需要自己的定义和图标;如果你在不支持成就的渠道发行,那就什么也不映射。存档容器和存储设备选择模型,变成各操作系统按用户数据目录里的普通文件。平台登录、好友、在线状态,以及任何 Xbox Live 多人服务,都需要 PC 替代方案,其中多人是清单上最大的一项,应该在其他一切之前先把范围定下来。

补上键盘、鼠标与 PC 设置

手柄支持几乎是白送的,所以把精力投在键盘和鼠标上:默认键位、完整改键、带灵敏度和反转的鼠标视角,以及鼠标驱动的菜单。补上主机从不需要的设置,包括分辨率、窗口化与无边框与全屏、垂直同步、帧率上限、画质预设、音量滑条和界面缩放。重做那些按沙发距离电视尺度设计的界面,并处理带鱼屏比例,它会露出原本 16 比 9 取景挡在视野之外的场景边缘。

光盘流式读取与安装假设

360 游戏是围绕慢速光驱和一小块内存搭起来的,这催生了载入走廊、电梯段落、分块关卡和激进的资源卸载。在一台有固态硬盘和好几 GB 内存的 PC 上,这些约束都不存在了。把切分理由属于技术而非设计的块合并,把当年流式加载的内容改成预加载,并去掉玩家不再需要的等待。保留那些服务于节奏的段落,因为不是每条走廊都是载入的障眼法。

常见问题

我能把 Xbox 360 游戏移植到 PC 吗?

可以,前提是游戏归你或你持有授权。你在现代引擎里重建它并导出桌面构建。Summer Engine 能从对原作的一段描述生成可玩场景,让你用 C++、GDScript 或 C# 编辑,并导出 Windows、macOS 和 Linux 版本。

为什么 Xbox 360 移植比其他主机移植容易?

因为那一代硬件本来就接近 PC。360 的手柄布局正是现代 PC 手柄采用的、也是 PC 按键提示默认假定的那一套,而它的渲染路线是 DirectX 年代的,而不是一条定制的主机管线。剩下的工作是渲染器、帧率、平台服务和 PC 设置。

我能把 30 帧的 360 游戏提到 60 帧吗?

通常可以,但要先做一次排查。360 年代的代码常按帧计时间,所以动画长度、冷却时间、无敌帧、输入缓冲和物理步长都需要换成按时间计的数值,并配上固定物理时间步长。然后在 60 帧、不限帧率,以及慢硬件上的 30 帧分别测试。

Xbox 360 的成就和存档容器拿什么替代?

成就映射到 Steam 成就,需要自己的定义和图标;如果你在不支持成就的渠道发行,就不映射。存档容器和存储设备选择,变成各操作系统按用户数据目录里的普通文件。

该把载入走廊去掉吗?

那些为流式读取而存在的,该去掉。慢速光学介质和小内存预算催生了载入走廊、电梯段落和分块关卡,而固态硬盘让它们不再必要。保留那些服务于节奏或紧张感的段落,因为不是每条走廊都是技术上的变通。

继续探索

用 Summer Engine 创作的更多方式

AI 游戏制作器

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

打开

Port an Xbox 360 game off a store that has closed

Porting an Xbox 360 game means rebuilding a title you own. The controls transfer almost unchanged. The dead services are the real problem.

打开

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 Nintendo DS game to PC

Rebuild a DS game you own in Summer Engine and export desktop builds. The mouse solves the stylus. The window layout is the real design work.

打开

Port a Wii game to PC

Rebuild a Wii game you own in Summer Engine and export desktop builds. Television design meets monitor distance, and gestures meet buttons.

打开

Port a PSP game to PC

Rebuild a PSP game you own in Summer Engine and export desktop builds. Widescreen already fits. The camera and the options menu are the work.

打开

Port a PS Vita game to PC

Rebuild a Vita game you own in Summer Engine and export Windows, macOS, and Linux builds. This is the shortest work list in the cluster.

打开

Port a GameCube game to PC

Rebuild a GameCube game you own in Summer Engine and export desktop builds. A console control scheme has to learn keyboard and mouse.

打开

Port a Switch game to PC

Rebuild a Switch game you own in Summer Engine and export Windows, macOS, and Linux builds that scale across unknown hardware.

打开

平台游戏模板

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

浏览

浏览所有游戏模板

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

浏览

现在就开始制作你的游戏

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