Microsoft myśli o graniu na Linuksie; wydaje narzędzie ułatwiające przenoszenie gier

Microsoft myśli o graniu na Linuksie; wydaje narzędzie ułatwiające przenoszenie gier

Źródło: Depositphotos
Źródło: Depositphotos
Piotr Urbaniak
18.11.2018 14:10

Microsoft opublikował na GitHubie open-source'owe narzędzie, które ma rozwiązywać jeden z większych problemów przy przenoszeniu gier między platformami – translację potoku graficznego (języka cieniowania) na język zrozumiały dla docelowego środowiska.

Co ciekawe, ShaderConductor – jak nazwano projekt – nie jest de facto nowym kompilatorem. Zamiast tego agreguje parę wcześniejszych rozwiązań: DirectX Shader Compiler umożliwiający kompilację HLSL do DXIL (D3D 12) lub SPIR-V (Vulkan), a także SPIRV-Cross, który pozwala przekonwertować SPIR-V na kolejne języki cieniowania, m.in. GLSL, GLSL ES i MSL, wykorzystywane przez, odpowiednio: OpenGL, OpenGL ES i API urządzeń marki Apple, Metal.

Obraz

Tak więc wygląda na to, że Microsoft na poważnie myśli o graniu na platformach innych niż Windows PC oraz Xbox One. Oczywiście ciężko spodziewać się, by chodziło tu o stworzenie konkurencji. Co innego w przypadku systemów i usług będących niejako z boku, a więc serwerów do strumieniowania gier i urządzeń mobilnych, gdzie przedsiębiorstwo mogłoby wejść ze swoimi produkcjami.

Warto też zwrócić uwagę, że cały ten łańcuszek wzajemnej „kompatybilności” shaderów pomija PlayStation 4, korzystające z autorskiego formatu PSSL. W teorii, rozwijając dalej narzędzia do kompilacji skrośnej z pominięciem Sony, firma z Redmond mogłaby zniechęcić mniejsze studia do wydawania gier na konkurencyjny sprzęt, przeciwstawiając jednej PS4 szeroki wachlarz platform. Ręczne przepisywanie kodu może być dla wielu nieopłacalne, skoro minimalnym nakładem pracy będą mogli zaoferować grę dla systemów: Windows, Linux, macOS, Android, iOS oraz Xbox.

Programy

Zobacz więcej
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Wybrane dla Ciebie
Komentarze (299)