inhire.ioBlogPraca w ITProgramowanie rzeczywistości, czyli co musisz wiedzieć o pracy w obszarze XR

Programowanie rzeczywistości, czyli co musisz wiedzieć o pracy w obszarze XR

Praca w IT
11/05/2021

Inwestycje w startupy tworzące rozwiązania z obszaru XR osiągnęły już rekordowy poziom $5,4 miliarda rocznie. Branża rozwija się tak szybko, że ciężko za nią nadążyć. Wzrost rynku oznacza nie tylko nowe miejsca pracy i wyższe płace, ale także kolejne, coraz ciekawsze wyzwania.

XR, czyli w wolnym tłumaczeniu rzeczywistość powiększona, obejmuje zarówno rzeczywistość wirtualną, rozszerzoną, jak i mieszaną (VR, AR oraz MR). Jaka jest specyfika takich projektów? W jakich technologiach tworzy się innowacyjne oprogramowania i buduje nowe produkty sprzętowe? Jakich kompetencji i umiejętności potrzeba, aby pracować w tym obszarze?

Na te pytania odpowiada nam Andrii Gorbenko – R&D Product Consultant & Innovation Marketing Manager w SoftServe.

Coraz częściej w świecie technologii spotykamy się ze skrótami VR/AR/MR/XR. Czy mógłbyś opowiedzieć o tym, co kryje się pod tymi pojęciami i jakie są między nimi różnice?

Wszystko zaczęło się od wirtualnej rzeczywistości (VR) – w pełni immersyjnego doświadczenia w innym świecie, w którym każdy piksel jest symulowany i zastępuje znane otoczenie.

Nowoczesna technologia VR pozwala nie tylko na pełne zanurzenie w sztucznej rzeczywistości za pomocą okularów czy hełmu, ale także na interakcje między rzeczywistością sztuczną i „prawdziwą” – za pomocą urządzeń zewnętrznych. Rzeczywistość można symulować na wiele sposobów, które mogą się bardzo od siebie różnić.

Rzeczywistość rozszerzona (AR) to już szeroko rozpowszechniona technologia, w rzeczywistości będąca drugą najpopularniejszą po VR. Idea AR polega na tym, że urządzenie nie generuje pełnego środowiska cyfrowego, ale dodaje jedynie wirtualne obiekty, dane i treść do świata rzeczywistego. 

Na koniec rzeczywistość mieszana (MR), nazywana też hybrydową. Zarówno rzeczywistość rozszerzona, jak i mieszana łączą ze sobą obraz rzeczywisty z tym wykreowanym komputerowo Nie są to jednak takie same technologie. Podstawową różnicą między nimi jest to, że urządzenia mieszanej rzeczywistości cechuje interaktywność.

Warto również wspomnieć o skrócie XR, który też dość często możemy spotkać. Odnosi się on do wszystkich środowisk rzeczywistych i wirtualnych generowanych przez grafikę komputerową i urządzenia mobilne. XR to kategoria parasolowa, która obejmuje wszystkie formy rzeczywistości zmienionej komputerowo, w tym: rzeczywistości wirtualnej, rozszerzonej i mieszanej.

“W SoftServe stworzyliśmy wrażliwy na dotyk hologram ludzkiego serca. Jest on wykorzystywany w sektorze zdrowotnym do szkoleń medycznych”.

Pierwsze skojarzenie, jakie przychodzi mi na myśl o wirtualnej rzeczywistości, to branża rozrywkowa. Na pewno wykorzystanie tej technologii nie tylko do tego się ogranicza. Gdzie najczęściej stosowane są rozwiązania VR/XR?

Rzeczywiście, VR najczęściej wykorzystuje się w branży rozrywkowej, ale nie tylko. Spójrzmy na branżę edukacyjną. W lotnictwie wykorzystywane są symulatory lotu, które nie są wcale prostsze w obsłudze niż rzeczywiste, a początkujący piloci zdobywają pełne doświadczenie i wiedzę, bez ryzyka dla swojego zdrowia i drogiego sprzętu.

Dodatkowo, VR stosuje się już do szkolenia lekarzy, żołnierzy, kosmonautów, a nawet inżynierów. Sztuczne symulacje stosowane są także przez naukowców do modelowania hipotetycznych sytuacji, przewidywania zdarzeń w zakresie fizyki, chemii lub biologii i badania określonych zjawisk.

W takim przypadku rzeczywistość wirtualna to najbliższe możliwe odwzorowanie świata rzeczywistego – jej prawa odzwierciedlają prawa świata rzeczywistego.

Dla przykładu, w SoftServe stworzyliśmy wrażliwy na dotyk hologram ludzkiego serca. Jest on wykorzystywany w sektorze zdrowotnym do szkoleń medycznych.

Obecnie pracujemy również z kilkoma najbardziej znanymi na rynku markami, pomagając im w opracowaniu nowatorskich produktów sprzętowych, UI/UX oraz rozwiązań w zakresie frameworku.

Myślę, że takich projektów będzie coraz więcej. Jeśli kiedykolwiek zastanawialiście się nad pracą przy innowacyjnych produktach z obszaru rzeczywistości wirtualnej czy rozszerzonej, to właśnie teraz jest najlepszy moment, aby dołączyć do naszego działu R&D.

Rzeczywiście rozwój branży jest dynamiczny, a zakres tworzonych rozwiązań bardzo szeroki. Czy w związku z tym technologie potrzebne do tworzenia wirtualnej rzeczywistości będą się zmieniać, coraz bardziej różnić w zależności od projektu?

Jak najbardziej. Branżę VR można warunkowo podzielić na kilka kierunków. Główny zestaw technologii zależy właśnie od nich:

 • Programowanie pod hełmy VR – np. gry i aplikacje na hełmy Vive lub Oculus. Podstawowymi językami programowania są tutaj C# i C++. Programiści korzystają ze specjalnych silników gier, które pozwalają tworzyć interaktywność w scenach 3D. Najpopularniejsze z nich to Unreal Engine 4 (UE4) i Unity.

Programowanie pod aplikacje mobilne – poza silnikami należy tutaj zrozumieć również, jak tworzyć aplikacje. Potrzebny będzie Swift dla iOS i Kotlin dla Androida.

Programowanie dla sieci – tu przydatne będą dwa frameworki: Java – Three.js i Babylon.js. Posiadają one gotowe narzędzia efektów i ustawienia widoków kamery. Kolejnym wartym uwagi narzędziem jest Vizor VR do tworzenia przestrzeni.

Osoby początkujące w dziedzinie VR mają do dyspozycji gotowe frameworki: open source React 360 od Facebooka i A-Frame. Pozwalają one na tworzenie interaktywnych scen bez rozległej znajomości języków programowania. Aplikacja działa zarówno na urządzeniach przenośnych, jak i komputerach.

Czytaj także Inhire.io wprowadza algorytm pozwalający na dopasowanie oferty do oczekiwań finansowych kandydata, bez ujawniania widełek płacowych!

Zdaje się, że budowanie wirtualnej rzeczywistości opiera się nie tylko na tworzeniu kodu, ale również zaawansowanej grafiki. Jakie technologie będą kluczowe przy takich projektach?

To prawda, rzeczywistości cyfrowe to całościowe doświadczenia, które wymagają tworzenia treści dla wszystkich układów sensorycznych użytkownika. Programowanie VR łączy wiedzę z zakresu programowania i grafiki komputerowej. Wymaga tworzenia i dostosowywania modeli 3D oraz programowania ich interaktywności i rozgrywki.

W zależności od dziedziny, kluczowa jest wiedza łącząca Unity i C# lub Unreal Engine z C++, a także zrozumienie projektowania przestrzennego dźwięku 3D, opracowywania zasobów oraz budowania interfejsów wirtualnych i UX.

Poza wskazanymi powyżej, do tworzenia grafik i modeli przydatne będą takie technologie jak Entertainment Creation Suite od Autodesk, Blender czy Blocks.

“Istnieje coraz większe zapotrzebowanie na programistów AR, VR i MR we wszystkich branżach”.

Do tworzenia rozwiązań w szeroko rozumianej wirtualnej rzeczywistości potrzebny jest sztab specjalistów. Jakie kompetencje są teraz szczególnie poszukiwane?

Istnieje coraz większe zapotrzebowanie na programistów AR, VR i MR we wszystkich branżach. W zależności od tego, jak bardzo zaawansowane doświadczenie wirtualnej rzeczywistości chcemy stworzyć, przydać się może znajomość inżynierii sprzętu i języków programowania, takich jak C++ i C# oraz silników gier: 3D jak Unity, Unreal Engine i Godot.

Programiści z umiejętnościami skanowania lub modelowania 3D również mogą trafić na wyjątkowe możliwości w zakresie projektowania doświadczeń użytkownika 3D w przemyśle XR.

Osoby, które znają się na inżynierii dźwięku, specjalizacji audio 3D, modelowaniu środowiska i projektowaniu dźwięku mogą również znaleźć masę możliwości zawodowych w ramach technologii tworzenia rzeczywistości powiększonej/poszerzonej (XR).

Jeśli jesteś doświadczonym programistą z kreatywnym nastawieniem, praca nad innowacyjnymi projektami  z zakresu rozwoju produktów w XR z pewnością może okazać się dla Ciebie satysfakcjonującym doświadczeniem. 

Sprawdź aktualne oferty pracy w SoftServe