Emulacja HTC Vive - mini poradnik do "BiedoVive".

Poradniki dotyczące technologii Wirtualnej Rzeczywistości.
Awatar użytkownika
Autor tematu
BaUEr
Użytkownik
Nowy użytkownik
Posty: 5
Rejestracja: pt 26 lut 2016, 12:09
Gogle VR: Baofeng Mojing IV
Telefon: Samsung Galaxy S4 i9505
    Windows 10 Chrome
Płeć: Mężczyzna

Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BaUEr » wt 03 sty 2017, 23:58

Psmoveservice + Riftcat = Emulowany HTC Vive (mini poradnik)

Jeżeli posiadasz w miarę mocny komputer oraz odpowiedni telefon z zestawem do cardboard i chcesz EMULOWAĆ HTC VIVE , a nie wiesz jak się za to zabrać/masz problemy, ten mini poradnik możę Ci w tym pomóc.

Na youtube znajdziecie podstawy, to jak podłączyć kamery, uruchomić je w 60fps, rozwiązać problemy gdy nie chcą się uruchomić, sparować 3szt. ps3move-y z PC, wszelakie kalibracje, edycje pliku steamvrsettings, itp. Nie będę się o tym rozpisywał, by nie powielać niepotrzebnie. Obecnie korzystam z psmoveservice v5.5.3. , najwięcej korzystałem z rad Daley Tech-a - polecam Jego kanał na ytbe.

Zanim zaczniesz się w to bawić, dowiedz się, czy Twój komputer jest na to gotowy, oraz czy Twoje pomieszczenie się do tego nadaje (o tych sprawach poniżej w punktach - pkt.2 oraz pkt.5).

Najważniejszą rzeczą której nikt nie mówi/nie pokazuje (bez czego to działać nie będzie wg. mnie) to to, że : KOLORY W KAMERACH USTAWIAMY MAJĄC ODPALONY STEAM VR (wszystkie 3 kontrolery świecą). Jeżeli posiadasz Leap Motion .... ten również musi być URUCHOMIONY podczas ustawiania kolorów (kamery widzą te 3 diody migające - leap motion ustawiamy frontem do kalibrowanej kamery).

Ustawienie tego co "widzi" kamera (kolorów w trybie masked) jednorazowo jest dość wymagające (cierpliwość/czas). Raz ustawione zostaje już tak NIEZMIENNE, dopuki.. (o tym później w punkcie 1-szym). Cała trudność polega na tym, aby każda z kolei kamera, potrafiła dokładnie rozpoznać dany kolor (gdy świecą wszystkie) nie myląc go ani nawet na 0,01 sek. z żadnym innym, niezależnie od jego położenia - bliżej/dalej (jeżeli pomyli, kontrolery będą skakać/padaczkować).
Zaczynając od "Tracker 0" , mając wybrany "kolor" , kalibrujemy wszystkie kolory nas interesujące (3szt.) na nazwijmy to "na danym kolorze". Następnie na tym samym Tracker 0, zmieniamy na kolor następny i znów kalibrujemy wszystkie 3 szt. Zaraz po tym... nadal zostając na Tracker 0, zmieniamy na ostatni już kolor 3-ci i ponownie kalibrujemy wszystkie 3 interesujące nas kolory. Czyli... przy każdym "Trackerze", wykonujemy 3 kalibrację razy 3 kolory które nas interesują. Całą tą operację należy powtórzyć na każdym "Trackerze" , czyli oddzielnie dla każdej kamery 4x3x3 dla każdego koloru oddzielnie. Podczas uruchomionego Steam VR, kolory na padach będą się zmieniać dzięki czemu kalibracja będzie we wszystkich możliwych wariantach\kombinacjach dla każdej kamery i koloru. Jeżeli posiadasz Leap motion, pamiętaj aby ustawić je włączone frontem do kamery podczas kalibracji kolorów na danym Trackerze, w innym wypadku cała praca pójdzie na marne.
Ustawienie wstępne - całość, ostatnio zajęła mi 31min (pierwsze podejście może Wam zająć dłużej, lub krócej). Po ponownym uruchomieniu komputera... całość należy powtórzyć. Czasami x1, czasami nalezy uruchomić ponownie i powtórzyć raz jeszcze. Na pocieszenie, kolejne powtórzenia kalibracji to często już tylko "poprawki" , gdzie np. jeden kolor miesza się z innym. Jednak... przygotować się trzeba na ewentualność rozpoczęcia procesu od ZERA. Jak pisałem, cierpliwość wskazana.
Dla każdej kamery należy ustawić wszystko oddzielnie, nie ma jednego dobrego ustawienia dla wszystkich, ponieważ każda kamera "łapie" inną ilość światła. Jedynym stałym ustawieniem z którego korzystam dla każdej kamery jest "Exposure" oraz "Gain" znaleźć je można po lewej stronie w zakładce "Calibrate tracking colors". W moim pomieszczeniu z 2-ma żarówkami halogenowymi 60w (dość jasno, ale bez przesady), najlepsze okazały się wartości "56" dla obu. Może to komuś pomoże.
Poniżej w punktach wymienię swoje spostrzeżenia\wskazówki. Wybrałem tą formę aby nie rozpisywać się opisowo. Jeżeli masz jakiś problem ze swoim tanim VIVE, zerknij , może w tych punktach znajdziesz wyjaśnienie.
1.Polecam raz obrane gniazdo USB przypisać i oznaczyć na stałe do wtyczki kamery. Każda zmiana gniazda dla danej kamery, wgrywa do niej nowy sterownik, przez co kasuje całkowicie ustawienia "Capture Tracking Colors", czyli to z czym najdłużej trzeba się pobawić. Każdorazowe wgranie nowego sterownika, ma swoje odbicie w ich ilości co podgladnąć można w USBdeview. Zbyt duży bałagan tam? skutkować może tym, że kamerki przestaną w ogóle odpowiadać/lub będą wyświetlały 2kl/s. Na ytbe znajdziecie filmik w razie problemu z kamerami, pokazują tam jak oczyścić niepotrzebne sterowniki.

2.Gdy już jesteśmy przy kamerach. Ważne jest aby działały w 60fps. Bez chwilowych "zrywów", "mikroprzycinek" itp. Wtedy pomimo włożonej pracy, spodziewać się możecie flustracjii, próbując przycinający system w SteamVR (szczególnie skoki positional trackingu sa niedopuszczalne). Z mojej obserwacji na kilku konfiguracjach, aby uruchomić 4x ps3 eye należy mieć :
- 4 rdzeniowy procesor
- kontroler USB 3.0 na płycie głównej (z takim na śledziu nie próbowałem) same kamerki działają spokojnie pod 2.0, chodzi tu chyba o max transfer dla samego już kontrolera.
Jeżeli 4 podłączone kamery nie działają super płynnie, lepiej sobie darować, lub zmienić sprzęt, zanim poświęcicie jakikolwiek czas na tą zabawę.
3.Osobiście posiadam teraz w komputerze 16 gniazd USB ;-) prawie bez przerwy są wszystkie bądź większość zajęte (należy mieć to na uwadze przy kompletowaniu gratów).

4.Jeżeli kontrolery pomimo kalibracji, kombinacji nadal skaczą (zakładając, że kamery śmigają w 60fps) Problemem może być :
- lustrzane odbicia w TV, posterze na ścianie itp.
- kamera myli kontroler innym źródłem światła (okno, lampa, rozbłysk na kubku/szklance, diody migające na routerze, komputerze, innych urządzeniach itp.) - tu warto zaznaczyć, iż monitor w kamerze również jest uważany czasami za kontroler = skoki/padaczki/szarpanie, więc lepiej obrócić go na stałe tyłem do kamer. (podglądnąć to można kalibrując za pomocą maty kontrolery, wtedy zmieniając "tracker" widzi się, czy łapie jakieś obiekty niechciane)
- zmieniło się oświetlenie w pokoju (cała kalibracja nie do końca jest aktualna - dlatego warto bawić się zawsze przy tym samym oświetleniu)
- rozkalibrował się jakiś kolor z "Capture tracking Colours" , należy zerknąć co tam się dzieje (raczej rzadko)
- kamera zmieniła swoje fizyczne położenie (może zahaczona przypadkiem coś, wtedy zmienia się ilość łapanego światła = wszelakie ustawienia nie są już aktualne)
- jeżeli było idealnie a nie jest, sprawdź wszystko po kolei.. coś mogło się wykrzaczyć ;) lub pojawił się jakiś nowy obiekt w polu kamery emitujący/odbłyskujący światło.
KAMERY po "Capture Tracking Poses" MAJĄ DZIWNE POŁOŻENIE :
-jeżeli kamery podczas testu trakingu nie są na swoich miejscach.... ustawienie kolorów widzianych przez kamere jest nieprawidłowe, bądź coś przeszkadza w kalibracji (światło wpadające przez okno itp. każde inne źródło światła mogace być widziane jako kontroler). Jedno jest pewne, gdy kolory są ustawione dobrze i nic nie przeszkadza, już za pierwszą kalibracją kamerki w "Test tracking" będą pokazywane dokładnie tak jak rozmieszczone są w rzeczywistości.

5.Steam VR to przede wszystkim produkcje korzystające z Room Scale. Wiele z nich wymaga określonego pola, inaczej zabawa może być nawet niemożliwa. Moim zdaniem, posiadając za mały obszar do gry, może się okazać, że zabawa będzie flustrująca. To własnie możliwość "chodzenia" fizycznego, do okoła 3-wymiarowych obiektów, daje najlepsze wrażenie "obecności". Jeżeli te pole jest zbyt małe, zapora antykolizyjna w Steamie jest prawie non stop włączona... zadowolenie z "psitional tracking" może być połowiczne. Polecam wygospodarować obszar minimum 1,6/1,8m lub taki jak u mnie około 2,3x2,3. Wcześniej miałem okazję grać na 2,2x1,8m również było ok, więc wcale nie musi z tego wyjść kwadrat.

Poczyniając pewne obliczenia, testy na temat FOV-u kamerek, system uruchomiony u mnie, sprawdza się do wzrostu ok 180\182cm, pozwalając na zabawę na obszarze 2,3m x 2,2m (gdy biurko wróci od stolarza będzie trochę więcej, liczę na 2,4 x 2.4m lub nieco więcej). Warto tu walczyć o każde 10-20cm ;) . Moje ustawienia kamerek to kwadrat 2,6m , na wosokości 2,1m. Z moich spostrzeżeń wynika, że wszystko działa najlepiej (najlepiej oddaje ruchy, bez przekłamań itp.) wówczas gdy kamery ustawione są wręcz pedantycznie symetrycznie. By tego dokonać, należy połączyć na podłodze miejsca gdzie wypada pozycja kamer, za pomocą lini widocznych w "test camera" oraz ustawić wszystko pod te dwie przecinające się linie. Osobiście wysokość centrum pokoju, ustawiłem na 1/6 wysokości widzianej w podglądzie kamery widzianej od dołu. Stolik z kartką do kalibracji jednak, ustawiłem ukośnie do tego co widzi kamera, frontem do jednej z 2 par kamer (gdy było prostopadle, pojawiały się przekłamania pozycji). Ustawienia te nie są "ostateczne", możliwe , że w przyszłości coś zmienię, na chwilę obecną nic lepszego nie udało mi się wymyślić/przetestować, a kombinowałem już na różne sposoby.

6. Podczas uruchamiania SteamVR , ważne, wręcz przymusowe jest, aby... headset leżał dokładnie tam (najważniejsza jest wysokość) gdzie kalibrowało się go w przygowywaniu pokoju. Osobiście kładę headset na środku pola na ziemi (tak tez kalibrowałem w room setup, jako wysokość, wpisując wysokość "WZROKU = 6cm" a nie 0cm, gdyż teoretycznie headset leży na ziemi przecież). Po uruchomieniu Steam VR polecam wcisnąć reset położenia (przycisk ustalony w Riftcat), odczekać chwilę aż Vridge ustali rzeczywisty środek, oraz wcisnąć reset położenia ponownie. Ten pozostaje już prawie zawsze niezmienny, dopóki nie wyłączysz SteamVR, bądź przypadkowo go nie zresetujesz. Podglądnąć czy ustawiło się wszystko dobrze, warto w duplikacie ekranu (z wnętrza headsetu). Zdazyło mi się, że przycisk reset nie reagował, wtedy należy zrestartowac SteamVr oraz Riftcat.

7. DRITFUJĄCY TELEFON lub PADY. Ten pierwszy idzie okiełznać korzystając z opcji Vridge w telefonie. U mnie lepiej sprawdza się 2-ga od góry "Statycznie". Driftujący pad pomimo wielokrotnej kalibracji? wg. mnie zależy od kondycji padów (ile razy upadły, bądź czy zostały dobrze wyprodukowane). Z moich jeden driftuje bardziej, co jakiś czas kieruję go w kierunku FRONT w steamVR room przytrzymując na chwile przycisk SELECT - ustawia to pad do idealnego położenia. Jeżeli na początku po włączeniu wszystko jest super, a pady driftują w około Ciebie, a nie w około własnej osi.... to nie pady driftują, sprawdź ustawienie driftingu telefonu w Vridge (jak pisałem chwile wcześniej).

8. Może to jest jasne, ale napiszę : kulka movesa od headtrackingu, najlepiej aby wypadała idealnie na środku głowy. W innym wypadku pojawią się przekłamania dziwne, gdy skręcając głowę w którąś ze stron, jednoczesnie się przybliżysz/oddalisz, bądź celowanie z jakiś łuków itp. / stanie się mało możliwe/naturalne.

9. Polecam zakupić sobie ładowarkę na 4szt. ps3move. Ładowanie 4h osobno każdy, kablem , gdzie tylko i wyłącznie oryginalny kabel od ps3 działa, może okazać się zbyt długie. Ładowarkę można kupic za ok 30zł.

10. SteamVR błąd 308 lub 301. Z moich obserwacji wynika, ze ma to związek z kontrolerami, joystickami, kierownicami itp. (również leap motion). SteamVR czasami nie lubi gdy są one podłączone gdy Steam jeszcze nie został uruchomiony. Wypięcie i wpięcie kontrolera z gniazda usb, czasami pozwala na unikniecie "restartu kompa" który często leczy wiele "chorób" xD. Tak czy inaczej, jeżeli ktoś posiada problemy z w/w, wiadomo przynajmniej z czym ma to związek.

11. Polecam zakup kontrolera Leap Motion. Używany można dostać za ok 150-200zł. Najlepiej wydane 200zł jakie można na VR wydać wg. mnie. Mam wrażenie. że to jest przyszłość (niebawem ma pokazać się wersja ze 180-cio stopniowym polem śledzenia). Może to moje indywidualne spostrzeżenie, ale bez tego czujnika, uważam, że każdy headset z positional trackinkiem (przy czym również Emulowany Vive) traci baardzo dużo, ponad połowę "dostępnej frajdy". Moi znajomi wielokrotnie właśnie to wspominają, jako najlepsze co u mnie oglądali w ostatnich dniach, myślę podobnie jak widać.

12. Osobiście używam do trakingu głowy koloru żółtego, oraz czerwonego i cyjan dla kontrolerów w rękach. Próbowałem różnych kombinacji, w moim oświetleniu w pokoju te wypadły najlepiej (lub wcześniej czegoś nie wiedziałem, ale wspominam, gdyż to jakiś tam element układanki może dla Was będzie istotny).

PODSUMOWANIE:
Sam system taniego VIVE w sobie nie jest idealny. Gdy zastosujemy Positional Tracking z 3-ciego move oraz czujnik leap motion do aplikacji pod niego stworzonych, wszystko działa idealnie wręcz - nie ma się do czego przyczepić (chyba najlepsze VR doznania , dzięki prawdziwym dłonią we VR zamiast kontrolerów ). Gdy gramy w symulacje ala ProjectCars, jest super również. W takim samochodzie jak się okazuje, również ten positional tracking robi różnicę. Symulacji lotniczej nie próbowałem, ale stawiam, że będzie podobnie dobrze.

Jednak gdy gramy w aplikacje/gry z użyciem ps3move, momentami cały ten Tani Vive wymaga od nas szybkiej rekalibracji (kontrolery przy headsecie i start/select jednocześnie, później każdy kontroler w stronę SteamVR front przytrzymując Select na chwilę). Cała rekalibracja trwa kilka sekund, są aplikacje/gry gdzie w zasadzie raz wystarczy to poczynić. Odpalałem jednak również takie, gdzie w zasadzie nie dało się grać, gdyż co chwile tego "wołało".
Pamiętać należy, że jest to EMULACJA, nikt nie gwarantuje, że zawsze bedzie wszystko działać tak jak w HTC, lub się coś nie rozkalibruje wymagając "poprawki". Po 2 tyg używania i testów, powiedzieć mogę, że wszystko działa w miarę stabilnie bez większych wykrzaczeń.
Kończąc, wspomnę tylko, iż warto mieć na uwadze, że cała technologia VR nie jest do tej pory przetestowana/zbadana itp. Nie wiadomo jak wpływa na umysł oraz fizyczne fukncję ludzkiego organizmu. Gdy zbudujecie swoje zestawy VR, zalecam zachować jednak pewien dystans. To tak w ramach BHP ;-) lepiej ostrzegać/zapobiegać niż później leczyć (o ile się będzie dało).

Pozdrawiam i życzę powodzenia oraz cierpliwości przy kolorach :)
BaUEr.

** "zezwalam na kopiowanie poradnika na inne strony bez wiedzy i zgody autora, pod warunkiem, że dostęp do niego będzie w 100% darmowy\dostępny dla wszystkich zainteresowanych" **
Ostatnio zmieniony śr 04 sty 2017, 16:03 przez BaUEr, łącznie zmieniany 1 raz.

Awatar użytkownika
Remlas
Administrator
Nowy użytkownik
Posty: 464
Rejestracja: wt 05 sty 2016, 17:28
Gogle VR: Stock Google Cardboard 1.0
Telefon: Neo V / S4
    Linux Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: Remlas » śr 04 sty 2017, 07:29

Podpowiem, jeśli oczywiście chcesz, może być warto dopisać "zezwalam / zabrania się kopiowania poradnika na inne strony bez wiedzy i zgody autora" ;)

no i ładnie się rozpisałeś. :)
Szanuj Admina swego, bo możesz mieć gorszego...

Awatar użytkownika
Autor tematu
BaUEr
Użytkownik
Nowy użytkownik
Posty: 5
Rejestracja: pt 26 lut 2016, 12:09
Gogle VR: Baofeng Mojing IV
Telefon: Samsung Galaxy S4 i9505
    Windows 10 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BaUEr » śr 04 sty 2017, 16:05

Thx, dopisałem ;) przepraszam za błędy , pisałem to "na szybko" ;) niektóre właśnie wychwyciłem i poprawiłem.

Awatar użytkownika
StoKI
Użytkownik
Nowy użytkownik
Posty: 2
Rejestracja: pn 19 gru 2016, 15:45
Gogle VR: Samsung Gear VR 2016
Telefon: Galaxy S6 Edge
    Windows 10 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: StoKI » czw 05 sty 2017, 20:31

A możesz nagrać jakiś filmik jak u cb to działa? I czemu nie skorzystać z wersji 6 ps move? Możesz też doradzić jaki adapter bluetooth kupić bo nie ma pojęcia jaki wybrać? Z góry dzięki :D

Awatar użytkownika
Autor tematu
BaUEr
Użytkownik
Nowy użytkownik
Posty: 5
Rejestracja: pt 26 lut 2016, 12:09
Gogle VR: Baofeng Mojing IV
Telefon: Samsung Galaxy S4 i9505
    Windows 10 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BaUEr » pt 06 sty 2017, 16:28

Działa tak :

http://www58.zippyshare.com/v/JbcEvOvx/file.html (filmik zawiera dwie prezentacje, powinien nadal być aktualny, wysyłałem Go kilka dni temu gościowi z Kanady)

Adapter mam ASUSA BT 400 (taki zalecają, ale podobno na jakiejś Esperanzie też działa , tu musisz popytać dokładnie jaki - jest tańsza - tematu nie znam)

W wersji 6, trzeba coś tam powyłączać, nie chciało mi się do tej pory jakiś plików edytować skoro wszystko super działa na 5.5.3 (bez tego cała trakcja skacze, a nie wiadomo czy to wyłączenie czegoś, by pomogło, darowałem sobie chwilowo sprawdzanie)

Nie ma sprawy ;) pozdr

Ps(edit) : jeżeli długo tu nie odpowiadam to z góry sory, nie loguję się zbyt często. Gdy przyjdzie mi na maila powiadomienie (którego też często nie sprawdzam) wtedy odpowiadam.

edit2 : korzystałem z tego poradnika:

https://www.youtube.com/watch?v=W7rogPZFdL4

Awatar użytkownika
BartoszPrzechera
Nowy użytkownik
Nowy użytkownik
Posty: 2
Rejestracja: pt 06 sty 2017, 23:53
Gogle VR: DreamzVR 2.0 fresnel
Telefon: LG G3
    Windows 7 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BartoszPrzechera » pt 06 sty 2017, 23:55

A dałoby się zamiast 3-ciego kontrolera służącego do śledzenia headsetu użyć diody świecącej na dany kolor ?

Awatar użytkownika
Autor tematu
BaUEr
Użytkownik
Nowy użytkownik
Posty: 5
Rejestracja: pt 26 lut 2016, 12:09
Gogle VR: Baofeng Mojing IV
Telefon: Samsung Galaxy S4 i9505
    Windows 10 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BaUEr » sob 07 sty 2017, 00:03

Nie próbowałem, ale pinpongi dwa w szufladzie czekają ;) raczej w przyszłości musowe hyh :D prawie 150g psmove waży :P
Na chwile obecną musiałby w szufladzie włączony leżeć jeden kontroler, ale w przyszłości ma być możliwe podobno włączenie "wirtualnego" w psmoveservice.

Awatar użytkownika
BartoszPrzechera
Nowy użytkownik
Nowy użytkownik
Posty: 2
Rejestracja: pt 06 sty 2017, 23:53
Gogle VR: DreamzVR 2.0 fresnel
Telefon: LG G3
    Windows 7 Chrome
Płeć: Mężczyzna

Re: Emulacja HTC Vive - mini poradnik do "BiedoVive".

Postautor: BartoszPrzechera » sob 07 sty 2017, 00:48

Myślę że jeśli dałoby się emulować kontrolery i użyć piłeczek pinpongowych i diód oraz kontrolerów bluetooth za 20 zł to było to o wiele tańsze rozwiązanie a efekt ten sam


Wróć do „Poradniki”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 0 gości