Bear 71 i WebVR

Zrzut ekranu Bear 71

Zobacz film dokumentalny

WebVR to interfejs API wbudowany w przeglądarkę, który łączy renderowanie stereo z funkcją śledzenia ruchów głowy w czasie rzeczywistym, co pozwala szybko i łatwo cieszyć się treściami VR online. Dzięki WebVR twórcy treści mogą tworzyć wciągające treści VR, dostępne online i działające na szerokiej gamie sprzętu do rzeczywistości wirtualnej.

Bear 71 – informacje

Bear 71 to interaktywny dokument wyprodukowany przez kanadyjski National Film Board (NFB). Gra Bear 71, pierwotnie stworzona we Flashu, została wydana w 2011 r. i spotkała się z dużym uznaniem użytkowników. Głównym elementem tego projektu są 23-minutowe nagrania audio i wideo, które skupiają się na relacjach między ludźmi, naturą, technologią i jednym konkretnym niedźwiedziem brunatnym. Widz jest podglądaczem w świecie informacji przedstawionym jako abstrakcyjna siatka symboli. Co ciekawe, nie ogranicza to emocjonalnego zjawiska i należy go dostrzec na własne oczy.

Wyzwanie

Oryginalna wersja Bear 71 powstała we Flashu. Podobno był to najlepszy interaktywny sposób narracji w tamtych czasach. Technologia włożyła się z dużą uwagą i została uznana za najnowocześniejszą. Po 5 latach pierwotna wizja zostaje zachowana, historia wciąż jest aktualna, ale technologia, która się za nią stworzyła, wymaga zaktualizowania. Każda technologia wykorzystana w kreatywny sposób może pomóc w opowiedzeniu historii, ale rzeczywistość wirtualna zasługuje na szczególną uwagę. Rzeczywistość wirtualna często się zmienia, ale w końcu znalazła się do głównego nurtu. To doskonała okazja do opowiedzenia historii. Historie, które do tej pory zdarzały się przed oczami, teraz mogą też rozgrywać się wokół nas w rzeczywistości wirtualnej.

Gdy powstała aplikacja Bear 71, w swojej swej swej mierze rozpoczęto Adobe Flash. Z każdym rokiem udział Flash w rynku maleje, a w efekcie dzieła, które wcześniej były dostępne, są trudniejsze do wyświetlenia. Jednak wraz z upadkiem Flasha przyszła dojrzałość HTML5. Ponadto rzeczywistość wirtualna jest traktowana bardziej poważnie niż kiedykolwiek jako prawdziwa platforma do opowiadania historii.

Dla naszych oczu i uszy rzeczywistość wirtualna to rzeczywistość, która niesie ze sobą pewne przeszkody. Na pierwszy rzut oka różnorodność zestawów słuchawkowych powinna odpowiadać wielu potrzebom i budżetom, a różnorodność sklepów z aplikacjami wykorzystywanymi w dystrybucji jest jeszcze większa. Wiemy jednak, że użytkownicy wolą robić jak najwięcej w przeglądarce. Użytkownicy wolą pobierać i instalować jak najmniej aplikacji. Zarówno dla użytkowników, jak i twórców treści atrakcyjność HTML5 tkwi w tym, że zaawansowane funkcje są dostępne za pomocą jednego adresu URL. Tutaj do akcji wkracza WebVR.

WebVR umożliwia wyświetlanie wciągających i wygodnych treści VR w przeglądarce, z zastosowaniem wielu programów i sprzętu.

NFB dostrzega tę możliwość i rozważa stworzenie nowego życia dla platformy Bear 71 w HTML5 i WebVR. Nie byłoby to bez nowego wyzwania, które jest wspólne dla wielu projektów VR: jak osiągnąć piękno, z dobrą szybkością klatek i obrazem stereo, na różnych platformach, w tym na telefonach komórkowych?

Rozwiązanie

Na etapie prac programistycznych pod koniec 2016 roku technologia WebVR nie była jeszcze łatwo dostępna. Interfejs WebVR API szybko się rozwija i obecnie pracujemy nad jego standardem. Nie powstrzymało to społeczności przed wdrożeniem odpowiednich poprawek: kodu polyfill WebVR. Firma zapewniła możliwość śledzenia ruchów głowy i renderowania stereofonicznego za pomocą żyroskopu i WebGL. Zastosowano technologię polyfill w połączeniu z Google Cardboard, co pozwoliło nam zacząć tworzyć i testować treści. Gdy udostępniliśmy Google Pixel i DayVR oraz pierwsze kompilacje WebVR w Chrome, nasze treści mogły z nich korzystać. Na potrzeby szybkiego programowania wciąż uwzględniamy kod polyfill w sytuacjach, w których WebVR nie jest jeszcze dostępny, i używamy go. Na przykład programowanie i debugowanie wykonujemy głównie w mobilnym emulatorze Chrome 55. Programowanie i debugowanie aplikacji często odbywało się na urządzeniach, które były łatwo dostępne, np. na HTC One M9, iPhone'ach 5S, Samsung Galaxy i oczywiście Pixel od Google. Wszechstronność kodu polyfill nie może być zaniżona.

Polyfill jest przydatny, ale nie da się emulować niektórych podstawowych funkcji WebVR. Jedną z największych przeszkód w świecie VR jest choroba lokomocyjna. Choroba lokomocyjna jest związana m.in. z liczbą klatek oraz szybkością i dokładnością śledzenia ruchów głowy. WebVR ma kilka podstawowych funkcji, takie jak reprojekcja czy czujniki orientacji z dużą prędkością. Jednak za utrzymanie wysokich liczby klatek odpowiadają twórcy treści. WebVR wymaga dwukrotnego wyrenderowania sceny (raz dla każdego oka) na klatkę, więc optymalizacja jest podwójnie ważna. Właściwa optymalizacja zawartości WebGL nie jest omówiona w tym artykule, ale oto kilka najważniejszych kwestii:

  • Zmniejsz liczbę wywołań rysowania. Świetnym sposobem na to jest łączenie elementów, które współdzielą materiał.
  • Nie komplikuj cieniowania. Standardowe materiały i shaki świetnie radzą sobie z optymalizacją nieużywanych funkcji, ale czasem najlepszym sposobem jest ręczne brutalne pisanie cieni.
  • Utrzymuj dystans rysowania blisko siebie i skutecznie korzystaj z mgły.
  • Preferuj tekst oparty na teksturach, który czyta się lepiej i renderuje szybciej niż tekst geometryczny.
  • Renderowanie Twojego stylu grafiki powinno być ekonomiczne. Lepiej wyglądać jak Super Mario 64 przy 60 kl./s niż Mario Galaxy przy 6 klatkach na sekundę.
  • Traktuj użytkownika jak solipsisty – znajdź sposób, by symulować tylko świat wokół gracza.
  • Poszukaj możliwości zapisywania w pamięci podręcznej wyników kosztownych obliczeń w tablicach wpisanego w pamięci podręcznej. Pamięć jest często tańsza niż moc obliczeniowa.

Ta lista nie jest wyczerpująca, ale obejmuje większość optymalizacji, które wprowadziliśmy podczas działania z dobrą liczbą klatek na sekundę na większości urządzeń.

Utworzenie, ponowne wykorzystanie i zoptymalizowanie treści zajęło około 12 tygodni w ramach małego zespołu złożonego z 8 zaangażowanych współtwórców. Wysiłek był ciężki i bezbolesny. Platforma Bear 71 VR występowała już w ograniczonym zakresie na 2 festiwalach filmowych i uzyskała pozytywną opinię na ich temat. Osoby, które nie mogą znaleźć tego rodzaju treści na festiwalu, mogą skorzystać z technologii WebVR, bezpośrednio w przeglądarce. Zastanawiasz się nad nowym projektem kreatywnym: pamiętaj, że internet jest platformą dostarczania rozbudowanych treści, którą uważamy za oczywiste. Technologia VR przeniesie nas do nowych światów naszych wynalazków. WebVR łączy w sobie to, co najlepsze.