Dlaczego Unity jest dobry do tworzenia gier AR VR?

Opublikowany: 2022-02-21

Unity to prosty silnik gier o otwartym kodzie źródłowym, który zapewnia narzędzia i wsparcie dla twórców gier w tworzeniu innowacyjnych, interaktywnych gier na różnych platformach. Silnik gry jest wyposażony w narzędzia i funkcje zaprojektowane specjalnie dla Augmented Reality i Virtual Reality, które zamieniają nierealistyczne wyobrażenia w rzeczywistość.

Unity do tworzenia gier AR VR

Unity zapewnia obsługę VR za pomocą jednego interfejsu API, który może wchodzić w interakcje z urządzeniami VR, folder projektu, który nie wymaga zewnętrznych wtyczek, możliwość przełączania się między urządzeniami i wiele więcej.

Obsługa wirtualnej rzeczywistości w Unity

Platforma wirtualnej rzeczywistości Unity zakupiła technologię HDRP (High Definition Render Pipeline). Wtyczki HDPR i Unity XR są ze sobą kompatybilne, a HDPR obsługuje nową strukturę wtyczek Unity XR, która zapewnia wieloplatformowe narzędzia programistyczne, rozszerzoną obsługę wtyczek, a także dostęp do platform o większej pojemności.

Obsługa rozszerzonej rzeczywistości w Unity

Użytkownicy mogą tworzyć aplikacje AR dla urządzeń podręcznych i ubieralnych, korzystając z AR Foundation firmy Unity. Poza śledzeniem urządzeń, raycastem, rozpoznawaniem gestów, wykrywaniem twarzy, tworzeniem siatki, wykrywaniem chmur punktów i nie tylko, podstawa AR obsługuje szeroką gamę funkcji na różnych platformach. Podstawa jest dostępna w Menedżerze pakietów i musisz pobrać jeden z AR specyficznych dla platformy. Oprócz wtyczki ARKit XR, wtyczki ARCore XR, wtyczki Magic Leap XR i wtyczki Windows XR dostępna jest również wtyczka ARCore XR.

Rozwój XR w Unity

Unity zawiera funkcje programistyczne XR w celu optymalizacji doświadczeń AR i VR. XR ma możliwość symulowania alternatywnego środowiska wokół użytkownika w wirtualnej rzeczywistości; a w AR aplikacja XR wyświetla treści cyfrowe na ekranie w świecie rzeczywistym. Jako w pełni funkcjonalny silnik gier, Unity oferuje pełne wsparcie dla twórców, optymalizując stos technologiczny XR dla każdej platformy, głęboko integrując się z każdą platformą i ulepszając silnik. XR jest obsługiwany na różnych platformach z wyjątkiem WebGL. Wtyczka XR SDK umożliwia użytkownikom bezpośrednią integrację z Unity, dzięki czemu mogą korzystać ze wszystkich funkcji oferowanych przez Unity.

Wieloplatformowe narzędzia programistyczne, lepsze aktualizacje partnerów i więcej platform do ulepszania doświadczeń VR i AR to tylko niektóre z korzyści oferowanych przez środowisko wtyczek XR.

Tworzenie gier AR VR w Unity z wykorzystaniem aplikacji XR.

Rozwój wirtualnej rzeczywistości

  • Rendering stereo pass stereo (renderowanie Doublewide) — aplikacje rzeczywistości wirtualnej na PlayStation 4 i PC są kompatybilne z tą funkcją. Urządzenia VR i AR z zaawansowanym renderowaniem stereo działają lepiej. Dla widza rendering XR tworzy stereoskopowy efekt 3D, tworząc dwa widoki, po jednym dla każdego oka. Renderowanie wieloprzebiegowe, renderowanie jednoprzebiegowe i instancje jednoprzebiegowe to metody renderowania stereo w Unity. Wyniki są różne w każdym z trzech przypadków, ponieważ wydajność trzech trybów jest różna.
  • Niestandardowe shadery w Unity — grafika gry oraz ogólny wygląd i wrażenia mają duży wpływ, a tekstury, materiały i shadery sprawiają, że gra wygląda tak dobrze. Shadery zostaną omówione tutaj. Shadery to skrypty, które służą do tworzenia ciekawych efektów wizualnych do gier wideo. Skrypty te wykonują obliczenia każdego piksela w grze. Opierają się na materiałach wejściowych i oświetleniu. Shadery są opracowywane z programowaniem wizualnym.
  • Tryb kolorów wierzchołków Używając paska narzędzi ustawień malowania w Unity, użytkownik może wybrać jeden z wielu trybów kolorów, aby zmienić kolory wierzchołków siatki. Tryb koloru wierzchołków jest dostępny tylko wtedy, gdy shader go obsługuje, co nie ma miejsca w przypadku większości shaderów Unity. Istnieje kilka domyślnych materiałów pędzla poli, które mogą malować kolory na siatce za pomocą kolorów wierzchołków w edytorze Unity. Tryb kolorów Vertex pozwala wybierać spośród palet kolorów i typów pędzli do pędzla, wypełniania i zalewania kolorów na siatce. Pozwala także dostosować etapy prototypowania, strefy, układy zespołów i nie tylko.
  • Pasek narzędzi trybu edycji w programie ProBuilder jest to oznaczony kolorami pasek narzędzi, który umożliwia przełączanie między czterema różnymi trybami edycji: trybem obiektu, trybem wierzchołków, trybem krawędzi i trybem twarzy. Pasek narzędzi Unity Edit Mode zawiera tryb Object, który pozwala wybierać i manipulować GameObjects. Możesz wybrać i zmienić współrzędne wierzchołków w ProBuilder, używając trybu Vertex. W trybie Edge można wybierać krawędzie (linie) i manipulować nimi na siatce ProBuilder. Z drugiej strony tryb twarzy pozwala wybierać i przesuwać twarze (wielokąty). Tryb wierzchołka, krawędzi i powierzchni można zgrupować razem jako tryb elementu. Dodatkowo na pasku narzędzi znajdziesz skróty klawiszowe (skróty klawiaturowe) do uruchamiania różnych narzędzi w trybie edycji.
  • RenderScale lub EyeTextureResolutionScale Przy różnych poziomach rozdzielczości tekstury oka użytkownicy mogą zwiększać lub zmniejszać rozdzielczość, zmieniając rozmiar tekstury oka. Różne wartości RenderScale tworzą różne tekstury oczu o różnych rozdzielczościach.
Wartość Tekstura oczu Wynik
1,0 Domyślna
<1.0 Niższa rozdzielczość Zmniejszona ostrość dzięki lepszej wydajności
> 1,0 Wyższej rozdzielczości Obrazy są ostrzejsze, zużycie pamięci wzrasta, ale spada wydajność.

Aby dynamicznie zmieniać rozdzielczość renderowania oka w locie, rozważ użycie XRSettings.renderViewportScale.

Różni się od RenderScale tym, że RenderViewportScale umożliwia dynamiczną zmianę rozdzielczości renderowania oka. Ilość tekstury oka jest regulowana w zakresie od 0,0 do 0,1 do renderowania. Użycie tego pozwoli Ci zmniejszyć rozdzielczość w czasie wykonywania, jeśli na przykład chcesz utrzymać akceptowalną liczbę klatek na sekundę.

  • Potoki renderowania skryptów (SRP) — technologia używana w rzeczywistości wirtualnej umożliwia planowanie i renderowanie poleceń za pomocą skryptów C#. Dzięki tej warstwie API możesz projektować niestandardowe potoki renderowania.

Rozwój rzeczywistości rozszerzonej

  • AR Occlusions – Rzeczywistość rozszerzona wykorzystuje materiały i obiekty wygenerowane komputerowo, aby dodać głębi i informacji do sceny 3D. Termin okluzja opisuje efekt ukrywania jednego obiektu lub ściany w świecie rzeczywistym przed widokiem innego w świecie wirtualnym w celu stworzenia bardziej realistycznego doświadczenia. Dzięki fundacji Unity AR Foundation możesz zastosować shadery do płaskich obiektów, aby uzyskać okluzję.
  • Oświetlenie i cienie AR – wirtualną scenę można oświetlić i nadać jej realistyczny wygląd, używając wirtualnych świateł i cieni rzucanych przez wirtualne obiekty. Wirtualne obiekty rzucają cienie na podłogę, gdy pada na nie światło, podobnie jak światło bezpośrednie rzuca cienie w świecie fizycznym. Dzięki Fundacji AR Unity użytkownicy mogą eksperymentować z różnymi zakresami i intensywnościami, aby stworzyć naprawdę wciągające wrażenia.
  • Renderowanie specyficzne dla platform – Istnieje różnica w zachowaniu Unity dla AR i VR na różnych platformach. W rezultacie fundacja AR oferuje użytkownikom Unity interfejs, który umożliwia im pracę z platformami rzeczywistości rozszerzonej na wielu platformach.

Gry to branża o wielu obliczach, a Unity oferuje możliwość eksperymentowania z różnymi narzędziami, technologiami i funkcjonalnościami. Dzięki zawartości 3D, interakcji w czasie rzeczywistym i efektom dźwiękowym czynniki te w znacznym stopniu przyczyniają się do tworzenia płynniejszych i bardziej angażujących gier dla graczy. Jednak w Indiach jest wiele firm zajmujących się tworzeniem gier, które używają Unity do tworzenia gier VR i AR. Dlatego możesz zatrudnić twórców gier Unity, którzy są kreatywni i mają doskonałe umiejętności programowania, aby tworzyć wciągające i interaktywne gry.