تعاملات اصلی در آزمایشگاه WebVR

آزمایشگاه VR

مشاهده آزمایشگاه

طراحان وب سایت با ایده طراحی ریسپانسیو، ساخت یک وب سایت برای کار در دستگاه های مختلف مانند تلفن های همراه، تبلت ها و رایانه ها و وضوح صفحه نمایش و نسبت پیکسل های مختلف آشنا هستند. WebVR چالش های جدیدی را برای ایده طراحی واکنش گرا معرفی می کند.

ما می توانیم یک تجربه WebVR را با دو معیار - سطح غوطه وری و سطح ورودی طبقه بندی کنیم. این سطوح با "درجات آزادی" (DOF) متمایز می شوند. 6 DOF به ردیابی موقعیت و جهت اشاره دارد، 3 DOF فقط جهت ردیابی است و 0 DOF نه موقعیت و نه جهت را ردیابی می کند.

سطح غوطه وری

  • بدون VR - مانیتور یا نمایشگر موبایل.
  • Stationary VR - دستگاه با ردیابی 3 DOF.
  • VR نشسته - ردیابی 6 DOF اما در محدوده و محدوده زاویه محدود.
  • اتاق مقیاس VR - ردیابی 6 DOF با محیطی به اندازه اتاق.

سطح ورودی

  • 0 DOF - تنها ورودی موجود یک کلیک یا ضربه است. این روش ورودی به جهتی که کاربر با آن روبرو است گره خورده است. گاهی اوقات از این به عنوان کنترل کننده نگاه یاد می کنیم.
  • 3 DOF - کنترل کننده ای که جهت گیری خود را ردیابی می کند می تواند مانند یک اشاره گر لیزری برای تعیین یک جهت یا یک مکان استفاده شود. موقعیت کنترلر بر اساس دیدگاه کاربر تخمین زده می شود. این شامل کنترلر Daydream نیز می شود.
  • 6 DOF - کنترل کننده ای که موقعیت و جهت خود را ردیابی می کند. این می تواند برای شبیه سازی نزدیک یک دست در VR استفاده شود.

بنابراین می‌توانید ببینید که یک برنامه کاربردی ممکن است هر چیزی را از یک نمایشگر تلفن همراه غیر VR فقط با یک کلیک برای ورودی تا یک تجربه در مقیاس اتاق کامل با دو کنترلر دستی کاملاً ردیابی شده پشتیبانی کند.

آزمایشگاه وب وی آر

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

تعاملات چگونه کار می کنند

مکانیک اساسی نحوه عملکرد تعاملات در آزمایشگاه WebVR، تقاطع پرتوها هستند. کف، اتاق و هر اشیایی که بتوان با آنها تعامل داشت بر اساس یکی از سه شکل اولیه تعریف می شوند:

  • جعبه مرزی تراز محور (یا AABB) - جعبه ای که چرخانده نشده است.
  • جعبه محدود کننده جهت دار - جعبه ای که می توان آن را چرخاند.
  • کره - شعاع اطراف یک نقطه در فضا.

برای اینکه ببینیم آیا یک عمل امکان پذیر است یا نه، پرتوی را به جهان پرتاب می کنیم و آزمایش می کنیم که آیا پرتو با شکل اجسام در جهان تلاقی می کند یا خیر. بسته به اینکه پرتو از کجا منشأ می گیرد (دوربین یا کنترلر) و طول پرتو (دستکاری های نزدیک یا اشاره به فاصله) انواع مختلفی از تعامل ممکن است.

اقدامات ساده

ابتدا چند عمل ساده و نحوه استفاده از آنها با کنترلرهای مختلف را تعریف می کنیم.

برجسته

برجسته کردن یک مکان یا شی یا با نگاه کردن به آن (با کنترل کننده نگاه) یا با اشاره به آن (با کنترل کننده دست) انجام می شود. این می تواند بدون فشار دادن دکمه یا فقط در حالی که یک دکمه فشار داده شده باشد.

کلیک

کلیک کردن بر روی یک مکان یا شی ابتدا با برجسته کردن و سپس فشار دادن یا رها کردن یک دکمه انجام می شود. با یک کنترل‌کننده نگاه، می‌توانید با نگاه کردن به یک شی و سپس فشار دادن دکمه یا صفحه نمایش کلیک کنید. با یک کنترلر دستی، روش این است که به یک شی اشاره کنید و سپس روی یک دکمه کلیک کنید.

تعاملات اصلی

با استفاده از برجسته کردن و کلیک کردن، برخی از تعاملات اصلی را در آزمایشگاه WebVR پیاده سازی کرده ایم.

تله پورت

تله پورت

هنگام ساختن یک محیط مجازی برای کاوش کاربر، این احتمال وجود دارد که محیط بزرگتر از ناحیه کوچکی باشد که کاربر می تواند بدون حرکت ببیند. برای مثال، آزمایشگاه WebVR دارای سه بخش است. یک اتاق اصلی، یک طبقه نیم طبقه و یک اتاق کناری برای پخش کننده موسیقی Hi-Fi.

جابجایی نمای کاربر در سراسر جهان اغلب منجر به ناراحتی می شود. در آزمایشگاه WebVR به کاربر این امکان را می‌دهیم که یک مکان را برجسته کند و برای انتقال فوراً کلیک کند. دیدگاه کاربر هرگز حرکت نمی کند و بنابراین با وجود احساس تا حدودی غیرطبیعی حرکت آنی، کاربر می تواند در یک فضای بزرگ بدون هیچ ناراحتی حرکت کند.

در مورد کنترل کننده دستی، ما از کاربر می خواهیم که دکمه ای را فشار داده و نگه دارد تا هدف تله پورت را فعال کند. این باعث می شود دید کاربر در حالی که به اطراف نگاه می کند، بی نظم نگه می دارد.

حرکت دادن دیدگاه کاربر

گاهی اوقات کاملاً ضروری است که دیدگاه را تغییر دهید. به عنوان مثال، هنگام استفاده از Stationary یا Seated VR ممکن است در نهایت با دیواری روبرو شوید که توانایی چرخیدن در دنیای فیزیکی را ندارد. بنابراین به کاربر اجازه می دهیم با استفاده از کنترلر دوربین را بچرخاند. در آزمایشگاه WebVR با استفاده از پد چپ یا راست روی Daydream Controller، دوربین را می چرخاند.

برای جلوگیری از ناراحتی هنگام حرکت دوربین به این روش، با اعمال یک نمای محدود در سراسر دوربین، میزان دید محیطی را کاهش می دهیم. این بر اساس کار یوبی سافت است و ما دریافتیم که فوکوس کردن نمای فقط در مرکز صفحه باعث کاهش ناراحتی می شود.

فعال کنید

فعال کنید

فعال سازی معادل VR کلیک کردن روی یک دکمه در یک صفحه وب است. در آزمایشگاه WebVR ما این را به معنای واقعی کلمه در نظر گرفته ایم و یک دکمه ساده ارائه کرده ایم که می تواند فعال شود.

برای کنترلرهای 0 DOF و 3 DOF، فعال کردن یک برجسته و کلیک است. برای یک کنترلر 6 DOF، می‌توانیم تجربه را ارتقا دهیم تا به شما اجازه دهیم یک دکمه را با بررسی مستقیم برای اینکه ببینید آیا کنترل‌کننده دستی شما در داخل دکمه است، «فشار» کنید.

گرفتن

گرفتن

آزمایشگاه WebVR حاوی تعدادی آیتم "قابل گرفتن" است. با این رفتار، هنگامی که جسم فعال می شود، می توان آن را برداشت و حرکت داد. بسته به سطح ورودی که می خواهید از آن حمایت کنید، دو رفتار واضح و متفاوت وجود دارد.

برای 6 کنترلر DOF با نگه داشتن یک دکمه ورودی، آیتم قابل گرفتن به کنترلر متصل می شود. سپس می توان آن را با کنترل ریزدانه جابجا و قرار داد. با رها کردن دکمه، یک عمل ترکیب یا رها کردن با آیتم فعال می شود.

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

ترکیب کنید

ترکیب کنید

ترکیب کنشی است که زمانی رخ می دهد که از یک آیتم با آیتم دیگری "استفاده کنید". این موارد طیف گسترده ای از موارد استفاده را پوشش می دهد. در آزمایشگاه WebVR ما از این برای پخش رکوردها در hi-fi استفاده می کنیم. هنگامی که یک آیتم گرفته می شود، ترکیب آن با یک مورد دیگر امکان پذیر می شود. با تمام انواع کنترلر که آیتم مورد نظر را برجسته می کند در حالی که آیتم دیگری را می گیرد و سپس آن را رها می کند، این دو مورد ترکیب می شود.

رها کردن / بازیابی

رها کردن یک مورد زمانی اتفاق می‌افتد که در حالی که یک مورد گرفته شده را نگه داشته‌اید و هیچ مورد دیگری برجسته نشده است، کلیک کنید.

در آزمایشگاه WebVR ما با استفاده نکردن از شبیه سازی فیزیک روی هیچ آیتمی، الزامات عملکرد را پایین نگه داشته ایم. این بدان معناست که به جای انداختن یک آیتم روی زمین، به آن اجازه می دهیم در موقعیتی که افتاده است شناور شود. پس از حذف یک مورد، اگر در یک بازه زمانی مشخص فعال نشود، خود را به مکان اصلی خود "بازیابی" می کند. این قابلیت بازیابی به کاربر با درجه ورودی پایین (0 DOF یا 3 DOF) اجازه می دهد تا روی بسیاری از موارد کار کند و یک منطقه کاری قابل استفاده را حفظ کند. موارد قدیمی به طور خودکار پاک می شوند.

با ورودی 6 DOF، جابه‌جایی آیتم‌ها از مسیر آسان‌تر است. تأخیر در عملیات بازیابی به کاربر 6 DOF اجازه می دهد تا خود را در وسایل متحرک در اطراف غوطه ور کند، اما همچنان خود تمیز کردن منطقه را تسهیل می کند.

خلاصه

آزمایشگاه WebVR یک پروژه زنده از تیم PlayCanvas است. این بدان معناست که به طور مداوم در حال توسعه است و با انجام تحقیقات بیشتر در زمینه ساخت برنامه های WebVR، تجربیات اضافه و به روز می شوند.

از یک تجربه تلفن همراه به سبک "پنجره جادویی" به یک زمین بازی تعاملی رومیزی تبدیل می شود. ما شروع به تعریف مجموعه ای از تعاملات اصلی کرده ایم که کاربران می توانند برای پروژه های خود استفاده کنند. ما امیدواریم که آزمایشگاه WebVR یک تجربه یادگیری خوب برای همه کسانی باشد که می خواهند با WebVR دنیاهای سه بعدی بسازند.

اگر یک حساب کاربری PlayCanvas دارید، می‌توانید مستقیماً وارد پروژه آزمایشگاه WebVR برای کسب اطلاعات بیشتر شوید.