استفاده از Scene Viewer برای نمایش مدل‌های سه بعدی تعاملی در واقعیت افزوده از یک برنامه یا مرورگر Android

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

اکثر مرورگرهای اندروید از Scene Viewer پشتیبانی می‌کنند. Scene Viewer با موفقیت توسط بسیاری از شرکای گوگل پیاده‌سازی شده است تا به طور قابل اعتمادی از تجربیات سه‌بعدی و واقعیت افزوده پشتیبانی کند. همچنین این تجربیات را برای جستجوی گوگل پشتیبانی می‌کند.

پیاده‌سازی ساده است:

  • تجربیات مبتنی بر وب فقط به لینک‌های با قالب‌بندی صحیح در یک صفحه وب نیاز دارند.

  • تجربیات مبتنی بر برنامه فقط به ادغام چند خط کد جاوا نیاز دارند.

الزامات زمان اجرای نمایشگر صحنه

برای تجربه واقعیت افزوده با Scene Viewer، کاربران باید موارد زیر را داشته باشند:

  • یک دستگاه پشتیبانی‌شده از ARCore که اندروید ۷.۰ نوقا (API Level 24) یا بالاتر را اجرا می‌کند.
  • نسخه به‌روز (جدید) سرویس‌های گوگل پلی برای واقعیت افزوده . این سرویس به‌طور خودکار روی اکثر دستگاه‌های پشتیبانی‌شده از ARCore نصب و به‌روز نگه داشته می‌شود.
  • نسخه به‌روز شده‌ای از برنامه گوگل . این برنامه از پیش نصب شده است و همچنین به‌طور خودکار در اکثر قریب به اتفاق دستگاه‌های پشتیبانی شده از ARCore به‌روز نگه داشته می‌شود.

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

موارد استفاده پشتیبانی شده

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

اگر سرویس‌های گوگل پلی برای واقعیت افزوده (AR) روی دستگاه شما وجود ندارد، می‌توانید مدل را در حالت سه‌بعدی مبتنی بر Scene Viewer نمایش دهید.
با استفاده از یک intent صریح به پکیج جستجوی گوگل، Scene Viewer را اجرا کنید و یک mode نمایش مناسب برای نمایش مدل سه‌بعدی انتخاب کنید.
  • ar_preferred : همیشه در یک نمایشگر واقعیت افزوده شروع می‌شود و کاربران می‌توانند به صورت دستی به یک نمایشگر سه‌بعدی تغییر دهند. اگر سرویس‌های گوگل پلی برای واقعیت افزوده وجود نداشته باشد، به طور خودکار به حالت اولیه در نمایشگر سه‌بعدی برمی‌گردد.
  • 3d_preferred : همیشه در یک نمایشگر سه‌بعدی شروع می‌شود و کاربران می‌توانند به صورت دستی به یک نمایشگر واقعیت افزوده تغییر حالت دهند. اگر سرویس‌های گوگل پلی برای واقعیت افزوده وجود نداشته باشد، کاربران نمی‌توانند از نمایشگر سه‌بعدی خارج شوند.
  • 3d_only : همیشه فقط در یک نمایشگر سه‌بعدی نمایش داده می‌شود و کاربران نمی‌توانند به یک نمایشگر واقعیت افزوده (AR) تغییر حالت دهند.
  • از وسیع‌ترین طیف ممکن از دستگاه‌ها پشتیبانی کنید.
  • برای موارد استفاده غیر از واقعیت افزوده، به طور خودکار به حالت سه‌بعدی بومی Scene Viewer برمی‌گردد.
از طریق یک دکمه یا لینک در یک وب‌سایت یا برنامه اندروید، یک نمای واقعیت افزوده بومی از یک مدل سه‌بعدی را اجرا کنید.

اگر سرویس‌های Google Play برای واقعیت افزوده در دستگاه وجود ندارد، رفتار جایگزین را کنترل کنید.
با استفاده از یک هدف صریح برای سرویس‌های Google Play برای AR (ARCore)، Scene Viewer را اجرا کنید و یک mode مناسب برای نمایش مدل سه‌بعدی انتخاب کنید.
  • ar_preferred : همیشه در نمایشگر واقعیت افزوده شروع می‌شود و کاربران می‌توانند به صورت دستی به یک نمایشگر سه‌بعدی تغییر دهند. اگر سرویس‌های گوگل پلی برای واقعیت افزوده وجود نداشته باشد، نمایشگر صحنه به رفتاری که شما پیکربندی می‌کنید، برمی‌گردد.
  • ar_only : همیشه فقط در نمایشگر واقعیت افزوده نمایش داده می‌شود و قابلیت تغییر به نمایشگر سه‌بعدی را ندارد. اگر سرویس‌های گوگل پلی برای واقعیت افزوده وجود نداشته باشد، به رفتاری که شما پیکربندی می‌کنید، برمی‌گردد. برای مثال، ممکن است تجربه سه‌بعدی تمام‌صفحه خود را راه‌اندازی کنید یا یک پیام خطای دوستانه نشان دهید که نشان می‌دهد دستگاه کاربر هنوز از قابلیت‌های واقعیت افزوده پشتیبانی نمی‌کند.
از نمایشگر مدل سه‌بعدی خودتان استفاده کنید یا برای موارد استفاده غیر AR، پاسخ جایگزین دیگری از طراحی خودتان ارائه دهید.
یک نمای درون خطی از یک مدل سه‌بعدی را در وب‌سایت خود میزبانی کنید و به کاربر اجازه دهید به صورت دستی وارد حالت واقعیت افزوده بومی تمام صفحه شود. از <model-viewer> یا هر نمایشگر سه‌بعدی مبتنی بر وب دیگر برای اجرای Scene Viewer که مدل سه‌بعدی را به‌صورت بومی در واقعیت افزوده نمایش می‌دهد، استفاده کنید.
  • نمایشگر صحنه را مستقیماً از یک مدل سه‌بعدی تعبیه‌شده در یک صفحه وب، به‌صورت بومی در واقعیت افزوده اجرا کنید.
  • به کاربران یک تجربه سه‌بعدی روی سطحی که متعلق به شماست و کنترل آن را در دست دارید، ارائه دهید و با این گزینه که پس از درک نیت آنها، به تدریج آنها را به یک تجربه واقعیت افزوده فراگیرتر منتقل کنید، این کار را انجام دهید.

نمایشگر صحنه را با استفاده از یک هدف صریح (سه‌بعدی یا واقعیت افزوده) اجرا کنید

برای پشتیبانی از طیف وسیع‌تری از دستگاه‌های اندروید، از یک intent صریح اندروید برای اجرای Scene Viewer استفاده کنید. intent صریح می‌تواند از یک صفحه HTML یا یک برنامه بومی اندروید فعال شود. intent توسط برنامه گوگل که از قبل روی دستگاه‌های اندروید پشتیبانی شده از ARCore نصب شده است، مدیریت خواهد شد.

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

  • اگر سرویس‌های گوگل پلی برای واقعیت افزوده (AR) روی دستگاه وجود داشته باشد، همانطور که تا به امروز وجود دارد، Scene Viewer مدل را در نمای بومی واقعیت افزوده یا نمای سه‌بعدی نشان می‌دهد.

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

  • اگر یک مدل سه‌بعدی نمایش داده نشود، مثلاً به دلیل نصب نبودن یا قدیمی بودن نسخه برنامه گوگل ، از پارامتر S.browser_fallback_url برای نمایش یک صفحه وب جایگزین استفاده می‌شود.

اجرای Scene Viewer از طریق HTML یا Java

اچ‌تی‌ام‌ال

برای فعال کردن اینتنت صریح از HTML، از سینتکس زیر استفاده کنید:

<a href="intent://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=https://developers.google.com/ar;end;">Avocado</a>

جاوا

برای فعال کردن intent صریح از جاوا، از کد زیر استفاده کنید:

Intent sceneViewerIntent = new Intent(Intent.ACTION_VIEW);
sceneViewerIntent.setData(Uri.parse("https://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf"));
sceneViewerIntent.setPackage("com.google.android.googlequicksearchbox");
startActivity(sceneViewerIntent);

نسخه‌بندی هدف

نسخه هدف با شماره نسخه بعد از arvr.google.com/scene-viewer مشخص می‌شود. برای مثال، نسخه اولیه از نسخه ۱.۰ استفاده می‌کرد. هنگامی که به ویژگی‌های جدیدتر Scene Viewer نیاز دارید، می‌توانید Scene Viewer را با نسخه هدف بالاتری که با ویژگی‌های مورد نیاز شما مطابقت دارد، اجرا کنید.

نسخه ۱.۱ اینتنت از لینک‌های intent:// پشتیبانی می‌کند که می‌توانند مستقیماً به جای یک URL در یک برنامه اندروید اجرا شوند. اگر می‌خواهید Scene Viewer تضمین کند که این قابلیت هنگام اجرا در دسترس است و در غیر این صورت اجرا نمی‌شود، Scene Viewer را با intent به intent://arvr.google.com/scene-viewer/1.1 اجرا کنید.

پارامترهای intent پشتیبانی شده

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

پارامتر هدف مقادیر مجاز نظرات
file (الزامی) یک آدرس اینترنتی معتبر این URL فایل glTF یا glb را که باید در Scene Viewer بارگذاری شود، مشخص می‌کند. این باید URL-escaped باشد.
S.browser_fallback_url (برای اهداف مبتنی بر HTML مورد نیاز است) یک آدرس اینترنتی معتبر این یک ویژگی گوگل کروم است که فقط برای پیاده‌سازی‌های مبتنی بر وب پشتیبانی می‌شود. وقتی برنامه گوگل روی دستگاه وجود ندارد، این URL است که گوگل کروم به آن هدایت می‌شود.
mode (اختیاری) 3d_preferred (پیش‌فرض) نمایشگر صحنه، مدل را در حالت سه‌بعدی با دکمه‌ی « مشاهده در فضای شما» نمایش می‌دهد.



اگر سرویس‌های گوگل پلی برای واقعیت افزوده در دستگاه وجود نداشته باشد، دکمه « مشاهده در فضای شما» پنهان می‌شود.

3d_only حتی اگر سرویس‌های واقعیت افزوده گوگل پلی روی دستگاه وجود داشته باشد، Scene Viewer با نمایش مدل در حالت سه‌بعدی اجرا می‌شود. دکمه View in your space هرگز نمایش داده نمی‌شود.

ar_preferred نمایشگر صحنه به عنوان حالت ورودی در حالت واقعیت افزوده (AR native mode) اجرا می‌شود. به کاربر این امکان داده می‌شود که از طریق دکمه‌های « مشاهده در فضای شما » (View in your space) و «مشاهده در فضای سه‌بعدی» (View in 3D) بین حالت‌های واقعیت افزوده (AR) و سه‌بعدی جابه‌جا شود.



اگر سرویس‌های گوگل پلی برای واقعیت افزوده (AR) موجود نباشد، Scene Viewer به عنوان حالت ورودی به حالت سه‌بعدی برمی‌گردد.

ar_only هنگام استفاده از این مقدار، باید از طریق یک اینتنت صریح اندروید به com.google.ar.core اجرا کنید.

نکته: هنگام راه‌اندازی از طریق اینتنت صریح اندروید به برنامه گوگل ، از حالت ar_only استفاده نکنید.

link (اختیاری) یک آدرس اینترنتی معتبر یک URL برای یک صفحه وب خارجی. در صورت وجود، دکمه‌ای در رابط کاربری نمایش داده می‌شود که با کلیک روی آن، به این URL هدایت می‌شود.

title (اختیاری) رشته معتبر نامی برای مدل. در صورت وجود، در رابط کاربری نمایش داده می‌شود. این نام پس از ۶۰ کاراکتر با بیضی کوتاه می‌شود.

صدا (اختیاری) یک آدرس اینترنتی معتبر یک URL به یک آهنگ صوتی حلقه‌ای که با اولین انیمیشن جاسازی شده در یک فایل glTF هماهنگ شده است. این باید در کنار یک glTF با انیمیشنی با طول منطبق ارائه شود. در صورت وجود، صدا پس از بارگذاری مدل حلقه می‌شود. این باید با URL-escaped باشد.
resizable (اختیاری) true (پیش‌فرض)

false

وقتی روی false تنظیم شود، کاربران نمی‌توانند مدل را در تجربه واقعیت افزوده مقیاس‌بندی کنند. مقیاس‌بندی در تجربه سه‌بعدی به طور معمول کار می‌کند.
enable_vertical_placement (اختیاری) false (پیش‌فرض)

true

وقتی روی true تنظیم شود، کاربران می‌توانند مدل را روی یک سطح عمودی قرار دهند.

راهنمایی تجربه کاربری

برای ارائه بهترین تجربه کاربری ممکن برای کاربران، توصیه می‌کنیم دکمه‌های فراخوان عمل (CTA) قابل مشاهده، این حس را القا کنند که کاربر در شرف ورود به یک محیط فراگیر است.

برای تجربه‌های نمایشگر سه‌بعدی، توصیه می‌کنیم از دکمه‌ی فراخوان با برچسب « نمایش سه‌بعدی» استفاده کنید که شبیه یکی از تصاویر زیر باشد:

اجرای Scene Viewer با استفاده از یک Intent صریح برای سرویس‌های گوگل پلی برای واقعیت افزوده (فقط حالت واقعیت افزوده)

حالت واقعیت افزوده در Scene Viewer توسط سرویس‌های واقعیت افزوده گوگل پلی پشتیبانی می‌شود.

برای اطمینان از اینکه واقعیت افزوده (AR) در Scene Viewer در دسترس است، می‌توانید از یک هدف صریح اندروید از یک وب‌سایت یا برنامه بومی اندروید برای راه‌اندازی Scene Viewer از طریق com.google.ar.core package استفاده کنید و یک browser_fallback_url ارائه دهید. به این ترتیب، می‌توانید اطمینان حاصل کنید که همه کاربران یا از طریق Scene Viewer یک تجربه واقعیت افزوده بومی دارند یا یک تجربه جایگزین که خودتان ساخته‌اید. به عنوان مثال، ممکن است تجربیات جایگزین مانند نمایشگر سه‌بعدی خودتان یا یک پیام خطای زیبا ایجاد کنید.

برای فعال کردن اینتنت صریح از HTML، از سینتکس زیر استفاده کنید:

<a href="intent://arvr.google.com/scene-viewer/1.0?file=https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf&mode=ar_only#Intent;scheme=https;package=com.google.ar.core;action=android.intent.action.VIEW;S.browser_fallback_url=https://developers.google.com/ar;end;">Avocado</a>;

برای فعال کردن intent صریح از جاوا، از کد زیر استفاده کنید:

Intent sceneViewerIntent = new Intent(Intent.ACTION_VIEW);
Uri intentUri =
    Uri.parse("https://arvr.google.com/scene-viewer/1.0").buildUpon()
    .appendQueryParameter("file", "https://raw.githubusercontent.com/KhronosGroup/glTF-Sample-Models/master/2.0/Avocado/glTF/Avocado.gltf")
    .appendQueryParameter("mode", "ar_only")
    .build();
sceneViewerIntent.setData(intentUri);
sceneViewerIntent.setPackage("com.google.ar.core");
startActivity(sceneViewerIntent);

پارامترهای intent پشتیبانی شده

پارامترهای زیر برای یک intent صریح در پکیج Google Play Services for AR پشتیبانی می‌شوند.

پارامتر هدف مقادیر مجاز نظرات
browser_fallback_url (required for HTML-based intents) یک آدرس اینترنتی معتبر این فقط برای پیاده‌سازی‌های مبتنی بر وب پشتیبانی می‌شود. وقتی سرویس‌های Google Play برای AR در دستگاه وجود ندارد یا به‌روز نیست، این URL است که به آن هدایت می‌شود.
mode (اختیاری) ar_only نمایشگر صحنه همیشه مدل سه‌بعدی را در یک نمای واقعیت افزوده بومی اجرا می‌کند و هرگونه رابط کاربری را برای تغییر به نمایشگر سه‌بعدی نمایشگر صحنه پنهان می‌کند.

اگر سرویس‌های گوگل پلی برای واقعیت افزوده (AR) وجود نداشته باشد، Scene Viewer برای تجربیات مبتنی بر وب، URL تنظیم شده در browser_fallback_url را اجرا می‌کند. برای تجربیات مبتنی بر برنامه، Scene Viewer به یک تجربه جایگزین مانند پیام خطا یا تجربه دیگری که خودتان ساخته‌اید، برمی‌گردد.

ar_preferred نمایشگر صحنه (Scene Viewer) به عنوان حالت ورودی در حالت واقعیت افزوده (AR native mode) اجرا می‌شود و به کاربران این امکان را می‌دهد که از طریق دکمه‌های « مشاهده در فضای شما» (View in your space) و «مشاهده در فضای سه‌بعدی» (View in 3D)، بین حالت‌های واقعیت افزوده (AR) و سه‌بعدی جابه‌جا شوند.

اگر سرویس‌های گوگل پلی برای واقعیت افزوده (AR) وجود نداشته باشد، Scene Viewer برای تجربیات مبتنی بر وب، URL تنظیم شده در browser_fallback_url را اجرا می‌کند. برای تجربیات مبتنی بر برنامه، Scene Viewer به یک تجربه جایگزین مانند پیام خطا یا تجربه دیگری که خودتان ساخته‌اید، برمی‌گردد.



link (اختیاری) یک آدرس اینترنتی معتبر یک URL برای یک صفحه وب خارجی. در صورت وجود، دکمه‌ای در رابط کاربری نمایش داده می‌شود که با کلیک روی آن، به این URL هدایت می‌شود.



نسخه ۱.۱ پشتیبانی از لینک‌های intent:// را در Scene Viewer اضافه کرده است تا دکمه بازدید Scene Viewer بتواند مستقیماً در برنامه‌های دیگر فعال شود. توجه داشته باشید که این مورد باید با احتیاط استفاده شود و فقط زمانی مشخص شود که تضمین شود یک کنترل‌کننده intent برای intent داده شده وجود دارد.
title (اختیاری) رشته معتبر نامی برای مدل. در صورت وجود، در رابط کاربری نمایش داده می‌شود. این نام پس از ۶۰ کاراکتر با بیضی کوتاه می‌شود.



نسخه ۱.۱ پشتیبانی از استایل‌دهی html برای محتوای عنوان را اضافه کرد، با مقدار دلخواه متن مجاز. توجه داشته باشید که عنوان باید با url-escaped مشخص شود.
sound (اختیاری) یک آدرس اینترنتی معتبر یک URL به یک آهنگ صوتی حلقه‌ای که با اولین انیمیشن جاسازی شده در یک فایل glTF هماهنگ شده است. این باید در کنار یک glTF با انیمیشنی با طول منطبق ارائه شود. در صورت وجود، صدا پس از بارگذاری مدل حلقه می‌شود.
resizable (اختیاری) true (پیش‌فرض)

false

وقتی روی false تنظیم شود، کاربران نمی‌توانند مدل را در تجربه واقعیت افزوده مقیاس‌بندی کنند. مقیاس‌بندی در تجربه سه‌بعدی به طور معمول کار می‌کند.
disable_occlusion (اختیاری) false (پیش‌فرض)

true

وقتی روی true تنظیم شود، اشیاء قرار داده شده در صحنه همیشه جلوتر از اشیاء دنیای واقعی در صحنه ظاهر می‌شوند. برای اطلاعات بیشتر به [فعال کردن انسداد](/ar/develop/depth#enable_occlusion) مراجعه کنید.

راهنمایی تجربه کاربری

برای ارائه بهترین تجربه کاربری ممکن برای کاربران، توصیه می‌کنیم این دستورالعمل‌ها را دنبال کنید.

  • برای تجربیات واقعیت افزوده، فراخوان عمل قابل مشاهده باید این حس را منتقل کند که کاربر در شرف ورود به یک محیط فراگیر است. توصیه می‌کنیم از فراخوان عمل « نمایش در فضای خود» استفاده کنید:

  • این امکان وجود دارد که کاربران سرویس‌های گوگل پلی برای واقعیت افزوده را روی دستگاه خود نصب نکرده باشند. در اینجا نحوه مدیریت خطای <model-viewer> آمده است و می‌توانید با خیال راحت از آن قطعه کد به عنوان نقطه شروع استفاده کنید.

    // Check whether this is an Android device.
    const isAndroid = /android/i.test(navigator.userAgent);
    // This fallback URL is used if the Google app is not installed and up to date.
    const fallbackUrl = 'https://arvr.google.com/scene-viewer?file=https%3A%2F%2Fstorage.googleapis.com%2Far-answers-in-search-models%2Fstatic%2FTiger%2Fmodel.glb&link=https%3A%2F%2Fgoogle.com&title=Tiger';
    
    // This intent URL triggers Scene Viewer on Android and falls back to
    // fallbackUrl if the Google app is not installed and up to date.
    const sceneViewerUrl = 'intent://arvr.google.com/scene-viewer/1.0?file=https://storage.googleapis.com/ar-answers-in-search-models/static/Tiger/model.glb&title=Tiger#Intent;scheme=https;package=com.google.android.googlequicksearchbox;action=android.intent.action.VIEW;S.browser_fallback_url=' +
        fallbackUrl + ';end;';
    
    // Create a link.
    var a = document.createElement('a');
    a.appendChild(document.createTextNode('Tiger'));
    // Set the href to the intent URL on Android and the fallback URL
    // everywhere else.
    a.href = isAndroid ? sceneViewerUrl : fallbackUrl;
    // Add the link to the page.
    document.body.appendChild(a);
    

استفاده از <model-viewer> برای اجرای Scene Viewer

شما می‌توانید با اضافه کردن کامپوننت وب <model-viewer> به ویژگی ar Scene Viewer را از وب‌سایت خود فعال کنید.

<model-viewer ar
              ar-modes="scene-viewer webxr quick-look"
              alt="A 3D model of an astronaut."
              src="Astronaut.gltf"></model-viewer>

وقتی وب‌سایتی که شامل کامپوننت <model-viewer> با ویژگی ar است، در یک دستگاه اندروید پشتیبانی‌شده توسط ARCore مشاهده می‌شود، دکمه‌ای را مطابق مثال زیر نمایش می‌دهد.

وقتی از حالت scene-viewer در ar-modes استفاده می‌شود ، به یک نمای AR بومی تغییر می‌کند و از کاربر دعوت می‌کند تا مدل را با استفاده از Scene Viewer در محیط خود قرار دهد.

اگر سرویس‌های گوگل پلی با واقعیت افزوده (AR) موجود نباشد، با زدن این دکمه، مدل در نمایشگر سه‌بعدی <model-viewer> نمایش داده می‌شود.

برای اطلاعات بیشتر در مورد نحوه شروع به کار با <model-viewer> به مستندات <model-viewer> مراجعه کنید .

الزامات فایل برای مدل‌ها

نرم‌افزار Scene Viewer پشتیبانی و محدودیت‌های زیر را برای مدل‌ها دارد.

پشتیبانی از فرمت فایل glTF 2.0/ glb ، با استفاده از این افزونه‌ها:
  • KHR_materials_unlit
  • KHR_texture_transform
انیمیشن
  • انیمیشن اسکلتی حلقه‌ای
  • حلقه زدن انیمیشن سفت و سخت
  • انیمیشن تبدیل حلقه‌ای
انیمیشن به صورت حلقه‌ای پخش خواهد شد. اگر فایل glTF شامل چندین انیمیشن باشد، Scene Viewer فقط انیمیشن اول را پخش می‌کند.
محدودیت‌های توصیه‌شده عملکرد کلی دارایی‌ها به تعیین محدودیت‌ها و ایجاد تعادل بین رئوس، مواد، وضوح بافت، مش به ازای هر ماده و سایر عوامل بستگی دارد. از دستورالعمل‌های زیر برای بهینه‌سازی دارایی‌های خود استفاده کنید.
  • تعداد مثلث‌ها: حد مجاز توصیه شده ۱۰۰۰۰۰ مثلث است، اما هدف قرار دادن کمترین تعداد، عملکرد بالا را در Scene Viewer حفظ می‌کند. ۳۰۰۰۰ تا ۵۰۰۰۰ محدوده ایده‌آلی است.
  • تعداد مواد: حد مجاز توصیه شده ۱۰ ماده است که دو مورد از آنها می‌توانند آلفا باشند. برای حفظ عملکرد خوب دارایی، کمترین تعداد ممکن را هدف قرار دهید.
  • مش در هر ماده: ۱
  • حداکثر وضوح بافت: 2048 × 2048
  • استخوان (شامل مفاصل بدون وزن): ۲۵۴ (حد مجاز)
  • وزن استخوان‌ها به ازای هر رأس: ۴ (حد مجاز)
  • اشعه ماوراء بنفش: ۱ اشعه ماوراء بنفش در هر مش (حد مجاز)
  • اندازه مدل: ۱۰ مگابایت (مدل‌های بزرگتر ممکن است منجر به تجربه کاربری ضعیف شوند.)
پشتیبانی سایه سایه‌های سخت هنگام قرار دادن یک شیء به طور خودکار توسط Scene Viewer رندر می‌شوند، بنابراین توصیه می‌کنیم سایه‌ها را در مدل خود ایجاد نکنید.
پشتیبانی از بافت
  • قالب PNG: PNG-24، با نمایه PNG-8.
    فرمت‌های JPG زمانی که شفافیت وجود ندارد ترجیح داده می‌شوند زیرا حجم را کاهش می‌دهند.
  • فضای رنگی: sRGB
مواد پی بی آر
بارگیری فایل HTTPS
صحنه
  • محور: راستگرد، با این ویژگی‌ها:
    • +X درست میگه
    • +Y بالا است
    • ‎-Z از مبدا به سمت جلو اشاره می‌کند (به عبارت دیگر، "جلوی" یک دارایی باید رو به +Z باشد)
  • مقیاس: ۱ واحد = ۱ متر (مطابق با مشخصات glTF برای اطمینان از قرارگیری مدل در واقعیت افزوده در مقیاس واقعی)

استفاده از ابزار پیش‌نمایش برای اعتبارسنجی مدل‌های سه‌بعدی شما

برای اطمینان از اینکه فایل مدل سه‌بعدی شما به درستی در Scene Viewer نمایش داده می‌شود، از ابزار پیش‌نمایش آنلاین ما برای تأیید اعتبار فایل‌ها در رایانه شخصی خود استفاده کنید.

اعتبارسنجی مدل سه‌بعدی شما

برای اعتبارسنجی یک مدل، ابزار پیش‌نمایش به یک فایل glb یا glTF، هرگونه فایل تصویر و bin مرتبط و یک فایل صوتی اختیاری نیاز دارد. فایل صوتی همراه با انیمیشن ۰ تکرار می‌شود.

شما می‌توانید فایل‌های جداگانه را چند بار انتخاب کنید، یا به صورت اختیاری glb یا glTF و فایل‌های مرتبط با آن را در یک فایل زیپ قرار دهید. (روش فایل زیپ از فایل‌های صوتی پشتیبانی نمی‌کند.)

برای اعتبارسنجی مدل سه‌بعدی خود:

  1. ابزار پیش‌نمایش آنلاین را در یک مرورگر باز کنید.

  2. برای افزودن فایل‌ها به ابزار پیش‌نمایش، از یکی از این روش‌ها استفاده کنید:

    • کشیدن و رها کردن . یک فایل glb یا glTF و تمام فایل‌های مرتبط با آن (یا یک فایل زیپ حاوی این فایل‌ها) را انتخاب کنید و فایل‌ها یا فایل زیپ انتخاب شده را به ابزار پیش‌نمایش بکشید.

    • از ابزار پیش‌نمایش . در ابزار پیش‌نمایش، Scene Viewer > Load File را انتخاب کنید. یک فایل glb یا glTF و تمام فایل‌های مرتبط با آن (یا یک فایل zip حاوی این فایل‌ها) را انتخاب کنید و روی Open کلیک کنید.

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

افزودن مدل‌های سه‌بعدی برای اعتبارسنجی

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

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

هنگام اضافه کردن یک فایل زیپ، پیش‌نمایش‌دهنده اولین glb یا glTF که پیدا می‌کند، و همچنین فایل‌های تصویر و bin مرتبط درون آن فایل زیپ را بارگذاری می‌کند.

  1. ابزار ویرایشگر مدل را در یک مرورگر باز کنید.

  2. برای افزودن فایل‌ها به ابزار پیش‌نمایش، از یکی از این روش‌ها استفاده کنید:

    • برای کشیدن و رها کردن فایل‌ها برای اعتبارسنجی، فایل glb یا glTF و هر فایل مرتبط را چند بار انتخاب کنید (یا یک فایل زیپ حاوی این فایل‌ها را انتخاب کنید) و آن را به ابزار پیش‌نمایش بکشید.

    • فایل‌ها را از ابزار پیش‌نمایش انتخاب کنید . در ابزار پیش‌نمایش، Scene Viewer > Load File را انتخاب کنید. فایل glb یا glTF و تمام فایل‌های مرتبط با آن (یا یک فایل زیپ حاوی این فایل‌ها) را چند بار انتخاب کنید و روی Open کلیک کنید.

خطاهای اعتبارسنجی

کد خطا شدت پیام مقادیر پشتیبانی‌شده‌ی فعلی
INVALID_INPUT_FILE_EXTENSION خطا فایل ورودی [filename] دارای پسوندی است که توسط اعتبارسنج پشتیبانی نمی‌شود. ['.glb', '.gltf']
REC_INPUT_BINARY_SIZE_EXCEEDED هشدار ورودی کاربر ارائه شده دارای اندازه دودویی است که از حد توصیه شده توسط مشخصات Scene Viewer، که حد اندازه توصیه شده [اندازه] مگابایت است، فراتر می‌رود. ۱۰
MAX_INPUT_BINARY_SIZE_EXCEEDED خطا ورودی کاربر ارائه شده دارای اندازه دودویی است که از حداکثر حد پشتیبانی شده توسط مشخصات Scene Viewer، که حداکثر اندازه [اندازه] مگابایت است، فراتر می‌رود. ۱۵
UNSUPPORTED_GLTF_EXTENSION_USED خطا پسوند [ext] در glTF توسط مشخصات Scene Viewer پشتیبانی نمی‌شود. ['KHR_materials_pbrSpecularGlossiness', 'KHR_materials_unlit', 'KHR_texture_transform']
ANIMATION_LIMIT_EXCEEDED خطا تعداد انیمیشن‌های موجود در glTF از حد پشتیبانی‌شده توسط مشخصات Scene Viewer، که حداکثر [تعداد] انیمیشن است، فراتر رفته است. ۱
MORPH_TARGET_USED خطا glTF حاوی یک هدف morph است که توسط مشخصات Scene Viewer پشتیبانی نمی‌شود.
MATERIAL_LIMIT_EXCEEDED هشدار تعداد مواد موجود در glTF از حد مجاز توصیه شده توسط مشخصات Scene Viewer، که حداکثر [تعداد] ماده است، فراتر می‌رود. ۱۰
TEXTURE_RESOLUTION_LIMIT_EXCEEDED هشدار وضوح تصویر در شاخص [idx] در glTF از حد توصیه شده توسط مشخصات Scene Viewer، که حداکثر وضوح [res] x [res] است، فراتر می‌رود. ۲۰۴۸ در ۲۰۴۸
UV_LIMIT_EXCEEDED خطا تعداد UV در هر مش در glTF از حد پشتیبانی شده توسط مشخصات Scene Viewer، که حداکثر تعداد UV در هر مش است، فراتر می‌رود. ۱
VERTEX_COLOR_USED خطا glTF حاوی یک رنگ رأس است که توسط مشخصات Scene Viewer پشتیبانی نمی‌شود.
JOINT_LIMIT_EXCEEDED خطا تعداد اتصالات در glTF از حد پشتیبانی شده توسط مشخصات Scene Viewer، که حداکثر [تعداد] اتصال است، فراتر می‌رود. ۲۵۴
TRIANGLE_LIMIT_EXCEEDED هشدار تعداد مثلث‌های موجود در glTF از حد مجاز توصیه‌شده توسط مشخصات Scene Viewer، که حداکثر [تعداد] مثلث است، فراتر می‌رود. ۱۰۰۰۰۰
PRIMITIVE_MODE_UNSUPPORTED خطا حالت اولیه [mode] توسط مشخصات Scene Viewer پشتیبانی نمی‌شود. {۴: فهرست مثلثی، ۵: نوار مثلثی، ۶: بادبزن مثلثی}
MISSING_PBR_METALLIC_ROUGHNESS اطلاعات متریال در اندیس [idx] فاقد ویژگی pbrMetallicRoughness است. اگر به جای آن از فاکتورهای metallic و roughness استفاده شود، این ویژگی طبق مشخصات Scene Viewer الزامی نیست. اگر هیچ یک از این دو استفاده نشود، متریال از مقادیر پیش‌فرض استفاده خواهد کرد که ممکن است منجر به رفتار ناخواسته شود.