طراحی مدل سه بعدی

در اندروید XR، مدل‌های سه‌بعدی، اشیاء دیجیتالی هستند که با عمق و حجم رندر می‌شوند تا حس واقع‌گرایی و درک فضایی را به برنامه شما اضافه کنند. کاربران می‌توانند به طور طبیعی با مدل‌های سه‌بعدی تعامل داشته باشند و یک تجربه دگرگون‌کننده و جذاب ایجاد کنند.

اندروید XR از مدل‌های سه‌بعدی با پسوند فایل .glTF یا .glb پشتیبانی می‌کند. فرمت انتقال GL (glTF) یک فرمت فایل سه‌بعدی استاندارد است که حجم فایل را به حداقل می‌رساند، سریع بارگذاری می‌شود و در پلتفرم‌های مختلف قابل استفاده است. می‌توانید این فرمت‌های فایل را از ابزارهای تولید محتوای دیجیتال شخص ثالث مانند Blender ، Maya ، Spline و غیره استخراج کنید.

برای بهینه‌سازی عملکرد، اندازه فایل‌های کوچک را در اولویت قرار دهید. از تعداد زیاد چندضلعی‌ها یا بافت‌های با وضوح بالا که می‌توانند بر سرعت رندر تأثیر بگذارند، خودداری کنید.

روش‌های ادغام مدل‌های سه‌بعدی

اندروید XR ابزارهای مختلفی برای افزودن مدل‌های سه‌بعدی تعاملی در برنامه شما ارائه می‌دهد: با SceneCore APIs یا Scene Viewer. اگر در حال ساخت با Compose for XR هستید، می‌توانید مدل‌های سه‌بعدی را نسبت به رابط کاربری خود با استفاده از زیرفضای SceneCoreEntity composable قرار دهید.

  • رابط‌های برنامه‌نویسی SceneCore . شما می‌توانید تعاملات خود را از جمله چرخش، حرکت و مقیاس‌بندی ایجاد کنید. این به کاربران اجازه می‌دهد تا در کنار پنل‌ها و محیط مکانی برنامه شما، با مدل‌های سه‌بعدی تعامل داشته باشند. همچنین می‌توانید روابط والد بین پنل‌ها و مدل‌های سه‌بعدی ایجاد کنید. درباره رابط‌های برنامه‌نویسی SceneCore اطلاعات کسب کنید .
  • Scene Viewer می‌تواند برای بارگذاری و نمایش مدل‌های سه‌بعدی با تعاملاتی از جمله چرخش، حرکت و مقیاس‌بندی استفاده شود. با این حال، Scene Viewer به عنوان یک برنامه جداگانه اجرا می‌شود. در نتیجه، کاربران نمی‌توانند پنل‌ها و محیط برنامه شما را هنگام تعامل با مدل‌های سه‌بعدی ببینند. درباره Scene Viewer اطلاعات کسب کنید .

رابط‌های برنامه‌نویسی کاربردی SceneCore

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

با SceneCore، می‌توانید موارد زیر را نیز اضافه کنید:

  • حاشیه‌نویسی برای مدل‌های سه‌بعدی
  • پخش انیمیشن‌های تعبیه‌شده در مدل‌های سه‌بعدی
  • مدل‌های سه‌بعدی متعدد
  • یک منوی سفارشی و موقعیت‌های شروع

روابط

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

لنگرها

کاربران می‌توانند مدل‌های سه‌بعدی را به یک نقطه خاص در دنیای واقعی ثابت کنند. شما می‌توانید لنگرهایی را به سطوح افقی یا عمودی عمومی یا سطوح خاص مانند کف یا دیوار اضافه کنید.

نمایشگر صحنه

نمایشگر صحنه به کاربران امکان می‌دهد مدل‌های سه‌بعدی را ببینند و با آنها تعامل داشته باشند. کاربران می‌توانند مدل‌های سه‌بعدی پشتیبانی‌شده با پسوند .glTF مانند فایل .glb را باز کنند و اشیاء را در فضا قرار دهند. می‌توانید نمایشگر سه‌بعدی را در برنامه خود ادغام کنید تا تجسم محصولات، کاوش در محتوای آموزشی و تجربه مدل‌های سه‌بعدی برای کاربران ساده شود. نمایشگر صحنه رابط کاربری داخلی را برای تعاملات اساسی از جمله حرکت، چرخش، مقیاس‌بندی و تثبیت فراهم می‌کند.

موقعیت پرتاب

مدل‌های سه‌بعدی در فاصله ۱.۵ متری و ۱۵ درجه پایین‌تر از خط دید کاربر، در مرکز میدان دید او، پرتاب می‌شوند. آن‌ها در اندازه مینیاتوری ۱.۵ متر در هر محور باز می‌شوند.

نقشه‌ای که فاصله بین خط دید یک زن و یک کره سه‌بعدی را نشان می‌دهد.

تداخلات شامل موارد زیر است

رابط کاربری و تعاملاتی که به کاربران امکان می‌دهد مدل‌های سه‌بعدی را با استفاده از حرکات طبیعی حرکت دهند، بچرخانند، ثابت کنند و مقیاس‌بندی کنند.

منوی تعامل

منوی مدل سه‌بعدی را می‌توان با اقدامات اضافی سفارشی کرد. اگر فایل glTF شامل اندازه‌های مختلفی مانند اندازه پیشنهادی و اندازه واقعی باشد، دکمه ۱:۱ به کاربران امکان می‌دهد تا به سرعت بین آنها جابجا شوند. برای خروج از نمای مدل سه‌بعدی و بازگشت به برنامه، کاربران می‌توانند روی دکمه بستن اجباری کلیک کنند.

برای افزایش اندازه یک کره سه‌بعدی از ۱۰۰٪ به ۱۳۵٪، کاربر انگشت شست و اشاره خود را روی هر دست به هم نزدیک می‌کند و به سمت بیرون اشاره می‌کند.