您在這裡

[CEDEC 2026] 用 1-Bit 前進吧!製作 Playdate 的電車遊戲之路

1 篇文章 / 0 新
[CEDEC 2026] 用 1-Bit 前進吧!製作 Playdate 的電車遊戲之路

Playdate 是由美國奧勒岡州一家名為 Panic 的公司於 2022 年發售的掌上型遊戲機。CPU 為單核心,最高時脈 168MHz,擁有 16MB 的 RAM,4GB 的儲存空間,電池續航力為 8 小時,硬體限制跟 Nintendo DSi 非常接近。

此外,玩家也可以透過下載 Playdate SDK 來製作遊戲。但由於硬體的限制,在開發上可能會遇到不同於 Unity 或是 Unreal 引擎的開發瓶頸。思考如何突破這種框架限制,正是開發此類遊戲作品的迷人之處。

Hunter Bridges 是 Evening Star 的技術長,曾參與開發《SONIC MANIA》、《SONIC ORIGINS》與《佩妮的大逃脫》等遊戲。這次他在日本 CEDEC 2026 大會上,以「用 1-Bit 前進吧!製作 Playdate 的電車遊戲之路」為名所分享的內容,是他以個人身份製作的獨立遊戲《Zero Zero: Perfect Stop》的專案心得,這是一款專為 Playdate 開發的 3D 電車模擬遊戲。

對於作者來說,製作一款電車遊戲的種子早在很久以前就種下了,他非常喜歡搭電車時感受到的浪漫感,不論是車內的燈光、車輛運轉的聲音,或是窗外的風景,都讓他感覺非常享受。

而過去一些電車作品,像是 Arc System Works 的《電車運転指令!》系列、Sonic Powered 的《鐵道日本!》系列,以及在大型電玩機台上非常受歡迎的《電車でGO!!》系列作品,都成為了讓他未來想要製作一款電車遊戲的契機。

2020 年時,作者曾經趁著 Evening Star 專案間的空檔,用 Retro Engine 開發了類似《OutRun》風格的 3D 渲染道路,後來更進一步嘗試在這個 Demo 中加入電車的運作,只是遭遇到不少困難,沒有繼續發展下去。

後來 Panic 公布了 Playdate 的資訊,他很快就預購了。那個特殊的曲柄輸入裝置點燃了他的熱情,他聯想到可以利用這個曲柄當作是電車的主控制器,至此遊戲的概念也大致成型。

想要在 Playdate 上製作作品,主要有三種方法。最簡單的工具是基於網頁的圖形編輯器 Plup,可以快速製作內容,相對在功能上也有許多限制。第二個是使用 Lua,是一種容易學習的程式語言,可以存取 Playdate 的所有功能,只是在效能上會有一些犧牲。最後是使用 C 語言來開發,可以充分發揮 Playdate 的功能,同時也能適應硬體的限制,但它非常困難,所以不太推薦給初學者。

《Zero Zero: Perfect Stop》使用 C 語言來開發,在收到 Playdate 機器後的前兩個月,作者很快就作出了《OutRun》風格的軌道、速度表、電車的物理引擎、曲柄輸入功能、電車的抬頭顯示器介面,以及音效等基本的遊戲要素。初期的開發非常順利。

在加入軌道轉彎以及上下坡畫面表現之後,為了完善風景,遊戲中必須放入許多物件。而為了營造出物件移動的感覺,這些物件會需要能夠即時被正確的拉近或是放大。但 Playdate 的 CPU 並不擅長這類即時對 Sprite 縮放的操作。為此,作者先準備了各式尺寸的 Sprite 圖片。

此時出現了一道大難題,Playdate 的 RAM 只有 16MB,作者當時光製作兩個物件所佔的檔案大小就有 6MB 了,這樣一來頂多只能放進去 4、5 個物件。而且要製作這些透視投影的 Sprite 也很花時間,不太可能用現在的做法繼續開發。

作者嘗試將這題先擱置一旁,轉去處理遊戲內的關卡,也就是電車時刻表(Diagram)的設計。但要讓時刻表在遊戲內遵循速度資料同步運轉起來這件事,也比原本預期的要困難許多,到處都有問題發生。而且就算把時刻表搞定,背景問題依舊沒有一個頭緒。

在熱情逐漸消失的狀態下,從 2022 年底開始,專案陷入了一年多的停滯期。

時間來到 2024 年 4 月,此時《佩妮的大逃脫》已經完成,作者剛享受完一段假期,聽起來正處於一個很鬆弛的狀態,此時的他可以用全新的視角來審視之前遇到的問題。

《Zero Zero: Perfect Stop》畢竟只是個自己一個人的兼職專案,其實只要做得快、做得開心就好。3D 環境只要能在 Playdate 的限制內簡單裝飾即可,路線的設計也應該以簡單為主。

當時 Playdate 已經上市了一年多,在這段時間也出現了許多可以作為參考的遊戲作品。其中《Grand Tour Legends》這款作品,使用的 FMV(全動態影像)功能,帶給作者一些啟示。

Playdate 能夠從硬碟串流播放影片,只需要將目前看到的影格保存在 RAM 裡面即可。所以作者想到或許能夠以實際的軌道為基礎,在 Blender 中製作作為環境的 FMV,然後配合電車的距離來設定影片的位置。

他首先從頭製作了時刻表,把重點放在「容易完成」這件事情上,避免大量計算造成負擔。

接著他找到一款名為 Blender GIS 的 Blender 外掛,它使用 Web API 下載衛星影像,將地形資料直接對應到高度圖上,這樣就能生成一個與實際比例相符的環境網格。

透過這個工具,他擷取了現實中「富士山與富士急行線」周邊的衛星影像與地形資料,並沿著地圖描繪出了軌道。環境中的物件也都是在 Blender 內製作,這個製作方式確實大幅節省了 RAM 的消耗。

跨越過背景這道大難關之後,《Zero Zero: Perfect Stop》後續的開發越來越順利。在測試打磨階段,他也開始尋求各種合作。

他請到曾經參與《SONIC MANIA》的 Paul Veer 設計遊戲中的教學角色 Rei 以及標題畫面。

電車內的廣播他拜託了在新幹線以及日本其他鐵路線提供英文廣播語音的 Donna Burke 來錄製語音,日文版廣播則是請他的妻子來錄製。

遊戲的概念圖則是找到經常參與「わたしのファミカセ展」的さゆき小姐來繪製。

作者自己也製作了遊戲主選單的音樂,以及發車時的主旋律。

《Zero Zero: Perfect Stop》最後於 2024 年 8 月在 Playdate Catalog 上架。在 Playdate 社群年度大賞中獲得 4 項提名,並奪得「曲柄最佳使用獎」及「最佳模擬與策略遊戲獎」。

回顧這 2 年的創作,作者本身也有些反思,因為大量依賴影片串流,導致遊戲檔案高達 119MB。大多數的 Playdate 遊戲容量是低於 20MB 的,儲存空間的限制使得遊戲路線只能收錄短短的 6 個車站。若是有機會的話,他可能會想嘗試延長路線,或是加入日夜變化等等。

但更重要的是,像這樣專注於製作自己真正想做的東西,並將自己的全部傾注其中,是一件非常棒的體驗。在跨越過各種難關後催生出的作品,這些背後的情感連結,在 AI 工具逐漸發展的未來,也許會顯得更加珍貴。