PC-s játékok Mac-en és Linuxon: Az Asahi Linux áttörése Apple Siliconon

Néhány évvel ezelőtt elképzelhetetlen lett volna, hogy PC-s játékok Mac-en, Linuxon vagy ARM processzorokon fussanak. Most azonban az Asahi Linux fejlesztői – akik a Linuxot Apple Silicon Mac-eken futtathatóvá teszik – mindhárom kihívást sikeresen megoldották.

PC-s játékok Mac-en és Linuxon: Az Asahi Linux áttörése Apple Siliconon

Több technológia alkalmazásával sikerült elérni az eredményeket

Alyssa Rosenzweig, az Asahi Linux GPU fejlesztési vezetőjének blogbejegyzése szerint ez az eredmény több nyílt forráskódú projekt együttes erőfeszítésének köszönhető. Ilyen projektek a FEX, amely az x86 CPU-kódot ARM-re fordítja; a Wine, amely lehetővé teszi a Windows-alkalmazások futtatását Linuxon; valamint a DXVK és a Proton, amelyek a DirectX 12 API hívásokat Vulkanra fordítják. Az Asahi Linux pedig létrehozta a Vulkan-kompatibilis grafikus meghajtót az Apple hardveréhez.

Virtuális gépen belül futtatható az eltérő memóriakezelés miatt

A játékokat egy virtuális gépen belül futtatják, mivel az Apple Silicon és az x86 rendszerek memória kezelése eltér: az Apple 16 KB-os, míg az x86 4 KB-os memórialapokat használ. Ezt a különbséget a virtuális gép áthidalja, amely lehetővé teszi a kompatibilitást.

Például a Fallout 4 Windows-verziója már Linuxot futtató Mac-en is játszható – ami korábban lehetetlen lett volna. Rosenzweig posztjában több népszerű játék, például a Control, Fallout 4, The Witcher 3, Ghostrunner, Cyberpunk 2077, Portal 2 és Hollow Knight képernyőképeit mutatja be. Bár a legtöbb játék még nem éri el a 60 képkocka/másodperces sebességet, Rosenzweig megjegyzi, hogy a teljesítmény idővel javulni fog.

Cyberpunk 2077 (kép forrása:Alyssa Rosenzweig blogja)

Az Asahi Vulkan és OpenGL meghajtói különösen figyelemre méltóak, mivel az Apple macOS grafikus meghajtói nem támogatják a legtöbb API-t. Az Apple OpenGL támogatása már 2013 óta a 4.1-es verziónál jár, azóta nem frissült, azóta inkább saját Metal API-jára támaszkodik.

Rosenzweig idén áprilisban adta ki az első Vulkan 1.3-kompatibilis verzióját az Asahi GPU-meghajtóból, „Honeykrisp” kódnéven, és azóta több kiterjesztéssel bővítette azt, amelyek a DXVK fordítóréteghez szükségesek. Néhány funkciót az M-sorozatú GPU-k nem támogatnak natívan, így ezeket emulálni kellett. Az Asahi meghajtó már támogatja az OpenCL 3.0-t is.

Az új meghajtók Alfa verziói bárki számára elérhetőek

Az új meghajtók és a játékok kompatibilitásához kapcsolódó csomagok jelenleg elérhetőek az Asahi Remix Fedora disztrók alfa verzióiban, a teljes kiadás pedig később várható. Az M1- és M2-sorozatú Mac-eken fut, de az M3 támogatása még nincs kész. Rosenzweig szerint a legtöbb játéknak 16 GB RAM-ra lesz szüksége az emulációs többletterhelés miatt. Mindezek ellenére hatalmas mérföldkő, hogy Windowsra írt PC-s játékok ARM Linux Mac-eken is futtathatók, és ez jól mutatja, milyen messzire jutott a Linux és az alkalmazások, illetve API-k fordításának technológiája.