快轉到主要內容

Android轉譯玩Windows exe遊戲的方法一覽

分類   智慧型手機 手機APP分享
標籤   Box86 Box64 Wine ExaGear Termux Steam Windows Android
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字
目錄

本文列出在Android手機轉譯玩Windows遊戲的解決方案。

是真正在手機上執行Windows遊戲喔,不是遠端桌面也不是串流遊戲,也不用刷機。

要在任意Android手機跑Windows程式,當然不是模擬整個Windows系統啦!那只有少數手機支援。

最流行的解法是使用Linux的Box64+Wine轉譯Windows遊戲。可以說是類似「Windows exe模擬器」的APP吧。

遊戲能玩的話,那麼跑一般的Windows exe也不是問題了。

1. 基本概念
#

在此在此介紹一些技術名詞,這樣後面討論會比較容易理解。如果你想知道更多請點選文中的連結了解。

Termux/Termux X11
#

Termux是一款Linux終端模擬器,能夠在Android系統模擬Linux環境,並以原生速度執行,不需要Root權限。

Termux X11是專為Termux設計的X伺服器,讓Termux可以把Linux的桌面環境輸出到該APP上,從而執行圖形界面。

proot/chroot
#

只要透過Termux建立Linux環境,再於裡面安裝Wine就可以了。至於Linux環境要如何建立呢?Termux本身的Linux環境並不標準,且缺乏許多套件,所以有人會採用容器的方式建立比較完整的Linux環境作法。這之中又分為proot與chroot兩種。

proot是在沒有root的環境用ptrace模擬Linux系統,速度比較慢。

chroot則是利用Android系統的功能,模擬Linux環境,程式是以原生速度執行的,速度最快,但是需要Root權限。

Wine
#

歷史悠久的轉譯程式,能將Windows的程式指令轉譯成Linux的指令。

Steam Deck也有使用Wine的技術,叫做Proton。

請注意不是所有Windows程式都保證可以用Wine跑,尤其在Android的轉譯環境更是需要多方測試。建議到 ProtonDB查詢Windows遊戲的相容性。並自己實際在Linux電腦跑過一次,再到Android環境執行。

Box64/Box86
#

負責轉譯x86指令成ARM指令的程式,Box86轉譯32位元程式,Box64轉譯64位元程式。

因為大部分Windows程式都是x86架構的,Wine亦如此,而Android手機是ARM架構為主,所以要在ARM環境執行x86程式,必須使用Box64轉譯x86版本的Wine。

過去很紅的「Exagear」做的事情跟Box64差不多,有了Exagear程式x86版本的Wine才能在ARM架構的Android裝置執行,但它是閉源軟體,我們不知道背後具體原理為何。

DXVK
#

將DirectX的繪圖指令轉譯成Vulkan,增進遊戲的圖形效能。

Github儲存庫: doitsujin/dxvk

VirGL/Turnip/Zink
#

這些都是達成3D硬體加速所需的驅動程式。

VirGL:模擬GPU進行硬體加速,屬於通用型方案,適用大部分Android手機。

Turnip:專為Qualcomm Adreno設計的圖形驅動,相較於VirGL圖形效能更好。

Zink:將OpenGL轉成Vulkan的實驗性驅動,可以搭配VirGL或Turnip使用。Zink也是專為Qualcomm設計的。

2. 推薦手機硬體
#

如果你打算用轉譯方式玩Windows遊戲,那麼建議:

  • RAM:8GB以上
  • 儲存空間:10GB以上
  • 處理器:高通Snapdragon 865以上

是的你沒有看錯,非旗艦處理器的Android手機轉譯Windows遊戲只是自討苦吃,尤其是3D大作。如果你的手機處理器是中低階的,那頂多玩玩2D為主的Galgame而已。

手機處理器以高通處理器為佳,比較容易透過Turnip達成3D硬體加速。

其他聯發科、獵戶座、Tensor、麒麟之類的處理器只能透過VirGL達成3D硬體加速,效能差勁。

3. Android轉譯Windows exe的解決方案
#

本文介紹的方案使用的技術都很像,差別在實作的方式不同。

目前有4個懶人解決方案,能夠幫你自動裝好Box64、Wine、DXVK。

Winlator
#

獨立APP,不依賴Termux。

使用Proot建立Linux環境。

界面設計類似Exagear,大部分選項都圖形化了,完全不用打指令。

內建模擬手把的觸控輸入。

Mobox
#

本身是一個指令稿,依賴Termux執行。只需要稍微打一下指令就能輕鬆啟動。

架構比較特殊,Mobox利用的是Termux本身的套件來跑Box64和Wine,而非建立proot環境。少了proot這一層模擬,效能便接近原生chroot的速度了。

開啟後會幫你安裝一些常用Windows套件。已知可以啟動Windows版Steam,並能下載遊戲(需看Steam Proton支援度)。

內建Input Bridge,可在螢幕上虛擬出遊戲模擬手把。

Box64Droid
#

本身是一個指令稿,依賴Termux執行,提供proot版與chroot版。

內建Input Bridge,可在螢幕上虛擬出遊戲模擬手把。

這個屬於比較早期的專案,Mobox使用上比較直覺,這個就放在這裡供參考。

Github儲存庫: Ilya114/Box64Droid

ExaGear
#

俄羅斯開發的閉源軟體。雖然本家倒了,但是現在網路上仍然有許多中國網友製作的修改版APK。

4. 推薦搭配的APP
#

  • Termux
  • Termux X11
  • Input Bridge:模擬遊戲手把。此為閉源軟體。
  • Hacker’s Keyboard
  • Scrcpy:將Android手機螢幕投影到大螢幕方便操作。

另外準備外接鍵盤、滑鼠、螢幕也是不錯的選擇。

相關文章

Winlator模擬器教學 ~ Android手機裝Windows exe玩遊戲
分類   智慧型手機 手機APP分享
標籤   Box86 Box64 Wine ExaGear
除了EhViewer外,你還有這幾款替代APP可以看E-hentai
分類   智慧型手機 手機APP分享
標籤   E-Hentai Android Linux IOS Windows MacOS
因Android手機沒有開源免費的剪片APP,所以我選擇跑Kdenlive
分類   智慧型手機 手機APP分享
標籤   Kdenlive Android Termux

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur或Postimages。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。