اندروید XR از طریق مشخصات OpenXR 1.1 و فهرست بلندی از افزونههای شخص ثالث از OpenXR پشتیبانی میکند. استفاده از این افزونهها، همان تجربه آشنا را هنگام توسعه برای XR به شما ارائه میدهد. برخی از این قابلیتها به مجوزهای زمان اجرای اندروید نیاز دارند. اگر به دنبال ساخت مستقیم بر روی APIهای OpenXR هستید، میتوانید فایلهای هدر مورد نیاز را در مخزن jetpack-xr-natives پیدا کنید.
افزونههای فروشندگان اندروید XR
نام افزونه | توضیحات | نسخه API مکانی |
|---|---|---|
انکرهای ایجاد شده توسط یک برنامه از طریق | ||
از IK برای تعیین موقعیت بدن بر اساس موقعیت سر و دستها استفاده میکند. مجوزها: | ||
برای دستگاههایی که از حالتهای ترکیبی محیطی چندگانه پشتیبانی میکنند. مجوزها: | ||
این افزونه به برنامه اجازه میدهد تا نقشههای عمق محیط واقعی اطراف هدست را درخواست کند و وضوح عمق پشتیبانیشده توسط آن را در هنگام ایجاد پرسوجو کند. مجوزها: | ||
این افزونه به برنامه اجازه میدهد تا به صورت دائمی باقی بماند. مجوزها: | ||
این افزونه به برنامهها اجازه میدهد تا مشخص کنند که کدام افزونهها توسط پیکربندی فعلی سیستم پشتیبانی میشوند. | ||
این افزونه به برنامهها امکان میدهد موقعیت و جهت چشمان کاربر و همچنین وضعیت ردیابی چشم را به دست آورند. مجوزها: | ||
این افزونه به برنامهها این امکان را میدهد که وزن اشکال ترکیبی را دریافت کرده و حالات چهره را در تجربیات XR رندر کنند. مجوزها: | ||
این افزونه به برنامهها امکان میدهد دادههای ردیابی چهره را از منابع داده متعدد دریافت کنند. مجوزها: | ||
این افزونه، ورودیهای ردیابی دست را که به صورت یک مش دست پویا نمایش داده میشوند، فعال میکند. مجوزها: | ||
این افزونه به برنامه اجازه میدهد تا دادههایی را که نشاندهندهی روشنایی محیط واقعی اطراف هدست هستند، درخواست کند. مجوزها: | ||
این افزونه بر اساس افزونه پایه مجوزها: | ||
این افزونه یک | ||
راهاندازی دوربین مداربسته ممکن است کمی طول بکشد و ممکن است فوراً در دسترس نباشد. | ||
این افزونه، APIهایی را برای شمارش و پرسوجو از شمارندههای معیارهای عملکرد مختلف دستگاه XR فعلی فراهم میکند. | ||
این افزونه به برنامه اجازه میدهد تا در برابر trackables موجود در محیط، raycasts انجام دهد. مجوزها: | ||
این افزونه به زمان اجرا اجازه میدهد تا هنگام تغییر وضوح پیشنهادی، به برنامه اطلاع دهد. | ||
محیط پیشفرض کاربر میتواند: با استفاده از ترکیبی از حالت ترکیبی و روش ورودی، در حالتهای مختلفی باشد. | ||
این افزونه برای ارائه شبکههایی در نظر گرفته شده است که تقریباً نمایانگر اشیاء فیزیکی در محیط کاربر هستند. | ||
تابع در مقابل، این افزونه یک لنگر مکانی ایجاد میکند که به جای آن توسط یک دسته مجوزها: | ||
این افزونه قابلیت ردیابی حاشیهنویسی را برای افزونه مجوزها: | ||
این افزونه بر اساس مجوزها: | ||
این افزونه بر پایه XR_EXT_spatial_entity ساخته شده و قابلیت raycast را برای قابلیتهای مکانی موجود فراهم میکند. مجوزها: | ||
این افزونه به برنامهها اجازه میدهد تا لنگرهایی (anchors) را ایجاد و به موجودیتهای مکانی (spatial entity) متصل کنند. مجوزها: | ||
این افزونه بر اساس مجوزها: | ||
این افزونه به برنامه اجازه میدهد تا از محیط فیزیکی به trackableها دسترسی داشته باشد. مجوزها: | ||
این افزونه ردیابی تصاویر مسطح را مطابق با مجموعه تصاویر مرجع ورودی مشخص شده، امکانپذیر میکند. مجوزها: | ||
این افزونه امکان ردیابی نشانگر فیزیکی را فراهم میکند. مجوزها: | ||
این افزونه ردیابی اشیاء فیزیکی را امکانپذیر میکند. مجوزها: | ||
این افزونه امکان ردیابی کد QR فیزیکی و رمزگشایی دادههای کد QR را فراهم میکند. مجوزها: | ||
این افزونه به برنامهها اجازه میدهد تا یک فضای مرجع |
افزونههای شخص ثالث
نام افزونه | توضیحات | نسخه API مکانی |
|---|---|---|
برخی از برنامهها ممکن است نیاز داشته باشند بدون ارائه هیچ محتوای تصویری روی صفحه نمایش یا نمایشگرها، به دستگاههای تعامل XR دسترسی داشته باشند. | ||
این افزونه یک ساختار اختیاری اضافه میکند که میتواند در زنجیره | ||
با توجه به ماهیت رابط OpenXR، اطلاعات خطای بسیار کمی در دسترس توسعهدهنده و برنامه قرار دارد. | ||
این افزونه به برنامهها امکان میدهد تا محل قرارگیری مفاصل ورودیهای ردیابی دست را به صورت جداگانه پیدا کنند. مجوزها: | ||
این افزونه یک API برای برنامه تعریف میکند تا نکات مربوط به عملکرد را به زمان اجرا ارائه دهد و زمان اجرا نیز اعلانهای مربوط به عملکرد را به برنامه ارسال کند. این به هر دو طرف اجازه میدهد تا یک مصالحه مناسب بین عملکرد مورد نیاز CPU و GPU، پایداری حرارتی و یک تجربه کاربری خوب و مداوم در طول جلسه برقرار کنند. | ||
در پلتفرمهایی که از تنظیم پویای نرخ تازهسازی صفحه نمایش پشتیبانی میکنند. | ||
این افزونه به برنامه امکان میدهد تا وضعیت تغییرپذیر خاص مرتبط با یک swapchain را تغییر داده و پرسوجو کند. | ||
فوویشن در زمینه XR یک تکنیک رندرینگ است که اجازه میدهد ناحیهای از تصویر که در نزدیکی نقطه کانونی یا گودی چشم قرار دارد، با وضوح بالاتری نسبت به نواحی پیرامونی نمایش داده شود. | ||
در هدستهای فیسبوک، توسعهدهندگان میتوانند پروفایلهای foveation ایجاد کنند که توسط runtime برای خواص نوری و عملکرد تولید میشوند. | ||
رابط برنامهنویسی کاربردی گرافیکی ولکان (Vulkan) برای اعمال الگوی foveation نیاز به اعمال یک تصویر به زنجیره مبادله (swapchain) دارد. | ||
این افزونه از فعال کردن فناوری space warp در برنامه پشتیبانی میکند. | ||
این افزونه باید توسط زمانهای اجرای پشتیبانیشده توسط برنامههایی که از رابطهای برنامهنویسی OpenGL ES برای رندر استفاده میکنند، ارائه شود. | ||
وقتی برنامه یک شیء XrInstance در سیستمهای اندروید ایجاد میکند. | ||
یک فعالیت رایج در XR مشاهدهی یک جریان تصویر است. | ||
برای اینکه XR راحت باشد، مهم است که برنامهها فریمها را سریع و مداوم ارائه دهند. | ||
مقیاس رنگ و بایاس در طول ترکیب، پس از تبدیل آن به نمایش آلفای از پیش ضرب شده، به رنگ لایه اعمال میشوند. | ||
این افزونه یک نوع لایه اضافی اضافه میکند که امکان نمونهبرداری مستقیم از cubemapها را فراهم میکند. | ||
این افزونه یک نوع لایه اضافی اضافه میکند که در آن زمان اجرای XR باید یک بافت ناشی از یک swapchain را به داخل یک بخش استوانهای نگاشت کند. میتوان آن را تقریباً به همان شکلی تصور کرد که یک صفحه نمایش تلویزیون منحنی برای بیننده به نظر میرسد. | ||
این افزونه یک نوع لایه اضافی تعریف میکند که به برنامهها اجازه میدهد تصاویر عمقی را همراه با تصاویر رنگی در لایههای تصویر ارسال کنند. | ||
این افزونه یک نوع لایه اضافی اضافه میکند که در آن زمان اجرای XR باید یک تصویر کدگذاری شده مستطیلی شکل را که از یک swapchain ناشی میشود، به داخل یک کره نگاشت کند. | ||
این افزونه یک نوع لایه اضافی اضافه میکند که در آن زمان اجرای XR باید یک تصویر کدگذاری شده مستطیلی شکل را که از یک swapchain ناشی میشود، به داخل یک کره نگاشت کند. این افزونه از پارامتربندی متفاوتی استفاده میکند که بیشتر با فرمولبندی | ||
این افزونه دو تابع برای تبدیل بین زمان یکنواخت timespec و | ||
این افزونه امکان استفاده از API گرافیکی Vulkan را در زمان اجرای OpenXR فراهم میکند. | ||
این افزونه امکان استفاده از API گرافیکی Vulkan را در زمان اجرای OpenXR فراهم میکند. | ||
در برخی پلتفرمها، قبل از اینکه بارگذاری انجام شود، لودر باید با پارامترهای خاص پلتفرم مقداردهی اولیه شود. | ||
در اندروید، برخی از پیادهسازیهای لودر به برنامهای نیاز دارند که اطلاعات اضافی در مورد مقداردهی اولیه ارائه دهد. | ||
این افزونه به یک برنامه امکان میدهد تا مشخص کند که تصاویر swapchain باید به گونهای ایجاد شوند که بتوان از آنها به عنوان پیوستهای ورودی استفاده کرد. در زمان نگارش این مطلب، این بخش فقط بر swapchainهای Vulkan تأثیر میگذارد. | ||
این افزونه به برنامه اجازه میدهد تا با تعریف مسیرهای مؤلفه اضافی برای پیشنهاد اتصال برای یک یا چند اقدام دیجیتال، آنها را به یک ترکپد یا تامباستیک، گویی یک dpad هستند، متصل کند. | ||
این افزونه یک شناسه منحصر به فرد جهانی تعریف میکند که از RFC 4122 پیروی میکند. | ||
این افزونه امکان ترکیب لایههای آزمایششده با عمق را فراهم میکند. | ||
این افزونه یک مجوزها: | ||
این افزونه چهار حالت عملی رایج را برای همه پروفایلهای تعامل دست کاربر، شامل دستگاههای ردیابی دست و دستگاههای کنترل حرکت، تعریف میکند. | ||
این افزونه از ارائه ماسک طراحی به ازای هر نما برای برنامهها پشتیبانی میکند. | ||
رندرینگ فووِیتِ ردیابیشده با چشم، تراکم پیکسلی کمتری را در حاشیهی نگاه کاربر ایجاد میکند. مجوزها: | ||
افزونهی مجوزها: | ||
این افزونه یک «شناسه استاندارد ژست» جدید برای پروفایلهای تعامل با نام «palm_ext» تعریف میکند. | ||
هدستهای Varjo نمایشگرهایی با تراکم پیکسلی بسیار بالا در ناحیه مرکزی نمایشگر ارائه میدهند. مجوزها: | ||
این افزونه یک نوع پیکربندی نمای جدید - | ||
با استفاده از این افزونه، یک برنامه مبتنی بر Vulkan میتواند با زنجیر کردن ساختار XrVulkanSwapchainCreateInfoMETA به XrSwapchainCreateInfo هنگام فراخوانی xrCreateSwapchain، از | ||
افزونه مجوزها: | ||
این افزونه نوع لایه ترکیبی جدیدی تعریف نمیکند. | ||
| ||
این افزونه به برنامهها اجازه میدهد تا درخواست استفاده از گزینههای پردازشی مانند تیز کردن یا نمونهبرداری فوقالعاده را روی یک لایه ترکیب داشته باشند. | ||
این افزونه تابع xrLocateSpacesKHR را معرفی میکند. | ||
مشخصات اصلی OpenXR شامل دو نوع فضای مرجع قفلشده جهانی | ||
این افزونه بر اساس مجوزها: | ||
این افزونه به برنامهها اجازه میدهد تا موجودیتهای مکانی را در طول جلسات برنامه کشف و مرتبط کنند. مجوزها: | ||
این افزونه بر اساس مجوزها: | ||
این افزونه بر اساس | ||
این افزونه مفاهیم و مبانی درک صحنه و استدلال مکانی را در OpenXR معرفی میکند. | ||
در سیستمهای XR عملیات خاصی وجود دارند که طولانی مدت هستند و به طور منطقی در یک حلقه فریم معمولی تکمیل نمیشوند. | ||
دستگاههای XR ممکن است از فضای رنگی استفاده کنند که با بسیاری از مانیتورهای مورد استفاده در توسعه متفاوت است. | ||
این افزونه یک پرچم ارائه میدهد که وقتی روی یک لایه ترکیب اعمال میشود، تفسیر مقدار آلفا را در تصاویر swapchain لایه معکوس میکند. | ||
این افزونه پشتیبانی لازم برای فعال کردن سنتز فریم در برنامهها را بر اساس دادههای اضافی ارائه شده توسط برنامه فراهم میکند. | ||
عملیات ردیابی تصویر کوالکام را برای دستگاههای قابل ردیابی فراهم میکند. | ||
عملیات ردیابی با کد QR کوالکام را برای موارد قابل ردیابی فراهم میکند. | ||
این افزونه یک رویداد جدید را معرفی میکند تا زمانی که سیستم تغییر حضور کاربر را تشخیص داد، اطلاعرسانی کند. | ||
این افزونه حداکثر اندازه نام ساختار را افزایش میدهد و تابع جدیدی برای دسترسی به این نامهای توسعهیافته جدید ارائه میدهد. | ||
|
OpenXR™ و لوگوی OpenXR علائم تجاری متعلق به گروه Khronos هستند و به عنوان یک علامت تجاری در چین، اتحادیه اروپا، ژاپن و بریتانیا ثبت شدهاند.