Projektowanie aplikacji rzeczywistości mieszanej, które dostosowują się do dynamicznych przestrzeni

Projektowanie aplikacji rzeczywistości mieszanej, które dostosowują się do dynamicznych przestrzeni

Laserowy taniec to nadchodząca gra o mieszanej rzeczywistości, która stara się wykorzystać funkcję przejścia Questa jako coś więcej niż tylko tło. W tym artykule gościnnym programista Thomas Van Bouwel wyjaśnia swoje podejście do projektowania gry MR, która dynamicznie reaguje na różne środowiska.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.Artykuł gościnny autorstwa Thomasa Van Bouwela

Thomas jest belgijsko-brazylijskim programistą VR, obecnie mieszkającym w Brukseli. Chociaż jego początkowe doświadczenie związane jest z architekturą, jego twórczość w VR obejmuje gry niezależne, takie jak Kubizm do oprogramowania korporacyjnego dla architektów i inżynierów, takich jak Rozwiązać. Jego najnowszy projekt, Laserowy taniec, pojawi się w Quest 3 pod koniec przyszłego roku.

Przez ostatni rok pracowałem nad nową grą pt Laserowy taniec. Zbudowany od podstaw dla rzeczywistości mieszanej (MR), moim celem jest stworzenie gry, która zamieni dowolne pomieszczenie w Twoim domu w laserowy tor przeszkód. Gracze chodzą tam i z powrotem pomiędzy dwoma przyciskami, a każde naciśnięcie przycisku powoduje pojawienie się nowego parametrycznego wzoru laserowego, po którym muszą się poruszać. Gra jest wciąż w fazie rozwoju, a jej premiera planowana jest na rok 2024.

Jeśli chcesz zapisać się na testy Laser Dance, Możesz to zrobić tutaj!

[Osadzone treści]

Zwiastun zwiastuna Laser Dance, który po raz pierwszy został pokazany tuż po Meta Connect 2023

Głównym wyzwaniem w przypadku takiej gry, a być może każdej gry MR w skali pomieszczenia, jest stworzenie poziomów, które dobrze dopasowują się do każdego pomieszczenia, niezależnie od jego wielkości i układu. Ponadto od Laserowy taniec to gra wymagająca dużo ruchu fizycznego, gra powinna także uwzględniać różnice w poziomie mobilności ludzi.

Aby pokonać te wyzwania, niezbędne jest posiadanie dobrych narzędzi do emulacji pomieszczenia, które umożliwiają szybką iterację projektu. W tym artykule chcę omówić, w jaki sposób poziomy są wprowadzane Laserowy taniec pracować i udostępniać niektóre narzędzia programistyczne, które tworzę, aby pomóc mi tworzyć i testować adaptacyjne wzorce laserowe w grze.

Definicja wzoru laserowego

Aby zrozumieć, w jaki sposób Taniec Laserowy działają narzędzia do emulacji pokoju, najpierw musimy omówić, jak działają wzory laserowe w grze.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.Poziom w grze Laser Dance składa się z sekwencji wzorów laserowych – gracze chodzą (lub czołgają się) tam i z powrotem pomiędzy dwoma przyciskami na przeciwległych końcach pokoju, a każde naciśnięcie przycisku umożliwia przejście do następnego wzoru. Te wzory laserowe będą próbowały dostosować się do wielkości i układu pomieszczenia.

Ponieważ wzory laserowe w Taniec Laserowy poziomy muszą być dostosowane do różnych typów przestrzeni, konkretne pozycje laserów nie są z góry określone, ale obliczane parametrycznie na podstawie pomieszczenia.

Do pozycjonowania laserów stosuje się kilka metod. Najprostszym sposobem jest nałożenie jednolitego wzoru na całe pomieszczenie. Poniżej pokazano przykład poziomu, który stosuje jednolitą siatkę wibrujących laserów w całym pomieszczeniu.

Przykład poziomu opartego na wzorach: jednolity wzór ruchu nakładany jest na siatkę laserów pokrywającą całe pomieszczenie.

Inne poziomy mogą wykorzystywać orientację przycisku względem siebie w celu określenia wzoru lasera. Poniższy przykład pokazuje wzór tworzący sekwencję migających ścian lasera pomiędzy przyciskami.

Migające ściany laserów są zorientowane prostopadle do wyimaginowanej linii pomiędzy dwoma przyciskami.

Jednym z bardziej wszechstronnych narzędzi do generowania poziomów jest niestandardowy algorytm wyszukiwania ścieżek, dla którego został napisany Laserowy taniec by Marka Schramma, gościnny programista projektu. Algorytm ten stara się znaleźć ścieżki pomiędzy przyciskami, które maksymalizują odległość od mebli i ścian, tworząc bezpieczniejszą ścieżkę dla graczy.

Ścieżki utworzone przez ten algorytm pozwalają na utworzenie kilku wzorów laserowych, jak tunel laserów lub umieszczenie laserowej przeszkody na środku ścieżki gracza pomiędzy przyciskami.

Na tym poziomie odnajdywanie ścieżki powoduje utworzenie tunelu laserów wijącego się wokół mebli w tym pokoju.

Emulacja pokoju

Opisane powyżej różne techniki tworzenia adaptacyjnych wzorów laserowych mogą czasami prowadzić do nieoczekiwanych rezultatów lub błędów w określonych układach pomieszczeń. Ponadto projektowanie poziomów przy uwzględnieniu różnych typów pomieszczeń może być wyzwaniem.

Aby w tym pomóc, poświęciłem dużo czasu na wczesny rozwój Laserowy taniec na temat budowania zestawu narzędzi do emulacji pomieszczeń, które pozwolą mi symulować i bezpośrednio porównywać wygląd poziomu w różnych układach pomieszczeń.

Pokoje są przechowywane w grze jako prosty plik tekstowy zawierający wszystkie położenie i wymiary ścian oraz mebli. Narzędzie do emulacji może pobrać te pliki i utworzyć kilka pokoi obok siebie bezpośrednio w edytorze Unity.

Następnie możesz zamieniać różne poziomy lub nawet pojedyncze wzory laserowe i emulować je obok siebie w różnych pokojach, aby bezpośrednio je porównać.

Niestandardowe narzędzie wbudowane w Unity wyświetla kilka pokoi obok siebie w widoku ortograficznym, pokazując, jak określony poziom w Laser Dance będzie wyglądał w różnych układach pomieszczeń.

Dostępność i emulacja gracza

Tak jak pokoje, w których ludzie się bawią, mogą się różnić, tak samo ludzie grający sami będą się od siebie różnić. Nie każdy może czołgać się po podłodze, aby uniknąć laserów, lub czuć się na siłach, aby przecisnąć się przez wąski korytarz laserów.

Ze względu na fizyczną naturę Taniec Laserowy rozgrywki, zawsze będzie istniała granica jego dostępności. Jednak w miarę możliwości nadal chciałbym spróbować dostosować poziomy do graczy w taki sam sposób, w jaki dostosowują się do pomieszczeń.

Obecnie Laser Dance pozwala graczom ustawić swój wzrost, szerokość ramion i minimalną wysokość, pod jaką mogą się czołgać. Poziomy będą próbowały wykorzystać te wartości do dostosowania pewnych parametrów sposobu ich pojawiania się. Poniżej pokazany jest przykład, w którym na poziomie zazwyczaj oczekuje się, że gracze będą czołgać się pod polem laserów. Podczas dostosowywania minimalnej wysokości indeksowania wzór ten dostosowuje się do nowej wartości, dzięki czemu poziom jest bardziej wyrozumiały.

Ustawienia dostępności pozwalają graczom dostosować niektóre poziomy Laser Dance do ich budowy ciała i ograniczeń ruchowych. Ten przykład pokazuje, jak poziom, na którym gracze czołgają się po podłodze, może dostosować się do potrzeb osób o bardziej ograniczonej mobilności pionowej.

Te wartości graczy można również emulować w niestandardowych narzędziach, które tworzę. Można zamieniać ustawienia wstępne różnych graczy, aby bezpośrednio porównać, jak poziom może wyglądać inaczej u dwóch graczy.

Narzędzia emulacyjne Laser Dance umożliwiają zamianę różnych wstępnie ustawionych wartości odtwarzacza w celu sprawdzenia ich wpływu na wzory laserowe. W tym przykładzie można zauważyć, jak zmiana ustawień wartości gracza na bardziej dostępne powoduje, że tunel laserów staje się szerszy.

Dane, testowanie i prywatność

Kluczowym problemem związanym z projektowaniem gier adaptacyjnych, takich jak Laser Dance, jest to, że nieoczekiwane układy pomieszczeń i środowiska mogą zepsuć niektóre poziomy.

Aby spróbować się na to przygotować podczas tworzenia gry, w ustawieniach znajduje się przycisk, który gracze mogą nacisnąć, aby udostępnić mi dane dotyczące swojego pokoju. Korzystając z tych narzędzi emulacji, mogę następnie spróbować odtworzyć problem i go rozwiązać.

Designing Mixed Reality Apps That Adapt to Dynamic Spaces PlatoBlockchain Data Intelligence. Vertical Search. Ai.

Testerzy gry mogą nacisnąć przycisk w ustawieniach, aby udostępnić układ swojego pokoju. Pozwala to na lokalne odtworzenie potencjalnych problemów, które mogli zauważyć, przy użyciu wspomnianych powyżej narzędzi emulacji.

To oczywiście powinno budzić pewne obawy dotyczące prywatności, ponieważ gracze zasadniczo dzielą się ze mną częściami swojego domu. Z punktu widzenia programistów przynosi to wyraźne korzyści dla procesu projektowania i kontroli jakości, ale jako konsumenci MR powinniśmy również aktywnie zastanawiać się, do czego twórcy danych osobowych powinni mieć dostęp i w jaki sposób są one wykorzystywane.

Osobiście uważam, że ważne jest, aby udostępnianie tego typu wrażliwych danych wymagało każdorazowej aktywnej zgody gracza na ich udostępnienie – stąd przycisk, który należy aktywnie wcisnąć w ustawieniach. Ważna jest również jasna komunikacja na temat tego, dlaczego te dane są potrzebne i w jaki sposób zostaną wykorzystane, co stanowi dużą część mojej motywacji do napisania tego artykułu.

Jeśli chodzi o platformy MR, ważna jest również aktywna dyskusja na temat prywatności danych. Nie zawsze możemy zakładać, że wszyscy programiści będą wykorzystywać wrażliwe dane dotyczące pokoi, dlatego jako gracze powinniśmy spodziewać się jasnej komunikacji i wyraźnych ograniczeń ze strony platform dotyczących sposobu, w jaki aplikacje mogą uzyskać dostęp do tego typu wrażliwych danych i z nich korzystać, a także zachować czujność w kwestii tego, w jaki sposób i dlaczego niektóre aplikacje mogą prosić o dostęp do tych danych.

Czy potrzebujesz tworzyć niestandardowe narzędzia?

Czy zbudowanie kilku niestandardowych narzędzi jest wymogiem opracowania adaptacyjnej rzeczywistości mieszanej? Na szczęście odpowiedź na to pytanie brzmi: prawdopodobnie nie.

Już widzimy Meta i Apple wychodzą z własnymi narzędziami do emulacji rzeczywistości mieszanej, umożliwiając programistom testowanie aplikacji w symulowanym środowisku wirtualnym, nawet bez zestawu słuchawkowego. Narzędzia te prawdopodobnie z czasem staną się lepsze i solidniejsze.

W niektórych przypadkach nadal warto tworzyć narzędzia niestandardowe, ponieważ zapewnią one największą elastyczność w testowaniu pod kątem konkretnych wymagań. Możliwość jednoczesnej emulacji i porównywania wielu pokojów lub profili graczy Laserowy taniec jest tego dobrym przykładem.

- - - - -

Rozwój Laserowy taniec jest nadal w pełnym rozkwicie. Mam nadzieję, że skończę z zabawną grą, która może również służyć jako wprowadzenie do rzeczywistości mieszanej dla nowicjuszy w tym medium. Chociaż stworzenie tych narzędzi emulacyjnych zajęło trochę czasu, mamy nadzieję, że umożliwią one i przyspieszą proces projektowania poziomów, aby pomóc w osiągnięciu tego celu.

Jeśli chcesz pomóc w rozwoju gry, rozważ to zapisując się na testy!


Jeśli te spostrzeżenia wydały Ci się interesujące, sprawdź inne artykuły gościnne Van Bouwela:

Znak czasu:

Więcej z Droga do rzeczywistości wirtualnej