Wirtualna rzeczywistość

Wirtualna rzeczywistość (VR) to szerokie pojęcie. W tej dokumentacji interesują nas głównie gogle (HMD — head mounted displays), takie jak Valve Index i Oculus Rift S.

VR i gry wyścigowe to świetne połączenie. Znacznie zwiększają Twoją zdolność orientacji w otoczeniu. Chcesz upewnić się, że po lewej nie ma żadnego auta? Po prostu obróć głowę i spójrz przez okno! Dzięki dodatkowej percepcji głębi łatwiej ocenić odległości i prędkości. Nie jest to jednak pozbawione problemów.

W połączeniu z systemem ruchu największym problemem jest śledzenie. Ponieważ system ruchu porusza Twoją głową, ruch ten jest rejestrowany przez gogle VR. Jest to bardzo widoczne podczas hamowania, gdy Twoja twarz zbliża się do kierownicy na skutek pitchu systemu ruchu. Jednak SIMRIG Control Center jest wyposażony w kompensację ruchu (motion cancellation), aby rozwiązać ten problem.

Kompensacja ruchu

Kompensacja ruchu może przeciwdziałać wpływowi systemu ruchu na gogle VR. W praktyce polega to na odjęciu ruchu riga od Twojego własnego, co pozwala systemowi ruchu poruszać Twoim ciałem bez wpływu na śledzoną pozycję.

Działa to poprzez obliczenie różnicy pomiędzy tym, gdzie znajduje się Twoja głowa na skutek ruchu wywołanego przez system ruchu, a tym, gdzie powinna się znajdować, gdybyś pozostawał nieruchomy. Ta różnica jest następnie stosowana do śledzonej pozycji gogli VR (niwelując wpływ systemu ruchu na śledzenie przez gogle VR).

Instalacja

Ta sekcja opisuje, jak zainstalować SIMRIG Motion Cancellation — opcjonalny pakiet oprogramowania dla SIMRIG Control Center, który dodaje obsługę kompensacji ruchu dla SteamVR i OpenXR.

Będziesz potrzebować:

  1. Zgodnych gogli VR (HMD), takich jak Valve Index, HP Reverb G2 lub innych z listy zweryfikowanych zestawów

  2. SteamVR albo zgodnego środowiska uruchomieniowego OpenXR

  3. SIMRIG Control Center w wersji 1.20.0 lub nowszej

  4. SIMRIG SR1 z firmware w wersji 17 albo SIMRIG SR2

Jeśli te wymagania są spełnione, możesz uzyskać dostęp do strony VR w SIMRIG Control Center:

../_images/mc-not-installed.png

Strona VR w SIMRIG Control Center przy pierwszym otwarciu.

Status zarówno dla SteamVR, jak i OpenXR jest oznaczony jako Disabled. Oznacza to, że kompensacja ruchu jest wyłączona (pole wyboru Enable motion cancellation nie jest zaznaczone) albo brakuje pakietu SIMRIG Motion Cancellation dla tego środowiska uruchomieniowego. Kompensacja ruchu to pakiet opcjonalny. Domyślnie nie jest instalowany.

Przy pierwszym otwarciu strony VR pojawi się prośba o zainstalowanie obsługi kompensacji ruchu zarówno dla SteamVR, jak i OpenXR. Kliknij dowolny z linków, aby zainstalować pakiet SIMRIG Motion Cancellation. Uruchom instalator i postępuj zgodnie z instrukcjami na ekranie.

Między SteamVR i OpenXR są różnice, które mają znaczenie dla kompensacji ruchu. W kolejnych sekcjach postaramy się je opisać.

SteamVR

Ostrzeżenie

Przed zainstalowaniem SIMRIG Motion Cancellation dla SteamVR odinstaluj wszystkie inne rozwiązania kompensacji ruchu dla SteamVR, takie jak OpenVR-InputEmulator.

SteamVR jest szeroko stosowany zarówno przez gry, jak i gogle VR. W wielu przypadkach SteamVR jest jedynym wspieranym środowiskiem VR. Na przykład Assetto Corsa domyślnie obsługuje wyłącznie SteamVR. Z tego powodu Twoje gogle VR prawdopodobnie mają wsparcie dla SteamVR. Większość gogli VR obsługujących SteamVR może korzystać z naszej kompensacji ruchu.

SteamVR oferuje pewne zalety względem OpenXR w kontekście kompensacji ruchu:

  1. Obsługuje uniwersalny skrót Reset HMD, który działa we wszystkich grach

  2. Obsługuje trackery referencyjne, takie jak Vive Tracker, zapewniające bardzo dokładną kompensację ruchu

  3. Użycie funkcji gry do resetowania kierunku „do przodu” gogli HMD powiadamia nasz system kompensacji ruchu bez ingerencji użytkownika

W przypadku nowszych gier i gogli VR czasami lepiej (albo wręcz koniecznie) jest użyć OpenXR.

OpenXR

Ostrzeżenie

Musisz przypisać skrót Reset HMD w SIMRIG Control Center i w grze do tego samego klawisza.

OpenXR jest szeroko wspierany przez gogle VR, ale adaptacja w grach przebiegała wolniej. Większość producentów gogli VR dostarcza już własne, firmowe środowisko uruchomieniowe OpenXR. Oczekujemy, że wszystkie nowe gry będą korzystać wyłącznie z OpenXR. Starsze gry mogą otrzymać aktualizacje, ale mogą też nadal opierać się na rozwiązaniach takich jak OpenComposite.

OpenXR jest problematyczny dla kompensacji ruchu. Nie ma możliwości obsługi trackerów referencyjnych. Nie ma sposobu na dodanie uniwersalnego skrótu Reset HMD. Nie ma też sposobu, by OpenXR powiadamiał system kompensacji ruchu, gdy w grze zostanie zresetowany kierunek „do przodu” w HMD. Sprawę dodatkowo komplikuje fakt, że istnieje wiele sposobów implementacji OpenXR, co skutkuje wyraźnymi różnicami pomiędzy grami.

Kompensacja ruchu działa tylko wtedy, gdy system i gra zgadzają się co do kierunku „do przodu”. Z tego powodu musisz przypisać skrót resetu HMD w grze do tego samego klawisza, który jest używany przez skrót Reset HMD w SIMRIG Control Center. Musisz nacisnąć ten klawisz na początku wyścigu, aby zsynchronizować grę z systemem.

Zweryfikowane gogle VR

Te gogle VR zostały przetestowane i zweryfikowane pod kątem działania z SIMRIG Control Center:

Inne gogle VR z obsługą SteamVR lub OpenXR najprawdopodobniej również będą działać.

Tryb kompensacji

Oprogramowanie oferuje trzy różne tryby (strategie) realizacji kompensacji ruchu. Każdy kolejny jest coraz dokładniejszy, ale wymaga też więcej pracy przy konfiguracji.

Lock head to seat:

Ten tryb blokuje HMD w jego siedzącej pozycji zerowej. Ruch głowy nie jest dozwolony — ani od systemu ruchu, ani od użytkownika. Daje to idealną kompensację ruchu, ale nie pozwala użytkownikowi poruszać się wewnątrz wirtualnego kokpitu. Konfiguracja nie jest wymagana. To tryb domyślny. Użyj regulacji fotela w grze, aby zmienić pozycję głowy.

Rig geometry:

Ten tryb opiera się na pomiarach riga i predykcji programowej, aby oszacować wpływ systemu ruchu na HMD. Ruch wywołany przez system ruchu jest odejmowany, a ruch głowy użytkownika pozostaje zachowany. Użytkownik może poruszać się wewnątrz wirtualnego kokpitu. Wymagana konfiguracja.

Hardware tracker:

Ten tryb działa tylko w SteamVR. Wykorzystuje zewnętrzny tracker sprzętowy, taki jak Vive Tracker, jako punkt odniesienia. Może to dać bardzo dobre rezultaty przy zachowaniu ruchu głowy użytkownika. Użytkownik może poruszać się wewnątrz wirtualnego kokpitu. Wymagana konfiguracja.

Geometria riga

Geometria riga jest wymagana do przewidywania pozycji systemu ruchu we współrzędnych VR. Zalecamy zweryfikowanie tych wartości miarką. Następnie dostosuj wartość Ear to floor, aż kompensacja ruchu będzie działać zgodnie z oczekiwaniami.

../_images/mc-rig-geometry.png
Ear to floor:

Siedząc w rigu, zmierz pionową odległość od uszu do podłogi.

Ear to rear:

Siedząc w rigu, zmierz poziomą odległość od uszu do środka tylnych siłowników. Wpisz wartość dodatnią, jeśli Twoje uszy są przed tylnym siłownikiem (pomiędzy tylnymi i przednimi siłownikami). Wpisz zero, jeśli Twoje uszy znajdują się dokładnie nad tylnymi siłownikami.

Width:

Wpisz odległość środek–środek pomiędzy tylnymi siłownikami.

Length:

Wpisz odległość środek–środek pomiędzy lewymi siłownikami.

Reset HMD

Informacja

Użytkownicy OpenXR muszą przypisać skrót resetu w grze oraz skrót Reset HMD w SIMRIG Control Center do tego samego fizycznego przycisku.

Skrót Reset HMD resetuje siedzącą pozycję zerową HMD. Ponownie centruje kamerę w grze i konfiguruje kierunek „do przodu” riga na potrzeby kompensacji ruchu.

Przypisz Reset HMD do przycisku na kierownicy lub yoku, który jest łatwy do dosięgnięcia i zapamiętania. Naciśnij przycisk raz przy starcie nowego wyścigu lub sesji. Upewnij się, że patrzysz do przodu (w kierunku „do przodu” riga). Jeśli Twoja głowa jest obrócona w bok, w grze będzie to wyglądać poprawnie, ale kompensacja ruchu nie będzie działać prawidłowo.

Większość gier oferuje podobną funkcję. Występuje ona pod różnymi nazwami, np.: Reset HMD, Reset seated position, Center headset itd. Użytkownicy OpenXR muszą przypisać skrót w grze i skrót Reset HMD do tego samego fizycznego przycisku. Użytkownicy SteamVR mogą całkowicie zignorować skrót w grze.

Tracker referencyjny

Użycie sprzętowego trackera jako punktu odniesienia jest opcjonalne. Działa tylko w SteamVR.

Jeśli tracker referencyjny jest niedostępny, system przełącza się na tryb Rig geometry.

../_images/mc-reference.png

Dostępnych jest kilka trybów referencji:

Vive Tracker:

Ten tryb wymaga zamontowania Vive Trackera na rigu. Aby uzyskać najlepsze działanie, zamontuj tracker możliwie blisko głowy.

Controller:

Ten tryb wymaga zamontowania kontrolera ręcznego na rigu. Aby uzyskać najlepsze działanie, zamontuj kontroler możliwie blisko głowy.

Komunikaty stanu

Strona VR zawiera komunikat stanu opisujący stan SIMRIG Motion Cancellation. Może on być przydatny, gdy próbujesz ustalić, czy system działa zgodnie z oczekiwaniami.

../_images/mc-status.png

Przykładowy komunikat stanu. Jest wyświetlany, gdy SteamVR nie jest uruchomiony.

Typowe komunikaty stanu:

  • Not loaded – komponent kompensacji ruchu jest zainstalowany w systemie, ale nie został jeszcze załadowany; włącz kompensację ruchu, aby kontynuować

  • Connected to SteamVR – wszystko jest w normie; kompensacja ruchu działa zgodnie z oczekiwaniami

  • SteamVR not running – SteamVR nie jest uruchomiony na Twoim PC; ten komunikat powinien zniknąć po uruchomieniu SteamVR (wykrycie SteamVR może zająć do 30 sekund)

  • SteamVR not initialized – SteamVR nie został jeszcze zainicjalizowany; proszę czekać

Inne komunikaty stanu:

  • Ready – komponent kompensacji ruchu jest załadowany i gotowy do działania; proszę czekać

  • No HMD detected – Twoje gogle nie zostały jeszcze wykryte; upewnij się, że są włączone i rozpoznane przez SteamVR

  • SteamVR not installed – SteamVR nie jest zainstalowany na Twoim PC; zainstaluj SteamVR

  • Driver not installed – sterownik SIMRIG Motion Cancellation nie został wykryty; ponownie zainstaluj SIMRIG Motion Cancellation

  • Incorrect SteamVR version – SteamVR nie jest zainstalowany na Twoim PC albo instalacja SteamVR jest nieaktualna; jeśli jednak czytasz to w przyszłości, możliwe też, że SteamVR wydał nową wersję, która nie jest już wstecznie kompatybilna z SIMRIG Motion Cancellation

  • SteamVR error – SteamVR napotkał nieoczekiwany błąd; sprawdź dziennik, aby poznać szczegóły, i skontaktuj się z pomocą techniczną, jeśli problem nie ustępuje

  • Unknown hardware position – system ruchu jest wyłączony albo brakuje telemetrii z gry, albo SIMRIG SR1 nie raportuje swojej bieżącej pozycji (zaktualizuj firmware do wersji 17 lub nowszej)

  • Failed to load pluginSIMRIG Motion Cancellation jest nieaktualny albo uszkodzony; ponownie zainstaluj SIMRIG Motion Cancellation