خلاصه (Summary)

نکته (NOTE)
سیستم‌عامل: این اپراتور فقط در سیستم‌عامل Microsoft Windows پشتیبانی می‌شود.

اپراتور Oculus Rift CHOP به یک دستگاه Oculus Rift متصل می‌شود و چندین مجموعه کانال مفید خروجی می‌دهد که می‌توان از آن‌ها برای یکپارچه‌سازی Oculus Rift در پروژه‌ها استفاده کرد.

می‌توانید جهت‌گیری (Orientation) شناسایی‌شده‌ی دستگاه را مشاهده کرده و مقادیر چرخش را مستقیماً به اپراتورهای دیگر منتقل کنید. برای کمک به کاهش تأخیر (Latency)، می‌توان از Prediction استفاده کرد تا حدس زده شود جهت‌گیری دستگاه در زمانی در آینده چه خواهد بود.

داده‌های خام سنسورها نیز در دسترس هستند، با گزینه‌هایی برای شتاب سنسور و سرعت زاویه‌ای.

پارامترهای کالیبراسیون دستگاه نیز یکی دیگر از خروجی‌ها هستند. از این داده‌ها می‌توان برای تولید ماتریس‌های پروجکشن و شیدرهای اعوجاج (Distortion Shaders) استفاده کرد؛ اگرچه هر دوی این موارد از قبل نیز در دسترس هستند (به بخش‌های پایین‌تر و Oculus Rift TOP مراجعه کنید). این داده‌ها ثابت هستند، اما ممکن است در دستگاه‌های آینده متفاوت باشند.

دو خروجی آخر Oculus Rift CHOP، ماتریس‌های پروجکشن چشم چپ و چشم راست هستند. این ماتریس‌ها می‌توانند (و باید) در پارامتر Custom Projection دوربین وارد شوند تا یک تجربه‌ی سه‌بعدی صحیح با Oculus Rift فراهم شود. برای سهولت کار، کانال‌ها به‌گونه‌ای تراز شده‌اند که بتوان آن‌ها را مستقیماً به‌صورت Reference متصل کرد.

در صورتی که دستگاه Oculus Rift متصل نباشد، این CHOP از مقادیر پیش‌فرض استفاده کرده و کانال‌هایی متناظر با Oculus Rift Developer Kit خروجی می‌دهد. این امکان باعث می‌شود بتوانید بدون داشتن خود دستگاه، برای Oculus Rift طراحی و توسعه انجام دهید.

همچنین ببینید: Oculus Rift


محتوا (Contents)

  1. خلاصه

  2. پارامترها – صفحه Setup

  3. پارامترها – صفحه Common

  4. کانال‌های Info CHOP
      4.1 کانال‌های اطلاعات عمومی CHOP
      4.2 کانال‌های اطلاعات عمومی اپراتور


پارامترها – صفحه Setup

Active (active)
وقتی روشن باشد، این CHOP هنگام Cook شدن، داده‌های خود را به‌روزرسانی می‌کند.

Output (output)
بین سه حالت مختلف خروجی جابه‌جا می‌شود.

Orientation (orientation)
در صورت فعال بودن، کانال‌های خروجی شامل جهت‌گیری سنسورها خواهند بود.

Re-Center (recenter)
مولفه‌های مکانی xyz و مولفه‌ی جهت‌گیری y فضای رهگیری (Tracking Space) برای HMD و کنترلرها را با استفاده از موقعیت فعلی HMD ریست می‌کند.

Acceleration (acceleration)
در صورت فعال بودن، کانال‌های خروجی شامل شتاب خواهند بود.

Velocity (velocity)
در صورت فعال بودن، کانال‌های خروجی شامل سرعت خواهند بود.

Device Info (deviceinfo)
در صورت فعال بودن، کانال‌های خروجی شامل اطلاعات دستگاه خواهند بود.

Controller Buttons (controllerbuttons)
در صورت فعال بودن، کانال‌های خروجی شامل وضعیت دکمه‌های کنترلر خواهند بود.

Near (near)
فاصله‌ی صفحه‌ی برش نزدیک (Near Clipping Plane) را برای ماتریس پروجکشن مشخص می‌کند.


پارامترها – صفحه Common

Time Slice (timeslice)
فعال کردن این گزینه باعث می‌شود کانال‌ها به‌صورت Time Slice پردازش شوند.
Time Slice فاصله‌ی زمانی بین آخرین فریم Cook شده و فریم فعلی است.

Scope (scope)
برای تعیین اینکه کدام کانال‌ها تحت تأثیر قرار بگیرند، برخی CHOPها از Scope String در صفحه Common استفاده می‌کنند.

Sample Rate Match (srselect)
مدیریت شرایطی که نرخ نمونه‌برداری CHOPهای ورودی با یکدیگر متفاوت است.
در صورت Resample شدن، منحنی‌ها بر اساس روش Interpolation انتخاب‌شده یا به‌صورت Linear (در صورت نبود گزینه‌ی دیگر) درون‌یابی می‌شوند.

Export Method (exportmethod)
مشخص می‌کند کانال CHOP چگونه به پارامتر متصل شود.
برای اطلاعات بیشتر به مقاله‌ی Export مراجعه کنید.

Export Root (autoexportroot)
این مسیر به نود ریشه‌ای اشاره می‌کند که تمام مسیرهای Export از نوع Channel Name → Path:Parameter نسبت به آن تعریف می‌شوند.

Export Table (exporttable)
DATای که هنگام استفاده از روش‌های Export مبتنی بر جدول، اطلاعات Export در آن ذخیره می‌شود.


کانال‌های Info CHOP

اطلاعات تکمیلی مربوط به Oculus Rift CHOP از طریق Info CHOP قابل دسترسی است.

کانال‌های اطلاعات عمومی CHOP

  • start — شروع بازه‌ی CHOP بر حسب تعداد سمپل

  • length — تعداد سمپل‌های موجود در CHOP

  • sample_rate — نرخ نمونه‌برداری کانال‌ها (فریم بر ثانیه)

  • num_channels — تعداد کانال‌ها

  • time_slice — اگر Time Slice فعال باشد مقدار 1 و در غیر این صورت 0

  • export_sernum — تعداد دفعات به‌روزرسانی اتصال‌های Export

کانال‌های اطلاعات عمومی اپراتور

  • total_cooks — تعداد دفعاتی که اپراتور از شروع پردازش Cook شده است

  • cook_time — مدت زمان آخرین Cook بر حسب میلی‌ثانیه

  • cook_frame — شماره فریم آخرین Cook نسبت به تایم‌لاین کامپوننت

  • cook_abs_frame — شماره فریم آخرین Cook نسبت به زمان مطلق

  • cook_start_time — زمان شروع Cook در آن فریم (میلی‌ثانیه)

  • cook_end_time — زمان پایان Cook در آن فریم (میلی‌ثانیه)

  • cooked_this_frame — اگر اپراتور در این فریم Cook شده باشد مقدار 1

  • warnings — تعداد هشدارها (در صورت وجود)

  • errors — تعداد خطاها (در صورت وجود)