[心得] Termux GPU加速第二式:virgl玩電腦遊戲

行動通訊

11110

一年前在板上文章「3D硬體加速的Proot Linux」分享過用印度人修改的Zink驅動,在
Termux的Linux容器達成GPU硬體加速,用於執行3D程式。

不過編譯實在麻煩,加上新版Clang導致編譯出來的Zink驅動半殘,因此不是很滿意該方
案。

而最近幾個月Reddit網友eNB256分享了新的Termux GPU硬體加速方法,
那就是使用virglrenderer算繪,實測效果跟Zink差不多。
雖然還是要編譯,不過簡化許多。


==============================

成效

有了vigl後,3D遊戲效能改善很多。例如SuperTuxKart賽車遊戲,FPS從5上升到20
https://i.imgur.com/Fphh1za.jpg


還有影片播放的增益。即使高通s865能播放4K60p影片,但Termux裡以CPU算繪的llvmpipe
最多只能到1080p60。
有了virgl,Termux要播放4K60p影片也不是問題了(影片1:08處)。雖說如此還是很吃資源
,畫面偶爾撕裂。
https://youtu.be/snBl1xZYhsA?t=68


最近開源Box86轉譯Wine的技術逐漸成熟,再由virgl提供GPU加速,Windows遊戲《Air》
就開的起來了!也有人用這個技術在手機玩《Nekopara》。
https://i.imgur.com/6MNYGFZ.png


連《Undertale》也可以,需要外接鍵盤滑鼠才好戰鬥。
https://i.imgur.com/ZPcBsv7.png


對於想用Termux Proot開發3D程式的人來說(應該沒有人那麼狂吧),這個GPU加速亦有好
處。只是Chromium認不到virgl,Firefox要強制啟用WebGL才有效果。
https://i.imgur.com/R6LW8c0.jpg


==============================

安裝方法

1. 安裝Termux
2. 安裝Termux X11
3. 安裝Proot發行版(Debian或Ubuntu)
4. 編譯virglrenderer
5. (可選)編譯Box86和安裝Wine

詳細步驟:https://reurl.cc/GX0RYx

啟動方法

1. 於Termux啟動virgl伺服器
2. 啟動Termux X11
3. 登入Proot發行版
4. 啟動桌面環境
5. 以終端機執行應用程式前,加上`GALLIUM_DRIVER=virpipe MESA_GL_VERSION_OVERRIDE=4.0`二個參數啟用virgl。

例如`GALLIUM_DRIVER=virpipe MESA_GL_VERSION_OVERRIDE=4.0 minetest`

--
《當你試圖安裝不自由/不開源的軟體》
https://i.imgur.com/s1lVszB.jpg


--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.236.187.29 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/MobileComm/M.1673638119.A.222.html
coldlian1樓專業給推 01/14 04:56
lince23572樓好猛 01/14 07:54
A4P8T6X93樓 01/14 09:14
lkj12tw4樓 01/14 09:14
abc09220015樓酷耶 01/14 09:28
alicemoe6樓 01/14 11:37
enderboy76527樓 01/14 12:22
MoneMizuno8樓 01/14 16:11
not55669樓很讚 期待他更成熟的時候到來 01/14 20:04
Ptomaine10樓 01/17 10:25
goldie11樓專業推,好猛 01/17 18:02
更多心得
[心得] 台星 299 類吃到飽
[心得] 台哥4g不限速 吃到飽24個月549元
[心得] 中華電信499提前續約成功
[心得] POWER-Z KM002C Lite USB電壓電流表測試
[心得] 中華299/11g請注意
[心得] 中華電信5G 1399雙NP 試算後還可以
[心得] Android無障礙有極大的進步
[心得] 紅魔8pro+開箱