Reklama
Rzeczywistość wirtualna to startując w wielkim stylu Dlaczego technologia rzeczywistości wirtualnej zaskoczy Cię za 5 latPrzyszł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. Czytaj wię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ą.
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 robić gry wideo Zacznij tworzyć gry w mgnieniu oka dzięki Unity3D Free Czytaj więcej , może to być najlepsza okazja, aby wyrobić sobie markę.
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óry 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 na PC, więc potrzebujesz mocnego procesora i karty. Oculus zaleca i5, a GTX 970 lub odpowiednik i osiem gigabajtów pamięci RAM.
- Najnowsza wersja systemu Windows 7, 8 lub 10.
Poza tym wszystko, czego potrzebujesz, jest bezpłatne. Jeśli chodzi o oprogramowanie, będziemy używać:
- Unity 5 Personal Edition
- The GIMP (program manipulacji obrazami Gnu)
- The Wtyczka SteamVR Unity
- The Wtyczka Primitive Plus Unity
- The Środowisko wykonawcze Oculus dla systemu Windows
Konfigurowanie narzędzi
Najpierw zacznijmy od zainstalowania wszystkiego. Pobierz i uruchom instalatory Unity i ŻYŁKA GIMP: szybki przewodnik po ulubionym edytorze obrazów Open Source wszystkich użytkowników Czytaj więcej . 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 projektu „3D” - nie „2D”). Ustaw katalog projektu na Moje dokumenty / Mój projekt.

Teraz użyj przeglądarki, aby przejść do Unity Asset Storei 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 bezpłatne 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 kiedykolwiek byłeś programowany. Jeśli nie znasz C #, poświęć trochę czasu na zapoznanie się ze składnią (wypróbuj to doskonale interaktywny samouczek). Jeśli nigdy wcześniej nie robiłeś żadnego programowania, wykonaj również ten krok, a następnie poświęć trochę czasu na rozwiązywanie zagadek na Projekt Euler. Pomoże to w zapoznaniu się z rodzajami problemów, które będziesz musiał rozwiązać podczas programowania, oraz umiejętnościami 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łe samouczki dla początkujących. Możesz również skorzystać z naszego własnego kurs awaryjny do Unity Programowanie gry w Unity: przewodnik dla początkującychW ewoluującym krajobrazie 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. Czytaj więcej . 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 kartę „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 mogą być „rodzicielskie” względem siebie (powodując, że obracają się i poruszają razem), przeciągając ich nazwy na siebie nawzajem 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. Wystrzeliwują broń, pociski poruszają się, a postacie chodzą i rozmawiają.
Aby dodać skrypt, wybierz obiekt, którym chcesz sterować, na kartach „Scena” lub „Hierarchia”. Karta „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, dają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. Tutaj 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 funkcję „Start” i „Aktualizacja”. „Start” jest uruchamiany przy pierwszym tworzeniu obiektu. Dokonaj potrzebnej konfiguracji. „Aktualizuj” 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” itp., W zależności od tego, jaki element chcesz kontrolować. Zmienne publiczne zadeklarowane przed funkcją „start” będą widoczne w edytorze, co ułatwi ich modyfikację. Aby uzyskać więcej informacji na temat interakcji z różnymi elementami systemu, sprawdź Podręcznik 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, gdy zostanie ostatecznie wydana. To łatwy sposób na opracowanie obu.
Na karcie „Projekt” przejdź do folderu SteamVR i otwórz podfolder „prefabrykat”. 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ła, której chcesz użyć.
Teraz, jeśli jeszcze tego nie zrobiłeś, zainstaluj Środowisko wykonawcze Oculus dla systemu Windowsi 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 to nie działa poprawnie, sprawdź, czy aparat cię widzi i czy jest prawidłowo podłączony. Sprawdź również, czy Twoja karta graficzna jest wystarczająco wydajna i czy nie działają intensywne aplikacje działające w tle.
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 stworzyłeś swoje pierwsze demo VR!
Tworzenie pierwszej gry VR
Jak na razie takie proste - ale to nie jest szczególnie imponująca wersja demo. Aby dać wam poznać, jak to jest zrobić bardziej zaangażowany projekt, opowiem wam o procesie 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ć dużo, 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 powoli zapełni się losowymi „asteroidami”, które będą się bez celu odbijać 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 amunicja będzie się ładować powoli, jeśli skończy Ci się.
To jest 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, zwłaszcza na peryferiach. Pomaga to uniknąć choroby lokomocyjnej, dając użytkownikowi pewne stałe elementy, zmniejszając wrażenie, że się poruszają. 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 wywoływał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 jeden metr w VR, więc miej oko na rozmiar tworzonych elementów. Łatwo jest tworzyć obiekty, które są absurdalnie duże lub absurdalnie małe w VR, a wyniki mogą być niepokojące.
Kiedy skończysz budować swój statek, stwórz otaczający go sześcian i nadaj mu wszystkie prymitywne elementy statku. Zapewni to skrzynkę zderzeniową i środek ruchu. Dodaj „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żywać grawitacji” były wyłączone. Dodaj inne sztywne ciała do każdego z prymitywów statku, tym razem ustawiając je jako „kinematyczne”, ale wyłączając „użyj grawitacji”.
Przenieś obiekty „CameraRig” i „SteamVR” do kokpitu i ustaw je tam, gdzie głowa użytkownika powinna znajdować się na statku. Użyłem innego darmowego zasobu Unity (humanoidalny robot), aby upewnić się, że pozycja jest poprawnie ustawiona. Nadaj je do zewnętrznej kostki - spowoduje to, że poruszą się wraz z obiektem.
Teraz, aby napisać skrypt do statku! Oto dwa skrypty, które utworzył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 musisz wypełnić wszystkimi prymitywami na statku.
Skrypt wyświetla również niektóre instrukcje, które pojawią się, gdy umrzesz. Utwórz obiekt TextMesh GameObject i ustaw go tak, aby powiedział: „Umarłeś! Strzelaj, aby zrestartować! ” Umieść ten TextMesh w kokpicie, przypisz go do statku i wyłącz jego moduł renderujący. Następnie przeciągnij go do zmiennej „instrukcja” 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 „kamień”. Jeśli nie znasz systemu tagów jedności, sprawdź odpowiednia strona 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 tutaj to „AsteroidInit”, który wykonuje dwie czynności.
- 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 przez coś oznaczonego „kula”. Jeśli tak, aktywuje emiter cząstek, który przyczepiłem do asteroidy i niszczy oryginalny obiekt.
Arena
Wspaniały! 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ą zrobił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 do areny, wypełniając go słabymi, długowiecznymi, statycznymi cząsteczkami. Ułatwia to określenie, jak się poruszasz, gdy nie jesteś 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 zmienną GameObject „Asteroid”, 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, dający graczowi gola. Zakotwicz te siatki w kokpicie, tak aby były dobrze widoczne.

Wreszcie musimy wdrożyć broń użytkownika. Dodaj obiekt „gun” do statku (nie musi to być skomplikowane) i przeciągnij na niego ten skrypt. Musisz połączyć obiekt z kulą, którym może być dowolny obiekt ze sztywnym nadwoziem 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ą nowicjuszami w VR i nie mają 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 do tego dobrze przygotowany.
To powiedziawszy, tworzenie gier VR bardzo różni się od tradycyjnych gier, więc dam z siebie kilka ogólnych porad dotyczących projektowania wrażeń VR, które będą wygodne i będą w pełni korzystać z średni.
Ruch
Po pierwsze i najważniejsze, szanuj ruch głowy użytkownika. Nie skaluj, nie wypaczaj, nie zmieniaj pola widzenia ani w inny sposób nie zepsuj podstaw. Oculus i Valve zadali sobie wiele trudu, aby dostroić te rzeczy, aby ludzie nie chorowali. 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ż przyleganie do głowy dużego przedmiotu przez co najmniej dziesięć sekund!
W tym samym duchu uważaj na ruch. Głównym 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żna grać tanioGatunek strategii czasu rzeczywistego jest obecnie jednym z podstawowych elementów gier. Inne gatunki, takie jak strzelanki FPS i gry RPG, są nasycone setkami różnych tytułów, ale strategia czasu rzeczywistego nie obejmuje ... Czytaj więcej w skali 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, na przykład 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ąć, spróbuj wprowadzić swój interfejs użytkownika na cały świat. 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ę, jak dużo pola widzenia obejmują. Oznacza to, że tekst może być dość trudny do odczytania. Postaraj się na nim polegać jak najmniej. 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 z jeszcze wyższą rozdzielczością i liczbą klatek na sekundę. Brak trafienia w te liczby klatek spowoduje migotanie podwójnego widzenia. To bardzo denerwujące i jednokierunkowy bilet do dezorientacji i zmęczenia oczu.
W rezultacie musisz być znacznie bardziej ostrożny w zakresie 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ć wszystkie obiekty, które się nie zmieniają lub poruszają, jako „statyczne” 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 złożone tekstury umieszczone daleko od siebie).
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. Współczesne silniki renderujące mają problemy z rejestrowaniem głębi, 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.
Pamiętaj o tym wszystkim, 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 tekstur „blobu cienia” do stworzenia okluzji otoczenia. To nie jest całkowicie realistyczne, ale robi wiele, aby uziemić je na świecie, i jest wyjątkowo tanie graficznie!
Z biegiem czasu tego rodzaju ataki 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. 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 przyjętych Doświadczenia VR Oculus Rift VR Symulacje, które musisz uwierzyćWidziałeś Oculus Rift, ale nie widziałeś niektórych z szalonych zastosowań, do których został wykorzystany. Sprawdź te niesamowite dema Oculus Rift z całego świata. Czytaj więcej były naprawdę dziwne rzeczy Symulator pracy, gra z piaskownicą 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 chorobę 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.
Udaj się więc, zrób kilka gier - a przede wszystkim baw się dobrze!
Andre, pisarz i dziennikarz z południowego zachodu, gwarantuje funkcjonalność do 50 stopni Celsjusza i jest wodoodporny do głębokości dwunastu stóp.