Game Porting Toolkit 4: agentowe portowanie gier na Maca
„Dziś używam Claude Code do wszystkiego”. David Srour, inżynier z Metal Ecosystem Team w Apple, wypowiedział to zdanie na scenie WWDC 2026, a potem przez resztę sesji 357 portował Microsoftowy MiniEngine z D3D12 na Windowsie do Metal 4 na macOS, pozostawiając pracę po stronie platformy agentowi.1 Nośnikiem jest Game Porting Toolkit 4, który dostarcza agentowe skille jako plugin instalowany z marketplace’u Game Porting Toolkit na GitHubie: skille eksperckie niosące wiedzę o platformie, skille workflow narzucające proces oparty na kamieniach milowych oraz agent — asystent portowania, który orkiestruje jedno i drugie.1 Apple zbudowało też prymityw, który w ogóle umożliwił to demo. macOS 27 dodaje gpucapture i gpudebug — narzędzia wiersza poleceń pozwalające agentowi przechwycić klatkę GPU i ją przeanalizować bez człowieka sterującego Xcode.1
Apple opublikowało własny pakiet skilli dla agenta kodującego, wymierzony w obszar, którego agenty wcześniej nie potrafiły dotknąć samodzielnie: uruchomienie renderera, debugowanie błędnych pikseli i strojenie upscalera. Sesja 356 stanowi część towarzyszącą — Paweł Sasko z CD PROJEKT RED przeprowadza przez to, jak studio przeniosło Cyberpunk 2077: Ultimate Edition na Maca ręcznie. Port Cyberpunka powstał przed agentowymi skillami; nikt w CDPR nie uruchamiał asystenta portowania. Apple celowo łączy obie sesje, zamykając prelekcję o Cyberpunku skierowaniem deweloperów do tej agentowej.2 Czytane razem stawiają jedną tezę: ręczny podręcznik działa w skali AAA, a Game Porting Toolkit 4 wręcza ten podręcznik agentowi.
TL;DR
- Game Porting Toolkit 4 dodaje agentowe skille do portowania gier: skille eksperckie (wiedza dziedzinowa), skille workflow (proces oparty na kamieniach milowych) oraz agent — asystent portowania, który nimi orkiestruje, dystrybuowany jako plugin z marketplace’u Game Porting Toolkit na GitHubie.1
- Workflow przebiega przez etapy discover (skan bazy kodu, przechwyty referencyjne ze środowiska ewaluacyjnego, pytania o preferencje), plan, execute i validate; każdy kamień milowy automatycznie ładuje swoje skille eksperckie „bez polegania na tym, czy model zdecyduje się ich użyć, czy nie”, a agent „zapisuje to, czego się uczy, na przestrzeni kamieni milowych”.1
- macOS 27 dostarcza
gpucaptureigpudebug— narzędzia CLI, które „wspierają w pełni autonomiczne workflow agentów”, a do tego rozszerzenia Metal HUD dla MetalFX: odczyt ekspozycji, wykres rozrzutu jittera oznaczający na czerwono wartości poza zakresem oraz nadpisania na żywo.1 - Apple zademonstrowało skille, portując Microsoftowy MiniEngine z D3D12 do Metal 4, a następnie skierowało asystenta na Godota, który zyskał backend Metal 4 „działający w ciągu kilku dni”.1
- Cyberpunk 2077 dowodzi, że leżący u podstaw pipeline sprawdza się w skali AAA — drogą ręczną: profilowanie wychodzące od środowiska ewaluacyjnego, automatyczny preset „For this Mac”, samokalibrujący się HDR przez EDR oraz dźwięk przestrzenny ze śledzeniem ruchu głowy, a gra zdobyła tytuł Mac Game of the Year w App Store Awards 2025 Apple.2
Asystent portowania i jego skille (sesja 357)
David Srour nadaje swojemu agentowi nazwę i instaluje plugin z marketplace’u Game Porting Toolkit, od 3:26.
Typowy port oznacza oszacowanie zakresu prac, doprowadzenie do działającego builda, konwersję shaderów, uruchomienie renderera, przemapowanie wejść, dopracowanie pod natywne wrażenia i optymalizację wydajności.1 Game Porting Toolkit 4 atakuje tę listę dwoma rodzajami skilli. Skille eksperckie dostarczają wskazówek technicznych: wiedzy o platformie, dobrych praktyk i ostrzeżeń o typowych antywzorcach portowania. Skille workflow dostarczają ustrukturyzowanego podejścia. Agent — asystent portowania spina je razem, a Apple wprost mówi, dlaczego orkiestracja ma znaczenie: „Podczas wykonania wszystkie zaplanowane kamienie milowe automatycznie ładują niezbędne skille eksperckie, bez polegania na tym, czy model zdecyduje się ich użyć, czy nie”.1 Wybór skilli przestaje być rzutem kostką modelu, a staje się częścią definicji procesu.
Dystrybucja odbywa się przez własny system pluginów agenta. „Skille i asystent dostarczane są jako plugin z marketplace’u Game Porting Toolkit na GitHubie. Najpierw dodaje się marketplace. A następnie instaluje plugin”.1 Repozytorium stojące za tym marketplace’em to apple/game-porting-toolkit, opisane jako „Resources for porting games and engines to Apple platforms”; jego README dokumentuje ten sam podział — skille eksperckie obejmujące Metal 4, MetalFX, kompilację shaderów, frameworki platformowe i narzędzia do debugowania oraz skille workflow, które prowadzą proces portowania oparty na kamieniach milowych i utrzymują stan między sesjami.3 W Claude Code rejestracja marketplace’u to jedno polecenie: /plugin marketplace add apple/game-porting-toolkit.3
Workflow asystenta składa się z trzech etapów. Etap discover przygląda się bazie kodu, pobiera przechwyty referencyjne ze środowiska ewaluacyjnego (tego samego środowiska tłumaczonego builda z Windowsa, którego użyło CDPR — więcej o tym poniżej) i zadaje pytania o preferencje. Następnie razem z asystentem planuje się cele kamieni milowych, „ponieważ portowanie całego tytułu jest zwykle zbyt duże na jedną sesję”.1 Dla każdego kamienia milowego agent wykonuje zmiany pod kierunkiem użytkownika, a potem etap validate uruchamia wielopunktową listę kontrolną: aplikacja poprawnie się uruchamia, walidacja Metala przechodzi na użyciu API i shaderach, przechwyty ekranu potwierdzają poprawność wizualną względem referencji ground truth, agent przegląda kod pod kątem znanych antywzorców ze skilli, których użył, oraz sprawdza problemy z pamięcią.1 Agent „zapisuje też to, czego się uczy, na przestrzeni kamieni milowych, tak aby nic nie ginęło między sesjami”.1
Demo MiniEngine pokazuje, co tak naprawdę dają skille eksperckie. Dla pierwszego kamienia milowego — okna o poprawnym frame pacingu — razem ładują się cztery skille: tworzenie i cykl życia okna, mapowanie koncepcji swap-chain, prezentacja drawable’i oraz czasy życia obiektów metal-cpp.1 Dla renderowania sceny skill resources uczy modelu rezydencji Metal 4: zasoby trzeba zarejestrować w residency set wcześnie, ponieważ bez tej wiedzy agent tworzy kod, który się kompiluje, mimo że GPU nie może odczytać tekstury.1 Skille shader pipeline i converter sprawiają, że agent odpytuje o offsety argument bufferów runtime Metal shader convertera zamiast kopiować arytmetykę indeks × rozmiar z MiniEngine, która psuje się, gdy converter układa bufory inaczej: „Żadnego błędu, po prostu niepoprawne renderowanie”.1 Skill synchronization mapuje model barier z D3D12 na model producent-konsument w Metal 4, zamiast pozwalać agentowi cofnąć się do całościowych barier na granicach enkoderów, które działają w prostych przypadkach i po cichu psują się wraz z rozrostem pipeline’u.1 We wszystkich trzech wyłania się wzorzec: trybem awarii, któremu skille zapobiegają, rzadko bywa crash. To błędne piksele bez żadnego komunikatu o błędzie.
Skille sięgają poza pierwszą grywalność. Skill game controller obejmuje wykrywanie przez GCController i uczy agenta, by odpytywał, co podłączone urządzenie faktycznie obsługuje, zamiast zakładać sztywny układ XInputa.1 Dwa skille MetalFX obsługują upscaling i interpolację klatek: skill upscaling konfiguruje jitter w przestrzeni pikseli (wartości znormalizowane skutecznie wyłączyłyby akumulację temporalną), ustawia motion vectory z właściwą skalą i konwencjami oraz dostarcza konfigurację MIP bias i reprojekcji historii; skill frame interpolation ustanawia dedykowany wątek prezentacji, by klatki interpolowane i renderowane pozostawały równomiernie rozłożone.1
Srour zakończył drugą bazą kodu: „Skierowałem asystenta portowania na Godota — silnik produkcyjny z istniejącym backendem Metal 3 — i poprosiłem go o dodanie Metal 4 obok niego”.1 Ten sam workflow, te same skille, walidacja względem ground truth. „To wciąż wspólny wysiłek, ale skille znacząco przyspieszyły sprawę. Działało w ciągu kilku dni”.1 Jego podział pracy na całą sesję to fragment, który warto przytoczyć każdemu sceptycznemu wobec agentowego portowania: „Pozwoliłem skillom wykonać ciężką robotę, a sam skupiłem się na innych rzeczach: podejmowaniu decyzji architektonicznych, przeglądaniu wyników agenta i dostarczaniu istotnego kontekstu o grze”.1
gpucapture i gpudebug: prymityw autonomicznego debugowania
Przełomowy moment sesji 357 nadchodzi w połowie portu MiniEngine, gdy pierwszy obraz pojawia się z błędnym oświetleniem i wyraźnie rozciągniętymi teksturami ścian. Srour nazywa lukę wprost: „Normalnie przechwyciłbym klatkę w Xcode i zdiagnozował problem. Ale do tej pory agent nie potrafił tego zrobić samodzielnie”.1 Debugowanie GPU było twardą ścianą dla autonomicznej pracy graficznej; wszystko przechodziło przez interfejs graficzny.
macOS 27 burzy tę ścianę: „macOS 27 wprowadza nowe narzędzia wiersza poleceń, które wspierają w pełni autonomiczne workflow agentów: gpucapture do przechwytywania klatki GPU oraz gpudebug do jej analizy”.1 W demie Srour opisuje objawy wizualne, agent ładuje skill debugging-rendering-issues z ustrukturyzowaną metodologią prowadzącą od objawów do przyczyny źródłowej, przechwytuje trace za pomocą gpucapture podczas działania aplikacji, a następnie używa gpudebug, by sprawdzić „wszystko, co normalnie sprawdziłbyś w Xcode: powiązania zasobów, stałe, zawartość zasobów i przepływ danych przez pipeline”, śledząc, gdzie wynik odbiega od środowiska ewaluacyjnego, aż znajdzie i naprawi problem.1 Te same narzędzia zasilają potem walidację: agent porównuje wywołania dispatch, pipeline’y i wymiary dispatch z oryginalnym trace’em — porównanie obok siebie, które Srour nazywa żmudnym do ręcznego wykonania przy każdym kamieniu milowym.1 Strona produktowa Apple stawia to wprost: dzięki dostępowi z wiersza poleceń do narzędzi Metala agenty mogą teraz przechwytywać, debugować i profilować obciążenia Metala bezpośrednio.3
macOS 27 rozszerza też Metal HUD na potrzeby pracy z integracją MetalFX. HUD wyświetla teraz parametr ekspozycji upscalera, by można było potwierdzić, że dociera do API, pokazuje informacje o sekwencji jittera z jitterami poza zakresem oznaczonymi na czerwono na wykresie rozrzutu oraz oferuje nadpisania na żywo dla mnożników jittera i skal motion vectorów, które wchodzą w życie w trakcie działania aplikacji.1 Diagnoza z dema to schludny przykład tej techniki: drgające artefakty podczas ruchu kamery, HUD pokazuje odwróconą skalę X motion vectora, odwrócenie jej w panelu nadpisań usuwa drganie, a „jeśli nadpisania HUD naprawiają wynik, to mówi ci, gdzie jest błąd”.1 Następnie śledzi się poprawkę z powrotem do logiki źródłowej.
Cyberpunk 2077: ręczny podręcznik w skali AAA (sesja 356)
Paweł Sasko prezentuje preset „For this Mac” na MacBooku Pro z M5 Max, od 15:26.
Sesja 356 łączy Garretta Austina, inżyniera z zespołu Game Performance w Apple, z Pawłem Sasko, Associate Game Directorem w CD PROJEKT RED.2 Dla precyzji co do chronologii: Cyberpunk 2077: Ultimate Edition ukazał się na Macu i zdobył tytuł Mac Game of the Year w App Store Awards 2025 Apple, zanim powstały agentowe skille z Game Porting Toolkit 4.2 CDPR wykonało każdy krok z sesji ręcznie. Powodem, dla którego ta sesja należy do artykułu o agentowym portowaniu, jest to, że pipeline, przez który CDPR przeszło ręcznie, jest tym samym, który teraz orkiestruje asystent portowania: środowisko ewaluacyjne, Metal shader converter, MetalFX, walidacja przez ground truth. A Apple samo łączy oba, zamykając sesję o Cyberpunku skierowaniem widzów do „Zrób speedrun portowania swojej gry dzięki agentowemu kodowaniu”.2
Pierwszy ruch CDPR wyznaczył wzorzec. „Zanim zaczęliśmy budować natywną ścieżkę dla Cyberpunk 2077 na Macu, użyliśmy Game Porting Toolkit od Apple, by ocenić build z Windowsa w tłumaczonym środowisku na macOS. Pozwoliło nam to zyskać cenny wgląd przed napisaniem choćby linijki kodu”.2 Studio uruchomiło z góry ustalony zestaw sekwencji hotspotów w środowisku ewaluacyjnym i odczytywało każde uruchomienie z trzech perspektyw: statystycznych danych o czasie klatki z wbudowanego profilera silnika, korelacji Metal HUD między zdarzeniami sceny a trace’em oraz wewnętrznego profilowania silnika z podziałem na wątki.2 Sygnały były jasne już wcześnie. Czas GPU wyglądał zdrowo na wydajnym sprzęcie, podczas gdy gęsta jazda po mieście ujawniała obciążenie CPU jako prawdziwy hotspot. Środowisko zasygnalizowało nawet własne artefakty: oscylację czasu klatki wynikającą z tłumaczenia shaderów na żywo oraz pozornie ciężki middleware audio — oba ustąpiły w natywnych binariach; Game Porting Toolkit je zidentyfikował, więc CDPR wiedziało, że trzeba je zbadać wcześnie.2 Przełóżmy to na etap discover z sesji 357, gdzie asystent pobiera przechwyty referencyjne z tego samego środowiska ewaluacyjnego, zanim zaplanuje choć jeden kamień milowy — dziedziczenie jest bezpośrednie.
To w dopracowaniu przed wydaniem wersja na Maca się wyróżnia, począwszy od pierwszego uruchomienia. „For this Mac” to system presetów graficznych oparty na urządzeniu: wykrywa sprzęt w Twoim Macu i automatycznie konfiguruje ustawienia pod to urządzenie.2 CDPR dobrało ustawienia per urządzenie utrzymujące wierność obrazu, ustawiło docelowe liczby klatek 30 lub 60 FPS, uruchomiło MetalFX z Dynamic Resolution Scaling między dostrojonymi granicami rozdzielczości minimalnej i maksymalnej, ustawiło VSync dla frame pacingu i włączyło HDR w zależności od możliwości wyświetlacza, a następnie dostroiło każde pozostałe ustawienie per urządzenie w pętli mierz-dopracuj-zwaliduj.2 Sasko zademonstrował wynik na MacBooku Pro z układem M5 Max: preset Ultra jako baza, blokada 60 FPS z VSync, Dynamic Resolution Scaling renderujący między 50 a 80 procent wyjścia 2336x1460, utrzymując 60 FPS w Black Market w Dogtown — jednej z najcięższych lokacji w grze — na ustawieniach fabrycznych.2 Pomysł się rozprzestrzenia: „inni deweloperzy również zaczynają przyjmować ustawienia »For this Mac« w swoich grach”.2
HDR wydawany jest bez ekranu kalibracji. CDPR zaimplementowało HDR przez pipeline Extended Dynamic Range od Apple, odpytując maximumExtendedDynamicRangeColorComponentValue o bieżącą maksymalną wartość EDR wyświetlacza i podając ją wprost do tone mappera; wartość zmienia się wraz ze sprzętem wyświetlacza i warunkami, więc tone mapper zawsze podąża za tym, co panel faktycznie potrafi.2 HDR włącza się domyślnie, gdy wyświetlacz ma na to zapas: gra sprawdza maximumPotentialExtendedDynamicRangeColorComponentValue i włącza HDR, gdy maksymalna potencjalna wartość EDR wyświetlacza przekracza 2.0.2
Dźwięk dostaje to samo traktowanie domyślnie włączone. Middleware Cyberpunka implementuje API dźwięku przestrzennego Apple przez AVAudioEngine, a CDPR włączyło śledzenie ruchu głowy dla AirPodsów, ustawiając właściwość listenerHeadTrackingEnabled obiektu AVAudioEnvironmentNode na true — domyślnie włączone, bez dodatkowej konfiguracji.2 Game Mode pomaga temu samemu sprzętowi: daje grom dostęp do CPU i GPU o wyższym priorytecie oraz podwaja częstotliwość próbkowania Bluetooth, tnąc opóźnienie bezprzewodowych kontrolerów i dźwięku AirPodsów, a macOS włącza go automatycznie dla aplikacji sklasyfikowanych jako gry.2
Liczby wynikowe zamykają sprawę na korzyść platformy. Cyberpunk 2077 sprzedał się w 35 milionach egzemplarzy na wszystkich platformach, plus dodatkowe 10 milionów egzemplarzy Phantom Liberty, a Cyberpunk 2077: Ultimate Edition zdobył tytuł Mac Game of the Year w App Store Awards 2025 Apple.2 Podsumowanie Sasko to zdanie, które studia zapamiętają: „liczy się nie to, ile pracy w coś włożysz, ale jaki jest wynik dla naszych graczy”.2
Jak zacząć
Obie sesje składają się w sekwencję:
- Najpierw uruchom swój build z Windowsa w środowisku ewaluacyjnym. Kod nie jest potrzebny, a środowisko obsługuje teraz Metal 4 do testów zgodności i wydajności.3 Idź za odczytem CDPR: sekwencje hotspotów, statystyki czasu klatki, korelacja Metal HUD oraz profilowanie CPU per wątek, a artefakty warstwy tłumaczącej traktuj jako oznaczone tropy, nie wyroki.2
- Zainstaluj skille. Dodaj marketplace Game Porting Toolkit i zainstaluj plugin; w Claude Code rejestracja marketplace’u to
/plugin marketplace add apple/game-porting-toolkit.13 Jeśli nie wiesz, co dalej, zapytaj asystenta portowania; jego pierwszym krokiem jest discovery.1 - Zaplanuj kamienie milowe z asystentem i pozwól, by walidacja przepuszczała każdy z nich. Uruchomienie aplikacji, walidacja Metala, porównanie przechwytów względem ground truth, przegląd antywzorców i kontrole pamięci wykonują się per kamień milowy, a agent przenosi to, czego się nauczył, do następnej sesji.1
- Przejdź na macOS 27 dla pętli debugowania.
gpucaptureigpudebugdają agentowi autonomiczne przechwytywanie i analizę klatek, a rozszerzenia MetalFX w Metal HUD (odczyt ekspozycji, wykres rozrzutu jittera, nadpisania na żywo) lokalizują błędy upscalera w trakcie działania gry.1 - Podkradnij listę kontrolną wydania z Cyberpunka. Automatyczny preset w stylu „For this Mac” na pierwsze uruchomienie, samokalibrujący się HDR sterowany przez EDR, domyślnie włączony powyżej 2.0 potencjalnego zapasu, oraz dźwięk przestrzenny ze śledzeniem ruchu głowy przez
listenerHeadTrackingEnabled.2
FAQ
Co dokładnie Game Porting Toolkit 4 dodaje dla agentów?
Trzy rzeczy: skille eksperckie, które dają agentowi kodującemu wiedzę o platformie, dobre praktyki i ostrzeżenia o antywzorcach w obrębie Metal 4, MetalFX, kompilacji shaderów, frameworków platformowych i debugowania; skille workflow, które narzucają proces oparty na kamieniach milowych z utrwalanym stanem; oraz agent — asystent portowania, który orkiestruje metodologię, automatycznie ładując właściwe skille eksperckie per kamień milowy zamiast zostawiać wybór modelowi.13
Na jakim agencie kodującym działa asystent portowania?
Demo z sesji Apple działa w całości na Claude Code; Srour stwierdza, że „dziś używa Claude Code do wszystkiego”.1 Skille instalują się jako plugin z marketplace’u Game Porting Toolkit na GitHubie, a repozytorium porządkuje dokumentację instalacji per agent kodujący, z poleceniem marketplace’u dla Claude Code udokumentowanym wprost.3
Czym są gpucapture i gpudebug?
Nowe narzędzia wiersza poleceń w macOS 27. gpucapture przechwytuje klatkę GPU z działającej aplikacji; gpudebug analizuje przechwyt, odsłaniając powiązania zasobów, stałe, zawartość zasobów i przepływ danych pipeline’u, które wcześniej wymagały interfejsu graficznego Xcode. Apple zbudowało je tak, by workflow agentów mogły być „w pełni autonomiczne”: agent może teraz przejść od objawu wizualnego do przyczyny źródłowej i zwalidowanej poprawki bez człowieka przechwytującego klatki.1
Czy CD PROJEKT RED użyło agentowych skilli do portu Cyberpunk 2077?
Nie. Port Cyberpunk 2077 na Maca był wysiłkiem ręcznym, który ukazał się i zdobył tytuł Mac Game of the Year w App Store Awards 2025 Apple, zanim powstały agentowe skille z Game Porting Toolkit 4.2 Związek biegnie w drugą stronę: pipeline CDPR (najpierw środowisko ewaluacyjne, Metal shader converter, MetalFX z Dynamic Resolution Scaling, walidacja wizualna przez ground truth) to ten sam podręcznik, który asystent portowania wykonuje teraz z agentem.12
Jak działa preset „For this Mac”?
Wykrywa sprzęt w Macu gracza i automatycznie konfiguruje ustawienia grafiki i wideo pod to urządzenie: cel 30 lub 60 FPS, MetalFX z Dynamic Resolution Scaling wewnątrz dostrojonych granic rozdzielczości, VSync, rozdzielczość wyjściowa oraz HDR w zależności od możliwości wyświetlacza, przy czym każde pozostałe ustawienie jest dostrojone ręcznie per urządzenie. Na MacBooku Pro z M5 Max preset przyjmuje Ultra jako bazę i utrzymuje blokadę 60 FPS, renderując od 50 do 80 procent z 2336x1460.2
Uruchamianie agentowej AI na Macu z MLX obejmuje stronę lokalnej inferencji pracy agentowej na Macu, a Xcode 27 stał się agentowy obejmuje stronę IDE; Game Porting Toolkit 4 to trzecia noga, specyficzna dla portowania gier. Niezbędnik Metal 4 rozkłada na części API, w które celują skille. Pełnym hubem serii jest Seria Apple Ecosystem.
Bibliografia
-
Apple, WWDC 2026 session 357, Speedrun your game port with agentic coding. Source for Game Porting Toolkit 4’s expert skills, workflow skills, and porting assistant agent; plugin distribution from the Game Porting Toolkit marketplace on GitHub; the discover, plan, execute, validate workflow with auto-loaded skills, ground-truth captures, and cross-milestone memory; the
gpucaptureandgpudebugCLI tools in macOS 27; the Metal HUD MetalFX extensions (exposure display, jitter scatter plot with out-of-range red, live overrides); the MiniEngine D3D12-to-Metal 4 port; the Godot Metal 4 backend running in a few days; and the David Srour quotes, including “I am using Claude Code for everything today.” ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, WWDC 2026 session 356, Bringing Cyberpunk 2077 to Mac. Source for the evaluation-environment-first approach and its three profiling angles; the “For this Mac” device-based preset (30/60 FPS targets, MetalFX with Dynamic Resolution Scaling, VSync, HDR by display capability); the M5 Max demo (Ultra base, 60 FPS lock, 50-80 percent of 2336x1460); auto-calibrated HDR via
maximumExtendedDynamicRangeColorComponentValueand the default-on check againstmaximumPotentialExtendedDynamicRangeColorComponentValueexceeding 2.0; head-tracked spatial audio viaAVAudioEnvironmentNode.listenerHeadTrackingEnabled; Game Mode’s doubled Bluetooth sampling rate; the 35 million copies, 10 million Phantom Liberty, and Mac Game of the Year facts; speaker attribution for Garrett Austin (Apple Game Performance) and Paweł Sasko (CD PROJEKT RED); and the closing cross-reference to session 357. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, game-porting-toolkit repository (“Resources for porting games and engines to Apple platforms”) and the Game Porting Toolkit product page. Source for the repository’s expert-skill coverage (Metal 4, MetalFX, shader compilation, platform frameworks, debugging tools) and workflow-skill state persistence, the Claude Code marketplace command
/plugin marketplace add apple/game-porting-toolkit, per-agent install documentation, command-line access for Metal tools letting agents capture, debug, and profile Metal workloads, and the evaluation environment’s Metal 4 support. Verified 2026-06-09. ↩↩↩↩↩↩↩

