Bear 71 و WebVR

اسکرین شات Bear 71

مستند را مشاهده کنید

WebVR یک API ساخته شده در مرورگرها است که رندر استریو را با ردیابی سر در زمان واقعی ترکیب می‌کند و راهی سریع و آسان برای لذت بردن از محتوای VR آنلاین را امکان‌پذیر می‌کند. با WebVR، سازندگان محتوا می توانند محتوای VR همهجانبه ای ایجاد کنند که به صورت آنلاین زندگی می کند و روی طیف وسیعی از سخت افزار VR اجرا می شود.

درباره خرس 71

خرس 71 یک مستند تعاملی است که توسط هیئت ملی فیلم (NFB) کانادا تولید شده است. Bear 71 که در ابتدا در Flash ساخته شد، در سال 2011 منتشر شد و مورد تحسین منتقدان قرار گرفت. ستون فقرات این تجربه یک قطعه صوتی و تصویری 23 دقیقه ای است که رابطه بین انسان، طبیعت، فناوری و یک خرس قهوه ای خاص را برجسته می کند. بیننده یک فضول در دنیایی از اطلاعات است که به صورت شبکه ای انتزاعی از نمادها نمایش داده می شود. با کمال تعجب، این مانعی برای داستان عاطفی درونی نمی کند و برای درک آن باید دست اول تجربه شود.

چالش

Bear 71 اصلی در Flash توسعه یافت. مسلما بهترین رسانه داستان سرایی تعاملی آن زمان بود. توجه زیادی به این فناوری انجام شد و به عنوان یک پیشرو در نظر گرفته شد. پنج سال بعد، چشم انداز اصلی پابرجاست و داستان همچنان مرتبط است، اما فناوری پشت آن نیاز به به روز رسانی دارد. هر فناوری که خلاقانه استفاده شود، می تواند به یک داستان خوب کمک کند، اما واقعیت مجازی مستحق توجه ویژه است. VR قبلا چندین بار آمده و رفته است، اما در نهایت به جریان اصلی رسیده است. این یک فرصت بزرگ برای داستان سرایی است. داستان هایی که به طور سنتی در مقابل شما اتفاق می افتاد، اکنون می توانند در اطراف شما در VR اتفاق بیفتند.

زمانی که Bear 71 ساخته شد، Adobe Flash در سال های طلایی خود بود. هر سال که می‌گذرد، سهم بازار فلش کاهش می‌یابد و با آن، مشاهده آثاری که قبلاً در دسترس بوده‌اند سخت‌تر و سخت‌تر می‌شوند. اما با کاهش Flash، HTML 5 به بلوغ رسیده است. علاوه بر این، VR به عنوان یک پلتفرم واقعی برای داستان سرایی بیشتر از همیشه جدی گرفته می شود.

برای چشم و گوش ما، VR به طور طبیعی غوطه ور است، اما VR موانع متعددی بر سر راه خود دارد. در نگاه اول، تنوع هدست ها باید با بسیاری از نیازها و بودجه ها مطابقت داشته باشد و تنوع اپ استورهای درگیر در توزیع، انتخاب بیشتری است. اما شناخته شده است که کاربران ترجیح می دهند تا حد امکان در یک مرورگر انجام دهند. کاربران ترجیح می دهند تا حد امکان کمتر دانلود و نصب کنند. برای کاربران و سازندگان محتوا به طور یکسان، جذابیت HTML5 این واقعیت است که تجربیات غنی تنها یک URL با شما فاصله دارد. اینجاست که WebVR وارد می شود.

WebVR محتوای VR همهجانبه و راحت را در مرورگر شما در بسیاری از نرم افزارها و سخت افزارها فعال می کند.

NFB این فرصت را تشخیص داد و به Bear 71 جان تازه ای در HTML5 و WebVR داد. این فرصت بدون چالش جدید مشترک در بسیاری از پروژه‌های واقعیت مجازی نیست: چگونه می‌توانیم به چیزهای زیبا، با نرخ فریم خوب، در دید استریو، در پلتفرم‌های مختلف از جمله تلفن‌های همراه دست پیدا کنیم؟

راه حل

در طول شروع توسعه در اواخر سال 2016، WebVR هنوز به راحتی در دسترس نبود. WebVR API به سرعت در حال تکامل است و استاندارد WebVR در حال حاضر در حال تدوین است. اما این امر باعث نشد که جامعه نتواند یک توقف مناسب را با هم بسازد: WebVR polyfill . ردیابی سر قابل استفاده و رندر استریو از طریق ژیروسکوپ و WebGL را ارائه می دهد. این polyfill همراه با Google Cardboard به ما امکان ساخت و آزمایش محتوا را داد. هنگامی که Google Pixel و Daydream View همراه با اولین ساخت‌های واقعی WebVR در Chrome در دسترس قرار گرفتند، محتوای ما برای استفاده از آن آماده بود. برای توسعه سریع، ما هنوز هم polyfill را در جایی که WebVR هنوز در دسترس نیست گنجانده و استفاده می کنیم. به عنوان مثال، ما بیشتر توسعه و اشکال زدایی خود را در شبیه ساز موبایل Chrome 55 انجام می دهیم. همچنین، توسعه و اشکال زدایی در هر چیزی که به راحتی در دسترس بود، از جمله HTC One M9، iPhone 5S، Samsung Galaxy و البته Pixel by Google، رایج بود. تطبیق پذیری پلی فیل را نمی توان دست کم گرفت.

علیرغم کاربرد polyfill، برخی از ویژگی های ضروری WebVR به سادگی قابل تقلید نیستند. شایان ذکر است که یکی از بزرگترین موانعی که VR با آن مواجه است بیماری حرکت است. بیماری حرکت، در میان بسیاری از موارد، با نرخ فریم و سرعت و دقت ردیابی سر مرتبط است. WebVR دارای چند ویژگی ضروری مانند بازپرداخت مجدد و سنسورهای جهت گیری با سرعت بالا است. با این حال، حفظ نرخ فریم بالا همچنان بر عهده سازندگان محتوا است. از آنجایی که WebVR نیاز به رندر کردن صحنه دو بار (یک بار برای هر چشم) در هر فریم دارد، بهینه سازی اهمیت دو چندان دارد. بهینه سازی صحیح محتوای WebGL خارج از محدوده این مقاله است، اما در اینجا چند نکته کلیدی وجود دارد:

  • تماس های قرعه کشی خود را کاهش دهید. یک راه عالی برای انجام این کار، ادغام عناصری است که یک ماده مشترک دارند.
  • شیدرهای خود را ساده نگه دارید. مواد استاندارد و شیدرها کار بسیار خوبی در بهینه سازی ویژگی های استفاده نشده انجام می دهند، اما گاهی اوقات نوشتن شیدرهای بهینه سازی شده با دست بهترین راه است.
  • فاصله قرعه کشی خود را نزدیک نگه دارید و از مه به طور موثر استفاده کنید.
  • متن مبتنی بر بافت را ترجیح دهید، که بهتر خوانده می شود و سریعتر از هندسه متن ارائه می شود.
  • مطمئن شوید که سبک هنری شما برای ارائه مقرون به صرفه است. بهتر است شبیه Super Mario 64 با سرعت 60 فریم بر ثانیه باشد تا Mario Galaxy با سرعت 6 فریم در ثانیه.
  • با کاربر به‌عنوان یک فرد تک‌نگر رفتار کنید: راه‌هایی را بیابید که فقط دنیای اطراف بازیکن را شبیه‌سازی کنید.
  • به دنبال فرصت هایی برای ذخیره نتایج محاسبات گران قیمت در آرایه های تایپ شده باشید. حافظه اغلب ارزان تر از قدرت پردازش است.

این فهرست جامعی نیست، اما بیشتر بهینه‌سازی‌هایی را که برای اجرا با نرخ فریم خوب در اکثر دستگاه‌ها استفاده می‌کردیم، پوشش می‌دهد.

ایجاد، تغییر کاربری و بهینه سازی محتوا برای یک تیم کوچک متشکل از 8 مشارکت کننده شاد تقریباً 12 هفته طول کشید. تلاش هم شدید و هم بدون درد بود. Bear 71 VR قبلاً در 2 جشنواره فیلم حضور محدود داشته است و بازخوردهای مثبتی نیز به همراه داشته است. برای کسانی از شما که نمی توانید آن را در مدار جشنواره پیدا کنید، WebVR می تواند تجربه را در راحتی مرورگرتان برای شما به ارمغان بیاورد. اگر قصد دارید یک پروژه خلاقانه جدید را در نظر بگیرید، به یاد داشته باشید: وب بستری برای ارائه محتوای غنی است که ما نباید آن را بدیهی بدانیم. VR اینجاست تا ما را به دنیای جدید اختراعمان منتقل کند. و WebVR اینجاست تا بهترین های هر دو را ترکیب کند.