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

作者: ivon852 (ASUS)   2023-01-14 03:28:31
一年前在板上文章「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`
作者: coldlian (荀文若)   2023-01-14 04:56:00
專業給推
作者: lince2357 (Redox_0508)   2023-01-14 07:54:00
好猛
作者: A4P8T6X9 (殘廢的名偵探)   2023-01-14 09:14:00
作者: lkj12tw   2023-01-14 09:14:00
作者: abc0922001 (中士abc)   2023-01-14 09:28:00
酷耶
作者: alicemoe (ragNarOk)   2023-01-14 11:37:00
作者: enderboy7652 (EnderBoy)   2023-01-14 12:22:00
作者: MoneMizuno   2023-01-14 16:11:00
作者: not5566 (非5566)   2023-01-14 20:04:00
很讚 期待他更成熟的時候到來
作者: Ptomaine (完了完了要變殭屍了)   2023-01-17 10:25:00
作者: goldie (阿良)   2023-01-17 18:02:00
專業推,好猛

Links booklink

Contact Us: admin [ a t ] ucptt.com