像掌機一樣展開摺疊機
我們將展開的螢幕分為上下兩部分,上方顯示遊戲,下方放置操作按鍵。任天堂 DS 的觸控畫面位於按鍵之間,展開時的按鍵位置另外儲存。
摺疊機展開後的比例與一般手機差別很大。此前 N-EMU 只根據視窗是橫長還是直長來選擇配置。兩種配置都不適合接近正方形的內螢幕,因此我們為展開狀態另外設計了配置。
配置參考了任天堂 DS:上方顯示遊戲,下方放置操作按鍵。無論轉軸方向如何,都將螢幕分為上下兩部分;半開時則按摺疊位置調整分界線。
下半部的按鍵遵循實機配置。L 和 R 位於摺痕正下方,方向鍵和按鍵位於中間高度,Select 和 Start 位於最底部。任天堂 DS 的上螢幕占滿上半部,下半部中央為 4:3 觸控畫面。橫向展開時下半部變矮,觸控畫面會按區域高度縮小,但不會小於兩個螢幕疊放在上半部時的尺寸。
展開時的按鍵位置與一般直向、橫向畫面分開儲存。我們在現有儲存格式中增加了展開配置欄位,讓舊版本仍能讀取直向和橫向配置。但舊版本無法讀取展開配置,在舊版本中重新儲存時可能遺失已儲存的按鍵配置。
摺疊位置和狀態來自作業系統:Android 使用 Jetpack WindowManager,採用 iOS 27.1 SDK 建置的 App 讀取 iOS 的摺疊資訊。iOS 無法提供這些資訊時,App 透過視窗尺寸類別判斷展開狀態。配置計算經過自動測試,畫面也在 iOS 模擬器和 Android 模擬器中檢查過。Android 使用了測試用摺疊資訊,實機驗證仍未完成。
摺疊或展開都不會中斷遊戲。正在按住的按鍵會被放開,因為螢幕切換的瞬間無法得知手指下方是什麼。
相關開發故事
- 開發故事v1.1.1封閉 Beta 測試
為何在書本式摺疊螢幕上放大任天堂 DS 畫面
像拿書一樣握持摺疊機時,舊配置中的任天堂 DS 觸控螢幕會變小。我們把兩個螢幕移到中央、按鍵移到兩側,擴大了可觸控區域。
- 開發故事v1.0.8封閉 Beta 測試
為什麼連接控制器後要擴大遊戲畫面
觸控按鍵隱藏後,遊戲畫面仍保持原來的大小。我們讓遊戲利用空出的空間,並讓 DS 雙螢幕配置配合目前的操作方式。
- 開發故事v0.2.0早期開發
把多個機種放進一個 App
連接多個模擬器核心,讓不同機種的遊戲也能在同一個遊戲庫選擇和管理存檔。