Rozpocznij tworzenie gier Virtual Reality w Unity 5 za darmo

  • Owen Little
  • 0
  • 4108
  • 877
Reklama

Rzeczywistość wirtualna startuje w wielkim stylu Dlaczego technologia rzeczywistości wirtualnej zaskoczy Cię za 5 lat Dlaczego technologia rzeczywistości wirtualnej zaatakuje Cię za 5 lat Przyszłość rzeczywistości wirtualnej obejmuje śledzenie głowy, oczu i ekspresji, symulację dotyku i wiele więcej . Te niesamowite technologie będą dostępne za 5 lat lub krócej. - W najbliższej przyszłości Valve, HTC, Samsung i Facebook będą sprzedawać wysokiej klasy sprzęt do wirtualnej rzeczywistości. Jeśli chodzi o oprogramowanie, dziesiątki dużych studiów opracowują nowy sprzęt i wszyscy swobodnie przyznają, że nie mają pojęcia, co robią.

Ten przewodnik można pobrać w postaci bezpłatnego pliku PDF. Pobierz teraz Rozpocznij tworzenie gier rzeczywistości wirtualnej w Unity 5 za darmo. Kopiuj i udostępniaj to znajomym i rodzinie.

To tak, jak na początku DOOM i Wolfenstein od nowa. Nikt nie wie, jak wygląda dobra gra VR, a niezależne studia mogą zostać głównymi graczami. Jeśli chcesz tworzyć gry wideo Rozpocznij tworzenie gier w mgnieniu oka dzięki Unity3D Free Rozpocznij tworzenie gier w mgnieniu oka dzięki Unity3D Free, może to być najlepsza okazja, jaką będziesz musiał stworzyć dla siebie.

Powiedzmy, że chcesz się zaangażować. Narzędzia są bardziej przyjazne dla użytkownika niż kiedykolwiek i prawie wszystkie są bezpłatne. Ale gdzie zaczynasz? W tym przewodniku znajdziesz wszystkie narzędzia i informacje potrzebne do rozpoczęcia - całkowicie za darmo.

Gotowy? Weźmy się za to.

Czego potrzebujesz:

Aby zacząć tworzyć gry VR, potrzebujesz tylko trzech rzeczy:

  • Po pierwsze potrzebujesz zestawu VR. Najlepszą obecnie powszechnie dostępną opcją jest Oculus Rift DK2, którą można kupić tutaj za 350 USD.
  • Po drugie, potrzebujesz dość wydajnego komputera do gier. VR jest około trzy razy bardziej intensywna niż normalna gra komputerowa, więc będziesz potrzebować mocnego procesora i karty. Oculus zaleca i5, GTX 970 lub odpowiednik oraz osiem gigabajtów pamięci RAM.
  • Najnowsza wersja systemu Windows 7, 8 lub 10.

Poza tym wszystko, czego potrzebujesz, jest bezpłatne. W zakresie oprogramowania będziemy używać:

  • Unity 5 Personal Edition
  • GIMP (program manipulacji obrazami Gnu)
  • Wtyczka Unity SteamVR
  • Wtyczka Primitive Plus Unity
  • Środowisko wykonawcze systemu Windows Oculus

Konfigurowanie narzędzi

Najpierw zacznijmy od zainstalowania wszystkiego. Pobierz i uruchom instalatory Unity i GIMP GIMP: Szybki przewodnik po ulubionym edytorze obrazów Open Source wszystkich. GIMP: Szybki przewodnik po ulubionym edytorze obrazów Open Source wszystkich użytkowników. To powinno być dość oczywiste. Gdy otworzysz Unity po raz pierwszy, pojawi się monit o utworzenie konta: zrób to i pamiętaj swoją nazwę użytkownika i hasło.

Wewnątrz Unity utwórz nowy projekt (pamiętaj o utworzeniu “3D” projekt - nie “2D”). Ustaw katalog projektu na Moje dokumenty / Mój projekt.

Teraz użyj przeglądarki, aby przejść do Unity Asset Store, i zaloguj się przy użyciu tych samych danych logowania. Zapewni to dostęp do narzędzi i zasobów dla programistów. Użyj powyższych linków Primitive Plus i SteamVR, zlokalizuj paczki i kliknij przycisk „Otwórz w jedności” w lewym górnym rogu. Ponieważ są to darmowe zasoby, nie musisz za nie płacić - inne mogą nie być wolne, więc bądź ostrożny. Postępuj zgodnie z wyświetlanymi instrukcjami i zaimportuj te pakiety do Unity. Powinieneś zobaczyć nowe foldery w podmenu „Projekt”. Pobranie może potrwać minutę, więc bądź cierpliwy i nie zamykaj Unity, dopóki nie skończą.

Skrypty w jedności

Jedność jest niezwykle łatwa w użyciu, jeśli wcześniej ją programowałeś. Jeśli nie znasz C #, poświęć trochę czasu na zapoznanie się ze składnią (wypróbuj ten doskonały interaktywny samouczek). Jeśli nigdy wcześniej nie programowałeś żadnego programu, wykonaj również ten krok, a następnie poświęć trochę czasu na rozwiązywanie zagadek w Project Euler. Pomoże to w zapoznaniu się z rodzajami problemów, z którymi będziesz się borykać podczas programowania, oraz rodzaj umiejętności rozwiązywania problemów, których potrzebujesz.

Gdy poczujesz się komfortowo w rozwiązywaniu problemów z C #, polecam poświęcić trochę czasu na badanie Unity przy użyciu ich doskonałych samouczków dla początkujących. Możesz także skorzystać z naszego własnego kursu awaryjnego do Unity Programowanie gry z Unity: Przewodnik dla początkujących Programowanie gry z Unity: Przewodnik dla początkujących W ewoluującym krajobrazie rozwoju niezależnych gier Unity pojawiło się jako coś w rodzaju de facto standardu: jego niski koszt, łatwość użycia i szeroki zestaw funkcji sprawiają, że jest idealny do szybkiego tworzenia gier. . Przedstawię krótkie wyjaśnienie wszystkich używanych przeze mnie komponentów, ale jest tam wiele cennych informacji, które będą Ci dobrze służyć, gdy będziesz podejmować większe projekty.

Aby użyć skryptu Unity, najpierw potrzebujesz obiektu, do którego chcesz go dołączyć. W edytorze możesz tworzyć obiekty 3D na jeden z trzech sposobów.

  • Możesz je zaimportować jako część pakietu.
  • Możesz przeciągnąć pliki do folderu Mój projekt / Zasoby.
  • Możesz je tworzyć w edytorze za pomocą menu GameObject u góry ekranu - pozwala to tworzyć proste prymitywne kształty, takie jak sześciany i kule, a także tekst i cząsteczki.

Jeśli je zaimportujesz lub przeciągniesz do folderu zasobów, pojawią się one w podoknie „Projekt”. Możesz umieścić je w grze, wybierając zakładkę „Scena” i przeciągając je na nią. Powinieneś wtedy zobaczyć, jak pojawiają się na świecie. Przełączniki kontrolne w lewym górnym rogu umożliwiają skalowanie, obracanie i ustawianie ich według własnych upodobań. Obiekty można „rodzić” względem siebie (powodując, że obracają się i poruszają razem), przeciągając ich nazwy na siebie w zakładce „Hierarchia”.

Gdy obiekt znajdzie się na scenie, możesz dołączyć do niego jeden lub więcej skryptów. Te skrypty sprawiają, że obiekt ożywa. Strzelają z broni, poruszają się pociski, a postacie chodzą i rozmawiają.

Aby dodać skrypt, wybierz obiekt, którym chcesz sterować, w zakładkach „Scena” lub „Hierarchia”. Zakładka „Inspektor” zmieni się, aby pokazać wszystkie elementy dołączone do danego obiektu. Typowy obiekt będzie wyglądał mniej więcej tak i zawierał kilka elementów:

  • Filtr siatkowy informuje silnik gry o kształcie obiektu.
  • Renderer w rzeczywistości rysuje obiekt na ekranie.
  • Rigidbody informuje silnik fizyki, że obiekt istnieje, i określa jego właściwości.
  • Zderzacz określa fizyczne granice obiektu: możesz uczynić obliczenia fizyki tańszymi, podając złożonemu obiektowi prosty zderzacz, taki jak pudełko lub kula.

Z zakładki inspektora możesz dodać nowy skrypt za pomocą przycisku „Dodaj komponent” u dołu. Stąd możesz albo dodać skrypt, który już utworzyłeś, albo możesz utworzyć nowy. Zmień język na „C #”, wprowadź żądaną nazwę i naciśnij „utwórz”. Spowoduje to dodanie nowego (pustego) skryptu do obiektu. Dwukrotne kliknięcie nazwy skryptu w zakładce Inspector otworzy skrypt w MonoDevelop, edytorze kodu Unity.

Wewnątrz nowego pliku zobaczysz funkcje „Start” i „Aktualizuj”. „Start” działa, gdy obiekt jest tworzony po raz pierwszy. Dokonaj potrzebnej konfiguracji. „Aktualizacja” uruchamia każdą ramkę i tam, gdzie powinna iść większość logiki.

Aby uzyskać dostęp do komponentów obiektu, możesz wpisać „gameObject.Renderer”, gameObject.rigidbody itd., W zależności od tego, jaki element chcesz kontrolować. Zmienne publiczne zadeklarowane przed funkcją „start” będą widoczne w edytorze, ułatwiając ich ulepszanie. Aby uzyskać więcej informacji na temat interakcji z różnymi elementami systemu, zapoznaj się z instrukcją Unity.

Jest to prosty skrypt, który stworzyłem, który powoduje rytmiczne rozszerzanie i kurczenie się obiektu na podstawie fali sinusoidalnej. Utwórz kostkę w Unity, dodaj skrypt i skopiuj skrypt do metody „Aktualizuj”. Po zapisaniu i naciśnięciu przycisku „play” w edytorze powinieneś zobaczyć, jak sześcian się powiększa i kurczy. Upewnij się, że obiekt „Camera” jest ustawiony tak, aby mógł go zobaczyć!

Włączanie trybu VR

Teraz, gdy przygotowaliśmy podstawową scenę Unity, wyświetlmy ją na zestawie słuchawkowym VR. Będziemy używać wtyczki SteamVR, która będzie renderowana zarówno do Oculus Rift, jak i HTC Vive, kiedy zostanie ostatecznie wydana. To łatwy sposób na opracowanie obu.

Na karcie „Projekt” przejdź do folderu SteamVR i otwórz podfolder „prefabrykowany”. Zobaczysz kilka podmiotów gotowych do użycia. Przeciągnij prefabrykaty „CameraRig” i „SteamVR” na scenę. Są one już skonfigurowane ze wszystkim, czego potrzebujesz. Przenieś je do swojej sceny (umieszczonej w tym samym punkcie). Przesuń je, aby widzieli sześcian. Teraz usuń oryginalne obiekty kamery (inne niż VR) - posiadanie więcej niż jednej aktywnej kamery w scenie spowoduje błąd, ponieważ Unity nie będzie wiedział, z której chcesz skorzystać.

Teraz, jeśli jeszcze tego nie zrobiłeś, zainstaluj środowisko wykonawcze Oculus Windows i podłącz swój DK2.

Zrestartuj swój komputer. W zasobniku systemowym zobaczysz logo oka Oculus. Po kliknięciu pojawi się opcja otwarcia selektora „Tryb wyświetlania” i narzędzia konfiguracyjnego. Ustaw tryb wyświetlania na „Bezpośredni”. Następnie otwórz narzędzie konfiguracji Oculus. Sprawdź, czy możesz zobaczyć scenę demonstracyjną. Jeśli nie możesz, debuguj to przed kontynuowaniem.

r / Oculus jest dobrym zasobem do tego rodzaju rzeczy. Scena demonstracyjna powinna działać płynnie i śledzić obrót i pozycję głowy, bez szarpnięć i podwójnych obrazów.

Jeśli nie działa poprawnie, sprawdź, czy kamera Cię widzi i czy jest prawidłowo podłączona. Sprawdź również, czy karta graficzna jest wystarczająco wydajna i czy w tle nie działają intensywne aplikacje.

Po sprawdzeniu, że zestaw VR działa poprawnie, otwórz Unity i naciśnij przycisk odtwarzania. Prosta skonfigurowana przez nas scena powinna być wyświetlana na zestawie VR! Gratulacje: właśnie przygotowałeś swoje pierwsze demo VR!

Tworzenie pierwszej gry VR

Jak dotąd, takie proste - ale to nie jest szczególnie imponująca wersja demo. Aby dać ci przedsmak tego, jak to jest zrobić bardziej zaangażowany projekt, przeprowadzę cię przez proces tworzenia pełnej zręcznościowej gry VR, którą już ukończyłem, zatytułowanej AsteroidVR.

To nie jest Skyrim, ale jest to pełna gra, w którą można grać, z działającą grafiką i pełnym zestawem mechaniki. Stworzenie go zajęło kilka dni i jest na poziomie wersji demonstracyjnych, z których będziesz czerpać, eksperymentując z różnymi stylami gier.

Gra jest dość prosta: będziesz pilotować statek uwięziony w dużym pokoju. Statek będzie poruszał się ze stałą prędkością. Będziesz mógł sterować i strzelać, ale nie przestać. Pokój będzie powoli wypełniał się losowymi rozmiarami “asteroidy,” który odbije się bez celu po pokoju. Twoim zadaniem jest unikanie wpadania na te asteroidy lub ściany tak długo, jak to możliwe. Będziesz mógł strzelać do asteroid, ale twoja amunicja będzie się ładować powoli, jeśli skończy ci się.

To podstawowy pomysł. Zacznijmy. Ponieważ jest to tylko wersja demonstracyjna, będziemy tworzyć nasze zasoby z prostych prymitywów, takich jak kostki i kule (używając zasobu Primitive Plus).

Statek

Oto statek, który stworzyłem.

Przyznaję, że wygląda to jak wózek widłowy, ale wystarczy na to demo.

Budując kokpit, pamiętaj o umieszczeniu oczywistych struktur w polu widzenia użytkownika, szczególnie na peryferiach. Pomaga to uniknąć choroby lokomocyjnej, dając użytkownikowi pewne stałe elementy, zmniejszając wrażenie, że się porusza. To ułatwia ich mózgom radzenie sobie z brakiem ruchu zgłaszanym przez ich wewnętrzne uszy.

Musiałem eksperymentować z kilkoma konfiguracjami kokpitu, zanim znalazłem taką, która nie spowodowała u mnie choroby. W razie wątpliwości dodaj więcej rozpórek i cofnij kamerę. Uważaj na skalę! Jedna jednostka w Unity ma metr w VR, więc miej oko na rozmiar tworzonych elementów. Łatwo jest tworzyć obiekty, które są absurdalnie duże lub śmiesznie małe w VR, a wyniki mogą być niepokojące.

Po zakończeniu budowy statku stwórz otaczający go sześcian i nadaj mu wszystkie prymitywne elementy. Zapewni to skrzynkę zderzeniową i środek ruchu. Dodać “sztywne ciało” do zewnętrznej kostki i wyłącz moduł renderujący (odznaczając go w inspektorze). Upewnij się, że sztywne nadwozie jest ustawione tak, aby zarówno kinematyka, jak i użycie grawitacji były wyłączone. Dodaj inne sztywne ciała do każdego z prymitywów statku, tym razem ustawiając je jako “kinematyczny,” ale się wyłączam “użyj grawitacji.”

Przenieś obiekty „CameraRig” i „SteamVR” do kokpitu i ustaw je w miejscu, w którym głowa użytkownika powinna znajdować się wewnątrz statku. Użyłem innego darmowego zasobu Unity (humanoidalnego robota), aby upewnić się, że pozycja jest poprawnie ustawiona. Przydziel je do zewnętrznej kostki - spowoduje to, że poruszą się wraz z obiektem.

Teraz, aby napisać skrypt do statku! Oto dwa skrypty, które stworzyłem - kontroler pojazdu i niszczyciel pojazdów. Pierwszy odczytuje dane wejściowe od użytkownika i przekazuje pchnięcia statkowi, powodując jego ruch. Drugi wykrywa, kiedy statek zderza się z czymś oznaczonym jako „kamień”, i kończy grę. Co ciekawe, rozbija statek na części, pozwalając zobaczyć, jak odlatują podczas kolizji. Skrypt utworzy w edytorze tablicę obiektów, które będziesz musiał wypełnić wszystkimi prymitywami na statku.

Skrypt wyświetla także instrukcje, które pojawią się po Twojej śmierci. Utwórz obiekt TextMesh GameObject i ustaw go do powiedzenia “Umarłeś! Strzel, aby uruchomić ponownie!” Umieść ten TextMesh w kokpicie, przypisz go do statku i wyłącz jego moduł renderujący. Następnie przeciągnij go na “instrukcja” zmienna skryptu VehicleDestroy w inspektorze. Ten tekst będzie normalnie niewidoczny, ale pojawi się ponownie, gdy umrzesz.

Asteroida

Następnie stworzymy nasze asteroidy. Oto asteroida, na której się skończyłem, zbudowana z kilku prymitywnych sklejonych razem i standardowy moduł cieniujący. Nic skomplikowanego, ale wygląda całkiem nieźle.

Dodałem sztywne ciało i oznaczyłem je jako “skała.” Jeśli nie znasz systemu tagów jedności, sprawdź odpowiednią stronę podręcznika. Zasadniczo tagi umożliwiają przypisywanie specjalnych właściwości do obiektów, które można wykryć podczas kolizji, pozwalając skryptom wiedzieć, z czym wchodzą w interakcje. W takim przypadku tag spowoduje, że obiekt statku wykryje, że został trafiony przez coś niebezpiecznego.

Teraz, aby napisać skrypt na asteroidzie. Skrypt jest tutaj “AsteroidInit,” co robi dwie rzeczy.

  • Po pierwsze, losuje nieco asteroidy, aby wyglądały wyraźnie, i daje każdemu kopnięcie w losowym kierunku.
  • Po drugie, wykrywa, czy asteroida została trafiona czymkolwiek oznaczonym jako „kula”. Jeśli tak, aktywuje emiter cząstek, który przyczepiłem do asteroidy i niszczy oryginalny obiekt.

Arena

Świetny! Obecne są dwa podstawowe elementy gry. Następnie arena. Może mieć dowolny kształt, ale upewnij się, że jest duży. Kręcenie się w małych kręgach powoduje, że ludzie chorują. Latanie na wprost jest stosunkowo nieszkodliwe. Oznacz wszystkie ściany „skałą”, aby upewnić się, że statek zostanie zniszczony, jeśli wleci w nie. Oto arena, na której skończyłem:

Zauważysz, że ściany mają prostą teksturę zastępczą, którą wykonałem w GIMP. W przeważającej części zaprojektowałem grę z bez teksturową estetyką dla uproszczenia. Odkryłem jednak, że trudno mi było powiedzieć, kiedy zbliżałem się do upadku na ścianę, więc dostają tekstury do celów rozgrywki. Dodałem również emiter cząstek na arenę, wypełniając go słabymi, długowiecznymi, statycznymi cząsteczkami. Ułatwia to określenie, jak się poruszasz, gdy nie znajdujesz się w pobliżu obiektu. Na szczęście arena jest dość pasywna, więc nie wymaga żadnego skryptowania.

Na koniec utwórz prymitywny (użyłem pustego cylindra) i umieść go przy jednej ścianie.

To będzie twój spawacz asteroid. Dołącz do niego ten skrypt. Zauważysz, że ten skrypt deklaruje “Asteroida” Zmienna GameObject, która powinna być widoczna w edytorze. Przeciągnij obiekt asteroidy na niego w edytorze. Pozwoli to na odrodzenie nieograniczonej liczby asteroid w tempie jednej na sekundę, dzięki czemu gra będzie powoli narastała. Umieść oryginalną asteroidę bardzo daleko, aby uniknąć jej przypadkowego zniszczenia lub spowodowania problemów.

HUD i Gun

W tym momencie można grać w najbardziej podstawową formę gry. Teraz dodamy kilka dodatkowych funkcji, które nadadzą mu nieco więcej głębi. Ten skrypt dołączony do “TextMesh,” będzie śledzić, jak długo żyjesz. Drugi skrypt będzie rozmawiał z plikiem w celu ustalenia twojego najlepszego wyniku, który jest zapisywany w pliku przez obsługę pojazdu po ponownym uruchomieniu. Teraz masz prosty system tablicy wyników, który daje graczowi gola. Zakotwicz te oczka w kokpicie, aby były dobrze widoczne.

Wreszcie musimy wprowadzić pistolety użytkownika. Dodać “pistolet” sprzeciwić się statkowi (nie musi to być skomplikowane) i przeciągnąć na niego ten skrypt. Musisz połączyć obiekt z kulą, którym może być dowolny obiekt ze sztywnym ciałem i tagiem „bullet”. Uczyń go jaskrawym, aby był widoczny. Ponownie umieść go daleko, aby nie wchodził w interakcje. Na koniec musisz zrobić pokaz amunicji. Dodaj ten skrypt do innej siatki tekstowej i zakotwicz go w kokpicie, aby był dobrze widoczny.

Strojenie

To już wszystko! W tym momencie wszystkie podstawowe elementy gry są gotowe. Czas przetestować. Możesz zmienić zakres rozmiarów asteroid, kształt i rozmiar areny, prędkość statku, ilość amunicji, szybkość ładowania i czas odnowienia. Możesz eksperymentować ze sposobem obsługi statku. Jeśli chcesz i masz trochę umiejętności modelowania 3D, możesz nawet zastąpić moją grafikę programistyczną prawdziwymi zasobami i stworzyć z niej dopracowaną grę. Ważne jest, aby dużo eksperymentować i dowiedzieć się, co jest dla ciebie dobre i wygodne dla testerów (najlepiej testerów, którzy są nowi w VR i nie rozwinęli jeszcze żelaznych żołądków).

Jeśli chcesz zobaczyć cały projekt Unity i zamieszać z nim, możesz go pobrać tutaj. Jeśli chcesz po prostu zagrać w moją wersję finalnej gry, możesz ją pobrać tutaj.

Tworzenie własnych wersji demonstracyjnych

Jeśli będziesz postępować zgodnie z własnym samouczkiem i zagłębisz się w dokumenty, gdy znajdziesz coś, czego nie rozumiesz, skończysz z całkiem niezłym uchwytem do tworzenia podstawowych gier VR w Unity. Jeśli chcesz pójść dalej, będziesz dobrze do tego przygotowany.

To powiedziawszy, tworzenie gier VR bardzo różni się od tradycyjnego tworzenia gier, więc dam kilka ogólnych rad dotyczących projektowania wrażeń VR, które będą wygodne i w pełni wykorzystają medium.

Ruch

Po pierwsze i najważniejsze, szanuj ruch głowy użytkownika. Nie skaluj go, nie wypaczaj, nie zmieniaj pola widzenia ani w inny sposób nie mieszaj z podstawami. Oculus i Valve zadali sobie wiele trudu, aby dostroić te rzeczy, aby nie wywoływać choroby. O ile nie masz pod ręką psychologów percepcyjnych, nie masz kwalifikacji, aby z nim manipulować. Nie! Uważaj również, aby go nigdy nie wyłączać. Nie twórz menu bez śledzenia głowy. Nic nie wywołuje choroby szybciej niż przylgnięcie do głowy ogromnego przedmiotu przez dziesięć sekund lub dłużej!

W tym samym duchu uważaj na ruch. Podstawowym czynnikiem, który powoduje, że ludzie chorują jest to, że ich oczy dostrzegają ruch, którego nie słyszy ich ucho wewnętrzne. Ogólnie rzecz biorąc, utrzymuj ruch powolny i stabilny. Przyspieszenie powinno być natychmiastowe, a obrót należy zminimalizować. Kiedy musi nastąpić obrót, zapewnij użytkownikowi stałe punkty odniesienia w jego polu widzenia peryferyjnego. Jeśli możesz, twórz gry, które odbywają się bez ruchu. Istnieje wiele fajnych rzeczy, które możesz zrobić w jednym pokoju lub przy użyciu małych przedmiotów (pomyśl gry strategiczne w czasie rzeczywistym 4 doskonałe gry strategiczne w czasie rzeczywistym, w które możesz grać tanio 4 doskonałe gry strategiczne w czasie rzeczywistym, w które możesz grać tanio Gatunek strategii czasu rzeczywistego jest obecnie jednym z podstawowych elementów gier. Inne gatunki, takie jak strzelanki FPS i gry fabularne, są nasycone setkami różnych tytułów, ale strategia czasu rzeczywistego nie… plastikowych żołnierzy) i znacznie łatwiej sprawić, by te doświadczenia były wygodne i przyjemne.

Interfejs użytkownika

Wiele osób, gdy zaczynają tworzyć treści VR, automatycznie chce dołączyć rzeczy do głowy użytkownika, takie jak wojskowe wyświetlacze Heads Up. Niestety okazuje się, że nie działa to zbyt dobrze. Kiedy twoje oczy skupią się na czymkolwiek daleko na świecie, obiekty blisko twojej głowy staną się nieostrym bałaganem pikseli. Ponadto skupienie się na bardzo pobliskich obiektach powoduje zmęczenie oczu.

Aby tego uniknąć, postaraj się jak najlepiej umieścić swój interfejs użytkownika w świecie. Inspiracje znajdziesz w grach takich jak Dead Space. Zauważysz, że w AsteroidsVR, powyżej, cały interfejs jest zakotwiczony w kokpicie. Ponieważ jest w przestrzeni wokół ciebie, cały interfejs użytkownika ma sens i jest wygodny do oglądania.

W powiązanej notatce uważaj na tekst. Obecne zestawy słuchawkowe VR mają dość niską rozdzielczość, zwłaszcza gdy weźmie się pod uwagę, ile pola widzenia obejmują. Oznacza to, że tekst może być dość trudny do odczytania. Postaraj się na nim polegać tak mało, jak to możliwe. Tekst, który masz, powinien być wystarczająco duży, aby był bardzo czytelny w normalnych warunkach oglądania. Pamiętaj, że niektórzy z twoich graczy mogą być w podeszłym wieku lub niedowidzący! Błąd po stronie zbyt dużej.

Grafika

Pamiętaj, że VR jest bardzo intensywne. DK2 musi działać w rozdzielczości 1080p, w 3D, przy 75 fps. Zarówno konsumencki Rift, jak i HTC Vive będą działały w jeszcze wyższych rozdzielczościach i prędkościach klatek. Brak trafienia w te liczby klatek spowoduje migotanie podwójnego widzenia. Jest to bardzo denerwujące i jest biletem w jedną stronę na dezorientację i zmęczenie oczu.

W rezultacie będziesz musiał być znacznie bardziej ostrożny w kwestii wydajności niż zwykle. Oznacza to ograniczenie liczby odliczeń i zminimalizowanie kosztownych efektów graficznych. Używaj prostych modeli, ogranicz liczbę świateł do minimum, wyłącz dynamiczne cienie i staraj się, aby jak najwięcej obiektów używało tego samego materiału. Powinieneś także oznaczyć jako obiekty, które się nie zmieniają ani nie poruszają “statyczny” w inspektorze. To ułatwia Unity grupowanie ich w całość i oszczędzanie wydajności. Kiedy możesz, włącz te ograniczenia do swojego projektu gry, wybierając kreskówkową estetykę dla swojej gry. Zasadniczo, jeśli możesz wyeliminować efekt wizualny bez szkody dla gry, zrób to.

Jedynym wyjątkiem od tej ogólnej zasady jest antyaliasing. Aliasing (postrzępiony artefakt spowodowany dyskretną naturą grafiki komputerowej) występuje inaczej w każdym oku, co prowadzi do nieprzyjemnego rozbicia efektu 3D, co może powodować zmęczenie oczu. Używaj tak dużo wygładzania, na ile możesz sobie pozwolić (zalecam MSAA) i staraj się unikać tekstur z detalami wizualnymi o wysokiej częstotliwości (takimi jak liście, drobne siatki lub skomplikowane tekstury umieszczone daleko).

Niektóre efekty wizualne również źle pasują do VR, nawet jeśli możesz sobie na to pozwolić.

  • Uważaj na efekty przetwarzania końcowego, takie jak kwitnienie, które mogą powodować własne różnice stereofoniczne.
  • Pamiętaj też, że 3D sprawia, że ​​niektóre popularne kody wizualne wyglądają wyjątkowo źle. Normalne mapy, podstawowe gry wideo, wyglądają zupełnie płasko, gdy oglądane są z bliska w VR. Duszki billboardowe (w rodzaju powszechnie używanych do wybuchów) również wyglądają płasko i naprawdę mogą przerwać zanurzenie. Podobnie wiele technik opartych na duszkach używanych do nadawania szczątkom lub roślinności wyglądu płaskiego i niewłaściwego.
  • Na koniec uważaj na obiekty przezroczyste. Nowoczesne silniki renderujące mają problem z utrzymaniem głębokości, gdy w tej samej scenie znajduje się wiele przezroczystych obiektów. To staje się wyjątkowo wstrząsające w VR. Staraj się ograniczać liczbę obiektów przezroczystych do minimum i unikaj scenariuszy, w których jeden obiekt przezroczysty można zobaczyć przez drugi.

Miej to na uwadze, gdy tworzysz zasoby sztuki, dzięki czemu zaoszczędzisz wiele bólu.

Jeśli okaże się, że po wyłączeniu wszystkich efektów graficznych gra wygląda trochę szaro, spróbuj użyć jasnych map i fałszywej okluzji otoczenia. Mapy świetlne pieczą oświetlenie bezpośrednio w warstwie tekstury na mapie, która świetnie wygląda na wszystko, co się nie porusza i może dodać Twojemu światu głębi i solidności. W przypadku obiektów dynamicznych (takich jak postacie) rozważ użycie “kropla cienia” tekstury do tworzenia okluzji otoczenia. To nie jest całkowicie realistyczne, ale robi wiele, aby uziemić je na świecie, i jest niezwykle tanie graficznie!

Z biegiem czasu tego rodzaju hacki będą mniej potrzebne, ale na razie musisz wykorzystać ich jak najwięcej, aby zaoszczędzić wydajność.

Eksperymentuj wcześnie i często

Najważniejszą radą, jaką mam, jest porzucić swoje uprzedzenia. VR nie jest dokładnie tym, co wszyscy myśleliśmy, że będzie w latach 90-tych. Rzeczywistość ma wiele zalet i ograniczeń, których nikt nie mógł przewidzieć. Co brzmi niesamowicie na papierze (jak VR Halo) okazuje się w praktyce dezorientującym, mdłym bałaganem. Niektóre z najlepiej odebranych doświadczeń VR Symulacje VR Oculus Rift, które musisz zobaczyć, aby uwierzyć Symulacje VR Oculus Rift, które musisz zobaczyć, aby uwierzyć Widziałeś Oculus Rift, ale nie widziałeś, jak niektóre szalone zastosowania zostały wprowadzone do. Sprawdź niesamowite dema Oculus Rift z całego świata. były naprawdę dziwne rzeczy Symulator pracy, piaskownica osadzona w kuchni.

VR to zupełnie nowe medium i nikt jeszcze nie rozumie zasad. W tradycyjnych grach wideo prawie wiemy, jak zrobić FPS, RPG i cover shooter. Te podstawowe gatunki są przybite. Istnieją najlepsze praktyki. Każda nowa gra jest stopniowym ulepszeniem, ale zazwyczaj nie jest to nowy gatunek. W VR nie ma nic, ALE nowe gatunki. Podstawy medium nie zostały jeszcze wynalezione. Nikt nie wie, co robią.

Jest to niezwykle ekscytujące, ale oznacza to, że musisz być elastyczny. Jeśli masz świetny pomysł, zrób to! Natychmiast! Przygotuj prototyp tak szybko, jak to możliwe, i sprawdź, czy działa. Ale bądź gotów pozwolić, by eksperyment się nie powiódł. Jeśli twój pomysł nie jest zabawny lub wywołuje choroby u testerów, wyrzuć go i wypróbuj coś nowego.

Stwórz nową grę co tydzień, a nawet codziennie, aż zdobędziesz złoto. Im więcej wykonanych prototypów się nie powiedzie, tym większe są szanse na wymyślenie czegoś naprawdę fajnego. Twórz dziwne gry. Robić naprawdę dziwne gry. Nikt nie wie, co będzie działać, a co nie, więc rzuć szeroką sieć. Możesz być zaskoczony tym, co okazuje się niesamowite.

Wyjdź więc, zrób kilka gier - a przede wszystkim baw się dobrze!




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.