Od zapowiedzi Steam Deck minęło kilka dni, ale nowa konsolka Valve zdąrzyła już spolaryzować opinie graczy od "To będzie Nintendo Switch killer!" po "Valve nie umie robić sprzętu, skończy się jak Steam Machines." albo "To nie ma grupy docelowej."
Tutaj chciałbym dokonać chłodniejszej analizy tego czym jest Valve Steam Deck, czyją jest konkurencją i jak przedstawia się na tle konkurencji oraz jak zmieniła się sytuacja sprzętu firmowanego przez Valve w ciągu ostatnich lat. Niezależnie od ostatecznego sukcesu, uważam że Steam Deck jest urządzeniem w pewnym stopniu przełomowym i mogącym znacznie rozszerzyć istniejącą już niszę przenośnych PC.
Dwuminutowa prezentacja:
Główne cechy Steam Deck
- Steam Deck to całkowicie normalny PC z procesorem x86-64, na którym można zainstalować dowolne aplikacje i systemy operacyjne znane z stacjonarnych PC. Nie ma też przeciwwskazań do podłączenia dowolnych urządzeń peryferyjnych.
- Cechą szczególną Steam Deck jest forma, to handheld (przenośna konsolka) o bardzo dobrym stosunku osiągów do ceny, która w chwili pisania tych słów wynosi od 1900 zł za wersję z 64 GB eMMC, przez 2500 zł za 256 GB SSD, po 3100 zł za 512 GB.
- Urządzenia wejściowe przypominają te z innych handheldów, ale są bardziej rozbudowane: oprócz typowych przycisków, d-pada, gałek analogowych, spustów czy ekranu dotykowego dostępne są też dwa gładziki z odpowiedzą haptyczną. Przypominają one sposobem działania te z Steam Controllera, ale mają mieć o 55% mniejsze opóźnienia. Do dokładnego celowania przyda się wbudowane IMU.
- Steam Deck dostarczany jest domyślnie z systemem SteamOS 3.0 bazującym na Arch Linux. Interfejsem użytkownika jest Steam Big Picture, który jest dostosowany do ograniczeń małego wyświetlacza. Po podłączeniu do zewnętrznego monitora (jak i na wbudowanym wyświetlaczu) można używać zwykłego desktopu KDE Plasma, który nawet dla przechodzących z Windows powinien wydać się intuicyjny.
- Gracz dostaje dostęp do całej swojej biblioteki Steam, bez dodatkowych opłat. Sam Steam ma już ponad 120 milionów użtkowników (ponad 60 dziennie).
- Za kompatybilność z grami stworzonymi dla Windows odpowiada Proton (fork Wine), czyli niezależna od Microsoftu implementacja API Windows. Valve ma zamiar doprowadzić do tego aby w chwili dostarczenia do klientów Steam Deck (grudzień 2021) wszystkie gry z Windows działały na SteamOS.
- Valve zdaje sobie sprawę, że wiele gier zostało stworzonych z myślą o myszy i klawiaturze. Dlatego wcześniej na potrzeby innych kontrolerów powstało Steam Input pozwalające na tworzenie i zarządzanie profilami "sygnały" z kontrolerów: od Steam Controllera po kontrolery Xboksa i Playstation a teraz i Steam Deck.
- Steam Deck wykorzystuje APU, czyli zintegrowany CPU i układ graficzny korzystające z wspólnej pamięci. Jest pierwszym w świecie PC APU łączącym rdzenie Zen 2 i RDNA 2. Dzięki temu pomimo niskiego TDP (4 W - 15 W) jest wystarczająco wydajny by grać w obecne gry AAA.
Nieco dłuższa prezentacja z udziałem programistów Valve:
Teoretyczna wydajność
GPU: 8 jednostek obliczeniowych RDNA 2, 1,0 - 1,6 GHz (do 1,6 TFLOPS FP32)
Wydajność rzeczywista - wstępna analiza DF
Pamięć masowa
Steam Deck na tle pecetowej konkurencji
Steam i SteamOS
- Steam Deck korzysta z Waylanda i kompozytora gamescope.
- Wyświetlacz nie obsługuje adaptatywnej częstotliwości odświeżania (VRR, Freesync).
Różnica między sytuacją Steam Deck a Steam Machines
- było ich zbyt wiele,
- projekty były nieprzemyślane, niezależni producenci nie przyłożyli się - sensownie (np. pod względem obiegu powietrza czy wyboru komponentów) wyglądał tylko prototyp od samego Valve,
- były zbyt drogie,
- tańsze były zbyt wolne,
- gier na Linuksa było niewiele,
- Proton nie istniał,
- trudno było o grupę docelową, każdy miał już PC,
- jakość sterowników była znacznie gorsza niż dziś,
- brakowało dobrego marketingu, a urządzenie nieprzenośne trudno spopularyzować przez samych użytkowników.
"Każdy sprzęt Valve to porażka"
Wkład Valve w Linuksa i gry na Linuksie
Valve Software wspiera rozwój linuksowgo gamingu na wielu frontach:
- stworzenie klienta Steam dla Linuksa (oczywiste) i stworzenie linuksowych wersji własnych gier,
- stworzenie steam-runtime znoszącego konieczność budowania różnych wydań gier dla różnych dystrybucji,
- stworzenie forka Wine o nazwie Proton umożliwiającego wygodne uruchamianie gier z Windows,
- rozwój DXVK, czyli translatora Direct3D 9/10/11 na Vulkan z zachowaniem wysokiej wydajności, bliskiej wydajności na Windows, a czasami wyższej (niektóre tytuły na AMD),
- udział w rozwoju API Vulkan, będącego niskopoziomowym API nowej generacji i wielosystemową konkurencją dla Direct3D 12,
- rozwój VKD3D-Proton, czyli translatora Direct3D12 na Vulkan,
- stworzenie kompilatora shaderów ACO dla AMD, który skrócił czasy ładowania i zwiększył wydajność,
- stworzenie wywołań systemowych futex2, które jeszcze odrobinę zwiększają wydajność przez poprawę synchronizacji wątków, gdy uruchamiana jest gra przez Proton,
- redystrybucja i kompilacja shaderów przed uruchomieniem gry (w tym projekt Fossilize),
- przeniesienie SteamVR na Linuksa,
- rozwój bibliotek SDL jako odpowiednika niektórych elementów DirectX.
Zastosowania użytkowe
Steam Deck to w pełni funkcjonalny, poręczny i całkiem wydajny komputer. Wzięcie na prezentację zamiast notebooka? Wyświetlenie sceny 3D w Blenderze? Albo modelu CAD? Żaden problem. Podłączenie do sterownika samochodu czy motocykla? To x86, więc większość narzędzi będzie działać. Tam gdzie notebook jest zbyt nieporęczny, telefon na Androidzie nie ma odpowiedniego narzędzia, a Raspberry Pi jest zbyt wolne lub trzeba sobie radzić z oprogramowaniem x86, tam jest miejsce dla Steam Deck.