آنچه در ARCore جدید است

تغییرات جدید و قابل توجه در ARCore.

ویژگی‌های جدید ARCore نسخه ۱.۵۱.۰

تغییرات دیگر

  • minSdkVersion SDk نمونه‌های جاوای "SharedCamera" و "RawDepth" به ۲۳ به‌روزرسانی شد.

  • نمونه hello_ar_vulkan_c به یک برنامه کاملاً کاربردی به‌روزرسانی شد که پیاده‌سازی کامل ویژگی‌های کلیدی ARCore در Vulkan را نشان می‌دهد. شامل ویژگی‌های نمایش داده شده در hello_ar_c و انسداد صفحه‌ای است.

ویژگی‌های جدید ARCore نسخه ۱.۵۰.۰

تغییرات در targetSdkVersion ARCore SDK

targetSdkVersion در ARCore به سطح API اندروید ۳۶ به‌روزرسانی شده است. اگر برنامه شما targetSdkVersion مشخص نکرده باشد، targetSdkVersion برنامه شما به دلیل ادغام آشکار، ۳۶ خواهد شد.

برای یونیتی، مشخص کردن سطح API هدف در پروژه یونیتی شما در مسیر Project Settings > Player > Android > Other Settings، مقدار targetSdkVersion در ARCore را لغو خواهد کرد.

چه چیزهایی در ARCore نسخه ۱.۴۹.۰ جدید است؟

رفع اشکالات مختلف و بهبود عملکرد

ویژگی‌های جدید ARCore نسخه ۱.۴۸.۰

پشتیبانی از Unity 6 و AR Foundation 6 به طور کامل منتشر شد.

افزونه‌های ARCore برای بنیاد واقعیت افزوده یونیتی اکنون از AR Foundation 6 پشتیبانی می‌کنند. برای دریافت نسخه سازگار از افزونه‌های ARCore برای بنیاد واقعیت افزوده، از روش‌های نصب زیر استفاده کنید:

  • از طریق Add package from git url... : از https://github.com/google-ar/arcore-unity-extensions.git#arf6 استفاده کنید،
  • از طریق Add package from tarball... : از نسخه‌ای که با arf6 از صفحه releases مشخص شده است، استفاده کنید.

برای ارتقاء پروژه خود از AR Foundation 5 به AR Foundation 6، به راهنمای زیر مراجعه کنید.

شکستن و تغییرات رفتاری

  • SDK دیگر از اهداف استقرار برای نسخه‌های iOS <13.0 پشتیبانی نمی‌کند.

ویژگی‌های جدید ARCore نسخه ۱.۴۷.۰

پشتیبانی بتا برای Unity 6 و AR Foundation 6

افزونه‌های ARCore برای بنیاد واقعیت افزوده Unity اکنون از نسخه بتای AR Foundation 6 پشتیبانی می‌کنند تا از Unity 6 پشتیبانی کنند. برای دریافت نسخه سازگار از افزونه‌های ARCore برای بنیاد واقعیت افزوده، از روش‌های نصب زیر استفاده کنید:

  • از طریق Add package from git url... : از https://github.com/google-ar/arcore-unity-extensions.git#arf6 استفاده کنید،
  • از طریق Add package from tarball... : از نسخه‌ای که با arf6 از صفحه releases مشخص شده است، استفاده کنید.

برای ارتقاء پروژه خود از AR Foundation 5 به AR Foundation 6، به راهنمای زیر مراجعه کنید.

رفع اشکالات

  • مشکل شفاف نبودن صفحه نمونه Cloud Anchor برای Unity 6 برطرف شد

تغییرات دیگر

  • شاخه main مخزن گیت‌هاب ARCore Extensions برای پیگیری شاخه arf5 تغییر یافته است.

ویژگی‌های جدید ARCore نسخه ۱.۴۶.۰

تغییرات در targetSdkVersion ARCore SDK

targetSdkVersion در ARCore به سطح API اندروید ۳۵ به‌روزرسانی شده است. اگر برنامه شما targetSdkVersion مشخص نکرده باشد، targetSdkVersion برنامه شما به دلیل ادغام آشکار، ۳۵ خواهد شد.

برای یونیتی، مشخص کردن سطح API هدف در پروژه یونیتی شما در مسیر Project Settings > Player > Android > Other Settings، مقدار targetSdkVersion در ARCore را لغو خواهد کرد.

ویژگی‌های جدید ARCore نسخه ۱.۴۵.۰

API حالت فلش

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

اندروید (کاتلین/جاوا)

  • Config.FlashMode : گزینه پیکربندی برای فعال یا غیرفعال کردن واحد فلش روی دستگاه.
  • برای جزئیات بیشتر در مورد نحوه شناسایی قابلیت‌های فلش و نحوه فعال کردن حالت مشعل، به راهنمای توسعه‌دهنده مراجعه کنید.

اندروید NDK (سی)

  • ArFlashMode : گزینه پیکربندی برای فعال یا غیرفعال کردن واحد فلش روی دستگاه.
  • برای جزئیات بیشتر در مورد نحوه شناسایی قابلیت‌های فلش و نحوه فعال کردن حالت مشعل، به راهنمای توسعه‌دهنده مراجعه کنید.

افزونه‌های ARCore برای بنیاد واقعیت افزوده‌ی یونیتی، از بنیاد واقعیت افزوده‌ی ۵ پشتیبانی می‌کنند.

افزونه‌های ARCore برای AR Foundation اکنون رسماً از AR Foundation 5 پشتیبانی می‌کنند. هنگام استفاده از AR Foundation 5 (نسخه تأیید شده در نسخه‌های 2022 و 2023 یونیتی)، از روش‌های نصب زیر برای دریافت نسخه سازگار از افزونه‌های ARCore برای AR Foundation استفاده کنید:

  • از طریق Add package from git url... : از https://github.com/google-ar/arcore-unity-extensions.git#arf5 استفاده کنید،
  • از طریق Add package from tarball... : از نسخه‌ای که با arf5 از صفحه releases مشخص شده است، استفاده کنید.

پروژه‌های باقی‌مانده روی نسخه ۴ بنیاد AR می‌توانند از روش‌های نصب زیر استفاده کنند:

  • از طریق Add package from git url... : از https://github.com/google-ar/arcore-unity-extensions.git#arf4 استفاده کنید،
  • از طریق Add package from tarball... : از نسخه‌ای که با arf4 از صفحه releases مشخص شده است، استفاده کنید.

برای ارتقاء پروژه خود از AR Foundation 4 به AR Foundation 5، به راهنمای مهاجرت مراجعه کنید.

نمادهای اسکریپت‌نویسی سفارشی مانند ARCORE_USE_ARF_5 از نسخه بتا دیگر استفاده نمی‌شوند.

ویژگی‌های جدید ARCore نسخه ۱.۴۴.۰

این نسخه هیچ ویژگی جدیدی ندارد.

ویژگی‌های جدید ARCore نسخه ۱.۴۳.۰

API مکان‌ها در مهاجرت خالق جغرافیایی

قابلیت جستجوی Geospatial Creator اکنون از API مکان‌های جدید گوگل استفاده می‌کند. برای استفاده از قابلیت جستجو، «API مکان‌ها (جدید)» را در کنسول ابری گوگل فعال کنید.

ویژگی‌های جدید ARCore نسخه ۱.۴۲.۰

ضربه محکم و ناگهانی به کاشی در Geospatial Creator برای Unity

دکمه‌ی "Snap to Tile" به پنل ARGeospatialCreatorAnchor Editor Inspector اضافه شده است. این دکمه مقدار ارتفاع مخصوص ویرایشگر یک لنگر Terrain یا Rooftop را در بالای هندسه‌ی کاشی سه‌بعدی در عرض و طول جغرافیایی فعلی لنگر تنظیم می‌کند. توجه داشته باشید که این ویژگی بر رفتار در زمان اجرا تأثیری ندارد. این به تنظیم موقعیت لنگر در ویرایشگر برای مطابقت با موقعیت آن در زمان اجرا کمک می‌کند.

ویژگی‌های جدید ARCore نسخه ۱.۴۱.۰

API سازنده اطلاعات مکانی

نرم‌افزار Geospatial Creator برای یونیتی اکنون از ایجاد و دستکاری اشیاء Geospatial Creator در حالت ویرایشگر پشتیبانی می‌کند. کلاس‌ها و APIهای جدید در راهنمای API Geospatial Creator شرح داده شده‌اند.

پشتیبانی از نسخه‌های ۵.x بنیاد AR (بتا)

افزونه‌های ARCore برای بنیاد AR یونیتی اکنون از نسخه‌های 5.x بنیاد AR پشتیبانی می‌کنند. برای انتقال یک پروژه موجود به بنیاد AR، به راهنمای انتقال مراجعه کنید.

ویژگی‌های جدید ARCore نسخه ۱.۴۰.۰

معناشناسی صحنه در iOS

رابط برنامه‌نویسی کاربردی (API) معناشناسی صحنه اکنون در ARCore SDK برای iOS و همچنین در ARCore Extensions for Unity’s AR Foundation که پلتفرم iOS را هدف قرار می‌دهد، در دسترس است. رابط برنامه‌نویسی کاربردی معناشناسی صحنه به توسعه‌دهندگان این امکان را می‌دهد که صحنه اطراف کاربر را به صورت بلادرنگ درک کنند و پیکسل‌ها را به 11 کلاس از اجزای بیرونی دسته‌بندی کنند. برای اطلاعات بیشتر به مقدمه‌ای بر معناشناسی صحنه مراجعه کنید.

جستجوی نقاط مورد علاقه در Geospatial Creator برای Unity

نرم‌افزار Geospatial Creator برای یونیتی اکنون از جستجوی متنی برای تعیین موقعیت نمای کاشی‌های سه‌بعدی عکاسی پشتیبانی می‌کند. برای اطلاعات بیشتر به بخش «جستجوی نقاط مورد علاقه در Geospatial Creator» مراجعه کنید.

ویژگی‌های جدید ARCore نسخه ۱.۳۹.۰

این نسخه هیچ ویژگی جدیدی ندارد.

ویژگی‌های جدید ARCore نسخه ۱.۳۸.۰

این نسخه هیچ ویژگی جدیدی ندارد.

ویژگی‌های جدید ARCore نسخه ۱.۳۷.۰

معناشناسی صحنه

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

برای اطلاعات بیشتر به مقدمه‌ای بر معناشناسی صحنه و برنامه نمونه semantics_java مراجعه کنید.

هندسه خیابان

هندسه‌ی خیابان (Streetscape Geometry) یک API جغرافیایی جدید ARCore است که هندسه‌ی ساختمان‌ها و عوارض زمین را در منطقه‌ای اطراف کاربر، زمانی که API جغرافیایی فعال باشد، ارائه می‌دهد.

اندروید (کاتلین/جاوا)

به راهنمای توسعه‌دهندگان هندسه خیابانی (Kotlin/Java) مراجعه کنید. علاوه بر این، برنامه نمونه geospatial_java به‌روزرسانی شده است تا هندسه خیابانی را نیز شامل شود.

اندروید NDK (سی)

برای اطلاعات بیشتر به راهنمای توسعه هندسه خیابان (C) مراجعه کنید.

یونیتی (بنیاد واقعیت افزوده)

برای اطلاعات بیشتر به راهنمای توسعه‌دهنده هندسه خیابانی (یونیتی) مراجعه کنید.

آی‌او‌اس

برای اطلاعات بیشتر به راهنمای توسعه‌دهندگان هندسه خیابانی (iOS) مراجعه کنید. علاوه بر این، برنامه GeospatialExample به‌روزرسانی شده است تا هندسه خیابانی را نیز شامل شود.

لنگرهای پشت بام

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

اندروید (کاتلین/جاوا)

به لنگرهای مکانی (جاوا) مراجعه کنید. علاوه بر این، برنامه نمونه geospatial_java به‌روزرسانی شده است تا لنگرهای پشت بام را نیز شامل شود.

اندروید NDK (سی)

برای اطلاعات بیشتر به لنگرهای مکانی (C) مراجعه کنید.

یونیتی (بنیاد واقعیت افزوده)

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

آی‌او‌اس

برای اطلاعات بیشتر به Geospatial anchors (iOS) مراجعه کنید. علاوه بر این، برنامه GeospatialExample به‌روزرسانی شده است تا شامل Rooftop anchors نیز بشود.

عمق جغرافیایی

وقتی هر دو حالت Depth API و Streetscape Geometry در یک جلسه ARCore در مناطقی با پوشش VPS فعال شوند، تصاویر عمق تولید شده با استفاده از Streetscape Geometry بهبود می‌یابند. Streetscape Geometry در هر تصویر عمق تولید شده تا محدوده ۶۵.۵۳۵ متر ادغام می‌شود. برای مشاهده این مزیت، هنگام فراخوانی Depth API نیازی به تغییر نیست.

اندروید (کاتلین/جاوا)

برای اطلاعات بیشتر به عمق مکانی (جاوا) مراجعه کنید.

اندروید NDK (سی)

برای اطلاعات بیشتر به عمق جغرافیایی (C) مراجعه کنید.

یونیتی (بنیاد واقعیت افزوده)

برای اطلاعات بیشتر به عمق جغرافیایی (C) مراجعه کنید.

آی‌او‌اس

ابزار Scene Semantics در حال حاضر برای iOS در دسترس نیست.

پشتیبانی از رندر ولکان

ARCore اکنون با ارائه تصویر دوربین از طریق AHardwareBuffer پشتیبانی از رندر Vulkan را ارائه می‌دهد. می‌توانید با اتصال این Hardware Buffer به VkImage از آن استفاده کنید.

برای اطلاعات بیشتر به بخش رندر کردن برنامه ARCore با استفاده از Vulkan و برنامه نمونه hello_ar_vulkan_c مراجعه کنید.

اندروید (کاتلین/جاوا)

اندروید NDK (سی)

یونیتی (بنیاد واقعیت افزوده)

رندر Vulkan در حال حاضر برای Unity با استفاده از AR Foundation در دسترس نیست.

لرزشگیر الکترونیکی تصویر (EIS)

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

برای اطلاعات بیشتر به فعال کردن تثبیت‌کننده الکترونیکی تصویر و برنامه نمونه hello_eis_kotlin مراجعه کنید.

اندروید (کاتلین/جاوا)

اندروید NDK (سی)

یونیتی (بنیاد واقعیت افزوده)

EIS در حال حاضر برای Unity با استفاده از AR Foundation در دسترس نیست.

آی‌او‌اس

EIS در حال حاضر برای iOS در دسترس نیست.

APIهای ناهمگام ARCore

این نسخه، APIهای جدید ناهمگام ARCore را برای بهبود ارگونومی هنگام کار با عملیات ناهمگام، با پیروی از الگوی Future و Promise، معرفی می‌کند.

اندروید (کاتلین/جاوا)

اندروید NDK (سی)

یونیتی (بنیاد واقعیت افزوده)

آی‌او‌اس

ویژگی‌های جدید ARCore نسخه ۱.۳۶.۰

پشتیبانی از مدیریت بسته‌های Swift در iOS

کیت توسعه نرم‌افزار ARCore برای iOS اکنون رسماً از Swift Package Manager پشتیبانی می‌کند. برای دستورالعمل‌های نحوه ادغام با ARCore با استفاده از Swift Package Manager، به بخش «فعال کردن AR در برنامه iOS خود» مراجعه کنید.

ویژگی‌های جدید ARCore نسخه ۱.۳۵.۰

دقت موقعیت مکانی، جهت را با انحراف جایگزین می‌کند

اکنون تمام موقعیت‌های جغرافیایی، دقت جهت‌گیری خود را در چرخش انحراف نشان می‌دهند و جایگزین دقت جهت می‌شوند.

تغییرات و به‌روزرسانی‌های تکمیلی

برای سایر تغییرات، رفع اشکالات و بهبود عملکرد، به یادداشت‌های انتشار مراجعه کنید:

ویژگی‌های جدید ARCore نسخه ۱.۳۴.۰

بررسی کنید که آیا قابلیت‌های مکانی در مکان فعلی دستگاه موجود است یا خیر

API موقعیت‌یابی مکانی اکنون می‌تواند در زمان اجرا، در دسترس بودن سیستم موقعیت‌یابی بصری (VPS) را در یک موقعیت افقی مشخص بررسی کند. این API می‌تواند بدون یک جلسه فعال واقعیت افزوده (AR) مورد استفاده قرار گیرد: برای مثال، فقط زمانی که VPS در دسترس است، دکمه "Enter AR" را نمایش دهد.

جهت گیری موقعیت جغرافیایی

ژست‌های جغرافیایی اکنون جهت خود را در فضای سه‌بعدی نشان می‌دهند.

تبدیل موقعیت‌های جغرافیایی

اکنون می‌توان ژست‌های جغرافیایی را به ژست‌های فضای جهانی (AR) تبدیل کرد.

برای دریافت ژست مکانی از یک ژست واقعیت افزوده:

برای دریافت ژست واقعیت افزوده از یک ژست مکانی:

موقعیت‌های مکانی به‌دست‌آمده از این توابع، مقدار عنوان صفر دارند. در عوض، از موارد زیر استفاده کنید:

  • اندروید (جاوا/کاتلین/سی): چهارگانه‌ی EUS مربوط به پوز
  • iOS: ژست eastUpSouthQTarget است
  • وحدت: EunRotation در پوز

تغییرات و به‌روزرسانی‌های تکمیلی

برای سایر تغییرات، رفع اشکالات و بهبود عملکرد، به یادداشت‌های انتشار مراجعه کنید:

ویژگی‌های جدید ARCore نسخه ۱.۳۳.۰

نقطه پایانی جدید Cloud Anchors

  • برای استفاده از Cloud Anchors، اکنون باید ARCore API را به جای ARCore Cloud Anchor API قدیمی‌تر که اکنون منسوخ شده است، فعال کنید. برای پشتیبانی از نسخه‌های قدیمی‌تر برنامه، می‌توانید هر دو را هنگام انتقال فعال کنید. برنامه‌های ساخته شده با ARCore SDK 1.32.0 و پایین‌تر، API قدیمی‌تر را هدف قرار می‌دهند، در حالی که برنامه‌های ساخته شده با ARCore SDK 1.33.0 و بالاتر، API جدید را هدف قرار می‌دهند. به موارد زیر توجه کنید:
    • API جدید به جای arcorecloudanchor.googleapis.com از نام دامنه arcore.googleapis.com استفاده می‌کند.
    • اگر از کلید API استفاده می‌کنید که توسط API محدود شده است، باید API ARCore را مجاز کنید.
    • اگر از طریق backend خود درخواست‌هایی را به ARCore Cloud Anchor Management API ارسال می‌کنید، باید پس از فعال کردن ARCore API، نام دامنه را نیز به arcore.googleapis.com تغییر دهید.
    • API/endpoint قدیمی تا آگوست 2023 همچنان پشتیبانی خواهد شد.
    • برای جزئیات بیشتر به تغییرات نقطه پایانی ARCore 1.33 Cloud Anchor مراجعه کنید.

لنگرهای زمینی

تغییرات و به‌روزرسانی‌های تکمیلی

برای سایر تغییرات، رفع اشکالات و بهبود عملکرد، به یادداشت‌های انتشار مراجعه کنید:

ویژگی‌های جدید ARCore نسخه ۱.۳۲.۰

این نسخه هیچ ویژگی جدیدی ندارد.

اندروید و یونیتی (بنیاد AR برای اندروید)

  • targetSdkVersion در ARCore به سطح API اندروید ۳۲ به‌روزرسانی شده است. اگر برنامه شما targetSdkVersion مشخص نکرده باشد، targetSdkVersion برنامه شما به دلیل ادغام آشکار، ۳۲ خواهد شد.
    • کیت توسعه نرم‌افزار اندروید (Android SDK): مشخص کردن targetSdkVersion در build.gradle یا AndroidManifest.xml پروژه شما، مقدار targetSdkVersion در ARCore را لغو می‌کند.
    • بنیاد AR برای اندروید: مشخص کردن سطح API هدف در پروژه Unity شما در مسیر Project Settings > Player > Android > Other Settings، مقدار targetSdkVersion در ARCore را لغو خواهد کرد.

تغییرات و به‌روزرسانی‌های تکمیلی

برای سایر تغییرات، رفع اشکالات و بهبود عملکرد، به یادداشت‌های انتشار مراجعه کنید:

ویژگی‌های جدید ARCore نسخه ۱.۳۱.۰

API مکانی ARCore

رابط برنامه‌نویسی کاربردی جدید ARCore Geospatial از داده‌های مدل‌های سه‌بعدی Google Earth و داده‌های تصاویر Street View از Google Maps استفاده می‌کند تا برنامه شما را برای تجربیات واقعیت افزوده فراگیر، در مقیاس جهانی و مبتنی بر مکان توانمند سازد.

برای مشاهده مستندات توسعه‌دهندگان مختص پلتفرم و شروع به کار با API جدید Geospatial، به مقدمه‌ای بر API ARCore Geospatial مراجعه کنید.

عمق برد بلند

API عمق ARCore اکنون بهینه شده است تا شامل حسگر عمق با برد بیشتر باشد و دامنه مشاهدات عمق قابل نمایش را افزایش دهد. تمام ۱۶ بیت تصویر عمق استفاده می‌شود و حداکثر برد ۶۵۵۳۵ میلی‌متر را فراهم می‌کند. پیش از این فقط ۱۳ بیت با محدودیت ۸۱۹۱ میلی‌متر در نظر گرفته می‌شد.

برای مشاهده مستندات توسعه‌دهندگان مختص پلتفرم و درک تغییرات Depth API به بخش تغییرات Depth مراجعه کنید.

یادداشت‌های مخصوص پلتفرم

اندروید

رابط‌های برنامه‌نویسی کاربردی جدید مکانی ARCore
  • جاوا

    • Earth قابلیت مکان‌یابی در مختصات نسبی زمین را فراهم می‌کند.
      • Earth.createAnchor() یک Anchor جدید در مکان و جهت مشخص شده نسبت به زمین ایجاد می‌کند.
    • Earth.Earthstate وضعیت فعلی Earth ، از جمله TrackingState آن را توصیف می‌کند.
    • GeospatialPose یک موقعیت مکانی، ارتفاع و جهت قطب‌نمای خاص را نسبت به زمین توصیف می‌کند.
  • سی

    • ArEarth قابلیت مکان‌یابی در مختصات نسبی زمین را فراهم می‌کند.
      • ArEarth_acquireNewAnchor() یک Anchor جدید در مکان و جهت مشخص شده نسبت به زمین ایجاد می‌کند.
      • ArEarthState وضعیت فعلی ArEarth ، از جمله ArTrackingState آن را توصیف می‌کند.
    • ArGeospatialPose یک موقعیت مکانی، ارتفاع و جهت قطب‌نمای خاص را نسبت به زمین توصیف می‌کند.
به‌روزرسانی APIهای عمق ARCore
  • جاوا

    • فراخوانی‌های تابع Depth API تغییر کرده‌اند:
      • Frame.acquireDepthImage به Frame.acquireDepthImage16Bits .
      • Frame.acquireRawDepthImage به Frame.acquireRawDepthImage16Bits .
      • فرمت‌های تصویر خروجی برای هر دو فراخوانی از android.graphics.ImageFormat#DEPTH16 به android.hardware.HardwareBuffer#D_16 تغییر کرده‌اند.
      • عمق هنوز به صورت یک عدد صحیح ۱۶ بیتی در واحد میلی‌متر نمایش داده می‌شود، اما اکنون از تمام ۱۶ بیت برای نمایش عمق استفاده می‌شود و امکان تغییر حداکثر محدوده قابل بیان از ۸۱۹۱ میلی‌متر تا ۶۵۵۳۵ میلی‌متر را فراهم می‌کند.
    • فراخوانی‌های تابع Depth API شامل Frame.acquireDepthImage و Frame.acquireRawDepthImage منسوخ شده‌اند. لطفاً به جای آنها از Frame.acquireDepthImage16Bits و Frame.acquireRawDepthImage16Bits استفاده کنید.
  • سی

    • فراخوانی‌های تابع Depth API تغییر کرده‌اند:
      • ArFrame_acquireDepthImage به ArFrame_acquireDepthImage16Bits .
      • ArFrame_acquireRawDepthImage به ArFrame_acquireRawDepthImage16Bits
      • قالب‌های تصویر خروجی برای هر دو فراخوانی از AR_IMAGE_FORMAT_DEPTH16 به AR_IMAGE_FORMAT_D_16 تغییر کرده‌اند.
      • عمق هنوز به صورت یک عدد صحیح ۱۶ بیتی در واحد میلی‌متر نمایش داده می‌شود، اما اکنون از تمام ۱۶ بیت برای نمایش عمق استفاده می‌شود و امکان تغییر حداکثر محدوده قابل بیان از ۸۱۹۱ میلی‌متر تا ۶۵۵۳۵ میلی‌متر را فراهم می‌کند.
    • فراخوانی‌های تابع Depth API به نام‌های ArFrame_acquireDepthImage و ArFrame_acquireRawDepthImage منسوخ شده‌اند. لطفاً به جای آنها از ArFrame_acquireDepthImage16Bits و ArFrame_acquireRawDepthImage16Bits استفاده کنید.

یونیتی (بنیاد واقعیت افزوده)

رابط‌های برنامه‌نویسی کاربردی جدید مکانی ARCore:

  • AREarthManager قابلیت مکان‌یابی در مختصات نسبی زمین را فراهم می‌کند.
    • EarthTrackingState وضعیت ردیابی زمین را برای آخرین فریم دریافت می‌کند.
    • EarthState شرایط خطای زمین را حفظ می‌کند.
  • GeospatialPose یک موقعیت مکانی، ارتفاع و جهت قطب‌نمای خاص را نسبت به زمین توصیف می‌کند.
  • ARGeospatialAnchor یک لنگر برای اشیاء بازی در صحنه شما فراهم می‌کند که در یک مکان و جهت نسبت به زمین مشخص شده است.

آی‌او‌اس

رابط‌های برنامه‌نویسی کاربردی جدید مکانی ARCore:

تغییرات دیگر

برای سایر تغییرات، رفع اشکالات و بهبود عملکرد، به یادداشت‌های انتشار مراجعه کنید:

ویژگی‌های جدید ARCore نسخه ۱.۳۰.۰

این نسخه هیچ ویژگی جدیدی ندارد.

اندروید

  • API حاشیه‌نویسی‌شده مقادیری را با @NonNull و @Nullable برمی‌گرداند.
  • نسخه‌های ابزار ساخت مورد استفاده برای ساخت نمونه‌ها به‌روزرسانی شد: Gradle به ۷.۰.۲ و افزونه Android Gradle به ۷.۰.۴. ارتقاء این ابزارها برای برنامه‌های موجود ARCore الزامی نیست . برای ویژگی‌های جدید، مشکلات شناخته شده، اطلاعات ناسازگاری، به مستندات اندروید در مورد افزونه Android Gradle مراجعه کنید.

یونیتی (بنیاد واقعیت افزوده)

  • نسخه جدید arcore-unity-extensions-without-edm4u.tgz اضافه شد. این نسخه وابستگی‌های خارجی مانند External Dependency Manager for Unity را ندارد و امکان ارتقا به EDM را فراهم می‌کند. استفاده از این نسخه سبک ممکن است ناسازگاری‌ها را هنگام استفاده از کتابخانه‌های Firebase برطرف کند. برای شروع، به دستورالعمل‌های نصب ARCore Extensions for AR Foundation مراجعه کنید.

  • ExternalDependencyManager به نسخه ۱.۲.۱۶۸ ارتقا یافت تا پشتیبانی بهتری از نسخه ۲۰۲۱.۲+ داشته باشد، جزئیات را در گزارش تغییرات EDM ببینید.

  • مشکلی که باعث می‌شد جلسه ARCore هر فریم را پیکربندی کند، حتی اگر هیچ تغییری در پیکربندی جلسه ایجاد نشده باشد که باعث افت FPS می‌شد، برطرف شد.

آی‌او‌اس

  • رفع اشکالات مختلف و بهبود عملکرد.

ویژگی‌های جدید ARCore نسخه ۱.۲۹.۰

این نسخه هیچ ویژگی جدیدی ندارد.

اندروید

  • hello_ar_java و hello_ar_kotlin : رنگ یک شیء را هنگام قرار دادن آن با استفاده از SCREENSPACE_WITH_APPROXIMATE_DISTANCE تغییر داد تا اشیاء قرار داده شده با استفاده از Instant Placement بهتر تشخیص داده شوند.
  • persistent_cloud_anchor_java : یک وابستگی ساخت از دست رفته به نمونه اضافه شد. اشکالی را برطرف می‌کند که در آن میزبانی هر anchor، حتی اگر پروژه به درستی راه‌اندازی شده باشد، وضعیت CloudAnchorState ERROR_NOT_AUTHORIZED را نشان می‌داد.

یونیتی (بنیاد واقعیت افزوده)

  • بسته ARCore Extensions اکنون برای اطمینان از سازگاری نسخه نصب شده AR Foundation با نسخه ARKit XR Plugin به ARKit XR Plugin وابسته است. این کار خطای کامپایل هنگام نصب ARCore Extensions روی Unity 2019.x و فعال کردن افزونه ARKit XR را برطرف می‌کند.
  • تنظیمات پروژه ARCore Extensions از مسیر Project Settings > XR > ARCore Extensions به مسیر Project Settings > XR Plug-in Management > ARCore Extensions منتقل شده است.
  • ARCoreExtensionsConfig ، ARCoreExtensionsCameraConfigFilter ، ARCoreRecordingConfig از منوی Create > XR > ARCore Extensions به منوی Create > XR منتقل شده‌اند.

آی‌او‌اس

  • رفع اشکالات مختلف و بهبود عملکرد.

یادداشت‌های انتشار کامل

ویژگی‌های جدید ARCore نسخه ۱.۲۸.۰

  • از نوامبر ۲۰۲۲ ، برنامه‌های دارای قابلیت AR دیگر قادر به دریافت تصاویر NDK یا فراداده‌های تصویر نخواهند بود . نسخه‌های SDK تحت تأثیر قرار گرفته به تابع خاصی که فراخوانی می‌شود بستگی دارد، برای کسب اطلاعات بیشتر به اطلاعیه منسوخ شدن مراجعه کنید.
  • جاوا : ArImage#getCropRect() اکنون یک مستطیل برش با اندازه کامل برمی‌گرداند، یعنی تمام پیکسل‌های تصویر معتبر هستند. برای اطلاعات بیشتر به android.media.Image#getCropRect() مراجعه کنید.

ویژگی‌های جدید ARCore نسخه ۱.۲۷.۰

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

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

نمونه برنامه‌ها به زبان کاتلین

ویژگی‌های جدید ARCore نسخه ۱.۲۶.۰

این نسخه تغییرات قابل توجه زیر را اضافه می‌کند:

  • اکنون URIها برای مجموعه داده‌ها در ضبط و پخش پشتیبانی می‌شوند.

تغییرات و به‌روزرسانی‌های تکمیلی

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

ویژگی‌های جدید ARCore نسخه ۱.۲۵.۰

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

ویژگی‌های جدید ARCore نسخه ۱.۲۴.۰

این نسخه تغییرات قابل توجه زیر را اضافه می‌کند:

  • یک API جدید برای عمق خام که بدون فیلتر کردن فضای تصویر، عمق تصویر را ارائه می‌دهد.
  • Custom data track recording capability to the Recording & Playback API
  • The ability to conduct Depth hit-tests

Raw Depth

The Raw Depth API provides depth data for a camera image that has higher accuracy than full Depth API data, but does not always cover every pixel. Raw depth images, along with their matching confidence images, can also be further processed, allowing apps to use only the depth data that has sufficient accuracy for their individual use case.

Developer guides:

Custom track recording

The new custom data track capability in the Recording & Playback API allows you to add custom data to an ARCore frame during recording and retrieve that same data from the frame during playback.

Developer guides:

Depth hit-tests

Previously, hit-tests could only be conducted on detected planes, limiting locations to large, flat surfaces. Depth hit-tests take advantage of both smooth and raw depth information to provide more accurate hit results, even on non-planar and low-texture surfaces.

Developer guides:

Additional changes and updates

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.23.0

Pending dual camera support

Support for dual camera is being rolled out in the coming weeks. See the supported devices page for more information.

New debugging tools

By sending a broadcast intent, developers can enable:

Hosting and resolving Cloud Anchors

AR-enabled apps built using ARCore SDK 1.11.0 or earlier are no longer able to host or resolve Cloud Anchors.

Apps built with ARCore SDK 1.12.0 or later are unaffected. Their use of the ARCore Cloud Anchor API is covered by the deprecation policy .

Additional changes and updates

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.22.0

This release adds new Recording and Playback APIs and Camera Config Filter APIs for ARCore Extensions for AR Foundation. See the ARCore Extensions complete release notes for details.

Additional changes and updates

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.21.0

This release adds new Recording and Playback APIs for Android , Android NDK , and Unity .

Recording and Playback

With the Recording and Playback APIs, you can record video and AR data once within a given environment and use that content to replace a live camera session for testing purposes. ARCore saves recorded sessions to MP4 files that contain multiple video tracks and other miscellaneous data on the device. You can then point your app to use this data in place of a live camera session. This allows you to replay that content indefinitely to try out different AR effects without having to return to the field.

For more details:

What's new in ARCore v1.20.0

This release adds the following notable changes:

New support for persistent Cloud Anchors

Prior to ARCore v1.20, Cloud Anchors could only be resolved for up to 24 hours after they were first hosted. With persistent Cloud Anchors, you can now create a Cloud Anchor with a time to live (TTL) between one and 365 days. You can also extend the lifetime of the anchor after it is already hosted using the Cloud Anchor Management API .

Use of persistent Cloud Anchors is covered by the new Cloud Anchors deprecation policy .

Additional changes and updates

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.19.0

This release adds the following notable changes:

Instant Placement

The Instant Placement API allows the user to place an AR object on the screen without having to wait for ARCore to detect surface geometry. Object placement is refined in real time as the user moves further around the environment. Once ARCore detects the correct pose in the region where the AR object is placed, the white object automatically updates to be pose-accurate, and becomes opaque.

The following clip shows a virtual Android figure on a real-world table. The figure is white and much smaller when first placed. After ARCore refines its calculations of the scene dimensions, the figure jumps to a more accurate position. This may result in a difference in the perceived "size" of the object.

For more details:

What's new in ARCore v1.18.0

This release adds the following notable changes:

Depth API

On depth-supported devices , the Depth API uses the ARCore-supported device's RGB camera, or active depth sensor if available, to create depth maps. You can then use the per-pixel depth provided by a depth map to make virtual objects accurately appear in front of or behind real world objects, enabling immersive and realistic user experiences.

For example, the following images show a virtual Android figure in a real space containing a trunk beside a door. The Depth API properly occludes the figure behind the edge of the trunk.

For more details:

What's new in ARCore v1.17.0

Notable in ARCore SDK for Android

See also the Android SDK for Android complete release notes .

Notable in ARCore SDK for Unity

See also the ARCore SDK for Unity complete release notes .

Notable in ARCore SDK for iOS

  • The binary size of the Cloud Anchors SDK has significantly decreased.

  • Bitcode is now supported for Augmented Faces.

See also the ARCore SDK for iOS complete release notes .

What's new in ARCore v1.16.0

Notable in ARCore SDK for Android and Sceneform SDK for Android

This release adds the following notable changes:

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

Notable in ARCore Extensions for AR Foundation

This release adds the following notable changes:

  • AR Foundation's XRCameraConfiguration is extended with methods that let you choose the appropriate camera configuration based on the criteria you want. These methods include GetTextureDimensions() , GetFPSRange() , and GetDepthSensorUsages() . Read detailed instructions .

  • Unity 2019.3.0f6 is now the minimum recommended version for ARCore Extensions. AR Foundation 3.1.0-preview.6 requires Unity version 2019.3 or later.

  • Unity now uses the terms Anchor , Cloud Anchor , and Cloud Anchor ID in their cross-platform AR API . The documentation for ARCore Extensions has been updated to reflect this.

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

Notable in ARCore SDK for Unity

This release adds the following notable change:

  • Most devices now return additional supported camera configurations with lower GPU texture resolutions than the device's default GPU texture resolution. (See ARCore supported devices for details.) These expanded GPU resolutions are available via the ARCoreCameraConfigFilter API.

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

ARCore SDK for Unity complete release notes

What's new in ARCore v1.15.0

Notable in ARCore Extensions for AR Foundation

This release adds the following notable changes.

  • Added CloudAnchors sample showing how to create shared AR experiences for both Android and iOS. See instructions for Android or iOS .

  • Unity 2019.2.17f1 is now the minimum recommended version to use with ARCore Extensions.

ARCore Extensions complete release notes

Notable in ARCore SDK for Unity

This release has the following known issues.

  • Instant Preview may freeze Unity when using Android 9 and a USB 3 cable. To remedy, update to Android 10 or use a USB 2 cable.

  • Instant Preview may fail to display on device when Unity's game view resolution is too high. To remedy, lower Unity's game view resolution in the Editor.

ARCore SDK for Unity complete release notes

تغییرات اضافی

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.14.0

This release adds the following notable changes.

What's new in ARCore v1.13.0

This release adds the following notable changes.

See the following release notes for additional bug fixes and other breaking changes.

What's new in ARCore v1.12.0

This release adds the following changes:

  • Addition of the Augmented Faces feature to iOS. For more information, see this overview , quickstart , and developer guide .

  • Support for using ARCore Extensions for Unity's AR Foundation to build Android apps with Cloud Anchors.

  • The following changes to Cloud Anchors:

    • To comply with our updated privacy requirements for using ARCore SDKs 1.12 or later, you must disclose the use of Cloud Anchors prominently in your application by including the following text, as well as a link to learn more, on a notice screen: “To power this session, Google will process visual data from your camera.” You can do this by implementing the recommended user notice flow available in our Cloud Anchor sample apps .

    For more details, refer to User privacy requirements .

For more details on Cloud Anchors:

What's new in ARCore v1.11.0

This release adds the following changes:

  • The ARCore service has been renamed to Google Play Services for AR . On Google Play devices, it is now distributed as part of Google Play Services.

  • ARCore's camera configs target 60 fps on supported devices and prioritizes using the depth sensor on devices that have one. You can use new camera config filters to limit the camera capture frame rate to 30 fps, prevent ARCore from using a depth sensor, or filter based on both options.

For more details on camera configs:

What's new in ARCore v1.10.0

This release adds new Environmental HDR lighting estimation capabilities to the Lighting Estimation API for Android, Android NDK, and Unity.

These APIs use machine learning to analyze the input camera image and estimate environmental lighting. You can use this lighting estimation data to render extremely realistic lighting, including a primary directional light, shadows, ambient lighting, specular highlights and reflections on virtual objects. The result is virtual content that feels more realistic.

For more details:

What's new in ARCore v1.9.0

New in ARCore SDK for Android

This release adds these new APIs and features:

  • Scene Viewer is an immersive viewer that enables AR experiences from your website. It lets Android mobile device users easily place, view, and interact with web-hosted 3D models in their environment.

  • New Augmented Images features:

    • ARCore now tracks moving Augmented Images . Examples of moving images are an advertisement on a passing bus or an image on a flat object held by a user as they move their hand around.

    • After an image has been detected, ARCore is able to continue tracking the image's position and orientation, even if the image has temporarily moved out of the camera view.

    • Use AugmentedImage#getTrackingMethod() (Java) or ArAugmentedImage_getTrackingMethod() (NDK) to determine whether the Augmented image is currently being tracked by the camera ( FULL_TRACKING ), or is being tracked based on its last known position ( LAST_KNOWN_POSE ).

  • Cloud Anchors documentation now includes a more detailed explanation of how anchors are hosted and resolved .

Complete release notes

New in ARCore SDK for Unity

  • New Augmented Images features:

    • ARCore now tracks moving Augmented Images . Examples of moving images might be an advertisement on a passing bus or an image on a flat object held by a user as they move it around.

    • After an image has been detected, ARCore is able to continue tracking the image's position and orientation, even if the image has temporarily moved out of the camera view.

    • The new AugmentedImage.GetTrackingMethod() API enables your app to determine whether the Augmented image is currently being tracked by the camera ( FullTracking ), or is being tracked based on its last known position ( LastKnownPose ).

  • Cloud Anchors documentation now includes a more detailed explanation of how anchors are hosted and resolved .

Complete release notes

New in ARCore SDK for iOS

Complete release notes