Moonlight – NVIDIA GameStream poza SHIELDami

Już od kilku lat NVIDIA oferuje w ramach swojego rozwiązania GeForce Experience opcję streamingu gier na inne urządzenia. Niestety, oficjalnie obsługuje ona jedynie odbieranie danych przez urządzenia z rodziny SHIELD (Tablet czy TV, a kiedyś również Portable). Na szczęście powstał nieoficjalny klient GameStream o nazwie Moonlight.

Jest to oprogramowanie o otwartym kodzie źródłowym, które aktualnie dostępne jest dla Androida, iOS oraz przeglądarkę Chrome (w tym Chrome OS, ale już nie mobilne odmiany), a także (dzięki portom przygotowywanym przez społeczność) dla Raspberry Pi, PlayStation Vita (jako homebrew) czy gogle Samsung Gear VR.

Dzięki Moonlight można nareszcie korzystać z GameStream, np. gdy nie chce nam się wstawać z kanapy i wolimy pograć na słabszym laptopie (mój przypadek :)) lub tablecie innej firmy (SHIELD Tablet już trudno dostać w sklepach). Z odrobiną uporu da się wykorzystać to rozwiązanie do streamingu gier poza naszą sieć lokalną (jeśli mamy wystarczający szybki upload, może to zastąpić rozwiązania chmurowe) – więcej informacji o tym można znaleźć na tej stronie w sekcji Streaming over internet.

Konfiguracja jest banalna – pobieramy ze strony projektu interesującą nas wersję i po instalacji odpalamy program. Przeszuka on naszą sieć lokalną i wyświetli na głównym ekranie (tu też można zmienić podstawowe ustawienia) znalezione komputery z kartami NVIDII obsługującymi GameStream. Wystarczy go następnie wybrać i potwierdzić na nim przyznanie dostępu przepisując PIN wygenerowany przez aplikację Moonlight. To wszystko.

Na ekranie urządzenia wyświetli się teraz lista gier wykrytych przez oprogramowanie NVIDII. Kliknięcie dowolnej uruchomi ją na komputerze hoście i rozpocznie proces przesyłania z niego obrazu.

Moonlight wspiera zarówno sterowanie padem (między innymi z Xboksów 360 i One oraz PlayStation 3 i 4 jeśli są wspierane przez system, na którym instalujemy klienta) jak i klasycznie myszką i klawiaturą. Wersje dla Androida i iOS oferują również możliwość sterowania wirtualnym padem, którego elementy są wyświetlane na ekranie.

revanmj's tech blog