# 把任天堂 DS 游戏移植到 PC

> 在 Summer Engine 里重建一款你拥有的 DS 游戏并导出桌面构建。鼠标解决了触控笔的问题，窗口布局才是真正的设计工作。

- URL: https://www.summerengine.com/zh/port-ds-game-to-pc
- Keyword: 移植 ds 游戏到 pc
- Related: https://www.summerengine.com/zh/porting

把任天堂 DS 游戏移植到 PC，意思是在 Summer Engine 里重建一款你拥有的游戏，并导出 Windows、macOS 和 Linux 构建。你和发行之间没有商店审批，这让 PC 成为把 DS 重建版摆到玩家面前最快的地方。

DS 转 PC 有一份实打实的礼物：鼠标。DS 是围绕一个精确指针设计的，而鼠标就是一个带点击的精确指针。菜单操作、拖拽解谜、地图交互和瞄准，几乎不用重设计就能搬过来。

工作在别处。两块 256 乘 192 的屏幕必须装进一个可调大小的窗口，数字十字键的移动要面对模拟摇杆和键盘，而按 192 像素高制作的美术要填满一块可能高达 1440 像素甚至更高的显示器。

## 把两块小屏排进一个窗口

并排能很好利用宽屏空间，并让两块屏都可见，这点很重要，因为 DS 游戏经常在两块屏上同时跑实时内容。上下堆叠保留了原有关系，但浪费横向空间，也让一切都变小。当第二块屏主要是信息展示时，把触摸屏内容折进 HUD 的合并视图效果最干净。逐个界面决定，如果游戏支持不止一种排布，就把布局做成玩家选项。不要开第二个系统窗口，那会破坏全屏、切换窗口和直播推流。

## 鼠标、键盘与手柄三条路径

做三条输入路径，并让玩家自由切换。鼠标直接承接触控笔操作，在 DS 移植里它应该是主方案的手感。键盘负责移动和快捷键，并支持完整改键。手柄需要给每一项触摸交互设计一个替代方案，通常是玩家用摇杆移动的光标，或者一套在目标之间循环的选择模型。让屏幕上的按键提示随当前使用的设备切换，这是掌机游戏移植里最常见的抱怨点。

## 整数倍缩放与一次字体检查

使用 256 乘 192 的整数倍。4 倍是 1024 乘 768，5 倍是 1280 乘 960，6 倍是 1536 乘 1152。挑玩家显示器装得下的最大那个，剩下的区域用边框美术或侧边栏填满，而不是拉伸。非整数缩放会让 DS 像素美术发糊，而且一眼就能看出来。然后重做文字。DS 字体是为贴近脸部的屏幕设计的像素字，要在书桌距离读得清，就需要重绘一套更大的像素字，或者换成同样气质的矢量字体。

## DS 游戏从未有过的桌面惯例

补上 PC 玩家预期的东西：分辨率与窗口模式选择、垂直同步和帧率上限、音量滑条、按键重绑定、界面缩放选项，以及把存档写进各操作系统的按用户数据目录，而不是放在可执行文件旁边。支持切换窗口和调整窗口大小而不破坏布局。发行方面，itch.io 上传即发布，Steam 以每款 100 美元的费用带来更大触达和更多功能，从自己站点直销则能保住全部利润。

## FAQ

### 我能把任天堂 DS 游戏移植到 PC 吗？

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

### PC 上的 DS 移植用什么屏幕布局最好？

在宽屏显示器上用并排，因为 DS 游戏经常同时在两块屏上跑实时内容。当第二块屏只是信息展示时，把触摸内容放进 HUD 的合并视图也行得通。避免开第二个系统窗口，那会破坏全屏、窗口切换和直播推流。

### 256 乘 192 的美术该用什么缩放？

只用整数倍：4 倍是 1024 乘 768，5 倍是 1280 乘 960，6 倍是 1536 乘 1152。多出来的空间用边框美术或侧边栏填，而不是拉伸，因为非整数缩放会明显糊掉 DS 像素美术。

### 鼠标既然这么好用，还需要手柄支持吗？

需要。很多 PC 玩家默认用手柄，而 Steam Deck 玩家根本没有鼠标。给每项触摸交互一条手柄路径，通常是摇杆驱动的光标或目标循环选择模型，并让屏幕提示随当前设备切换。

### PC 版的存档应该放在哪里？

放在各系统的按用户应用数据位置：Windows 上的 AppData，macOS 上的 Application Support，Linux 上的 XDG 数据目录。存在可执行文件旁边，在游戏被装进受保护文件夹时会失败。

[开始你的 PC 移植](https://www.summerengine.com/zh/download)

---

## Machine-readable resources

- Site index for agents: https://www.summerengine.com/llms.txt
- Full inlined content: https://www.summerengine.com/llms-full.txt
- Porting catalog: https://www.summerengine.com/llms-porting.txt
- Structured catalog: https://www.summerengine.com/agent-catalog.json
- Sitemap: https://www.summerengine.com/sitemap.xml
- Developer resources: https://www.summerengine.com/docs
- Summer API (assets from any agent or code; public per-call model prices): https://docs.summerengine.com/api