PTT評價

[閒聊] 關於手遊跑模擬器的硬體選擇

看板PC_Shopping標題[閒聊] 關於手遊跑模擬器的硬體選擇作者
ferr0204
(Ferr)
時間推噓 推:0 噓:0 →:0

來聊一下用模擬器玩手遊在硬體上的選擇,用一句話來總結的話:

"CPU核心多+RAM大"

對,就這一句而已...
很多時候手遊跑模擬器不順,確認過CPU跟RAM都沒滿載的話,先考慮換個模擬器試試。

下面稍微來聊一下模擬器的運作方式,
市面上常見的模擬器基本都是基於以下三個技術進行魔改:

VirtualBox:虛擬化軟體,負責建立 VM 環境。

Android-x86:讓Android系統能在x86架構的電腦上運行。

libhoudini:轉譯層,把ARM指令轉成x86格式執行,大多數手遊是為ARM環境設計的。

簡單來說,模擬器會用VirtualBox建立VM虛擬機,用Android-x86運行Android系統,
然後用libhoudini把遊戲的ARM指令轉成x86指令來執行。

在這多提一嘴libhoudini,因為Google的Android Studio提供的libndk效能不佳,
各家模擬器廠商乾脆借用Windows11裡的WSA來用,這項轉譯技術是由Intel所開發,
當年I社為了進軍手機市場的產物,只不過WSA預計明年會結束支援...

因此多開的需求跟VM虛擬機類似,而模擬器還加上了ARM指令轉譯這層負擔,
所以效能自然會受到影響。

個人經驗在單開情況下,同世代電腦低階配置跑起來跟高階配置的差距不會太大。

而且這種運行方式的相容性問題也不少,像遊戲閃退、渲染錯誤...之類
這也是為什麼模擬器廠商必須魔改上面的這些技術,才能確保手遊能正確執行,還能保持效率。

這裡提個有趣的例子:
https://github.com/waydroid/waydroid/issues/788
這是一個去年五月在Linux模擬器不能執行蔚藍檔案的問題,
直到今年六月才有大佬依據MuMu魔改的libhoudini逆向推導,才發現是轉譯層的記憶體寫入問題導致無法啟動遊戲。
(不知道是Nexon的工程師是為了防作弊還是菜,連用libndk都會出問題...)

這也是為什麼模擬器玩手遊出問題時,通常建議先到該遊戲的討論區問問大家用什麼
模擬器、怎麼設置比找硬體問題有效。

當然硬體上(?)的問題也是有可能的,最後來講兩個例子
https://bbs.nga.cn/read.php?tid=39971179&rand=373 (NGA討論串)
MuMu某幾版用AMD CPU開啟PBO在玩明日方舟時會產生類似加速器的效果,導致帳號被封

https://www.reddit.com/r/nvidia/comments/1g9i6ot/game_ready_driver_56603_
faqdiscussion/
Nvdia最新驅動566.03會讓Bluestacks在運行時CPU占用大幅增加

--

※ PTT 留言評論
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.164.248.37 (臺灣)
PTT 網址