Google ARCore SDK для Android-додатків доповненої реальності досягає версії 1.7 з новими API та підтримкою Honor View 20, Moto G7, OPPO R17 Pro тощо.
Пакет SDK доповненої реальності Google ARCore отримує велике оновлення до версії 1.7. У дописі в блозі Google стверджує, що версія 1.7 зосереджена на «креативні елементи», такі як селфі в доповненій реальності, анімація персонажів у програмах Sceneform AR, інтеграція ARCore Elements і додавання Shared Доступ до камери. Крім того, офіційний список підтримуваних пристроїв розширено, включаючи такі пристрої, як Honor View 20, серія Moto G7, OPPO R17 Pro та інші.
Огляд ARCore 1.7
Augmented Faces API
Новий Augmented Faces API дозволяє розробникам накладати на обличчя користувача тривимірні ефекти. Як приклад, Google каже, що розробники можуть створювати такі ефекти, як анімовані маски, окуляри, віртуальні капелюхи або виконувати ретуш шкіри. Він використовує фронтальну камеру для створення 3D-сітки з 468 точок, яка надає координати та прив’язки для певного регіону. Розробники можуть використовувати Unity або Sceneform, щоб розпочати роботу з Augmented Faces API.
Анімація в Sceneform
До об’єктів, створених у Sceneform, тепер можна додавати анімацію, як-от танці, стрибки чи обертання.
Інтеграція елементів ARCore
ARCore SDK для Unity інтегрував ARCore Elements, поширені компоненти користувальницького інтерфейсу AR, призначені для спрощення робочого процесу. Пошук площини та маніпулювання об’єктами, що спрощує процес виявлення поверхні та використання жестів для маніпулювати віртуальними об’єктами, відповідно, є двома компонентами інтерфейсу доповненої реальності, які Google висвітлив у своєму блозі пост.
Ціна: безкоштовно.
4.
Спільний доступ до камери
Завдяки доступу до спільної камери в пакеті SDK для користувача стане легше вмикатися та виходити з режиму AR. Ця функція дозволяє користувачам призупинити доповнену реальність, перейти до камери, щоб зробити знімок (в ідеалі, щось у вашій програмі), а потім витончено повернутися до доповненої реальності.
Список змін ARCore SDK для Android 1.7.0
Нові API та можливості
- новий
Camera.getTrackingFailureReason()
(Java) іArCamera_getTrackingFailureReason()
(NDK), який повертає причину помилки відстеження AR, коли стан відстеження єPAUSED
. - новий
Frame.transformCoordinates2d(…)
(Java) іArFrame_transformCoordinates2d(…)
(NDK) метод, який перетворює список двовимірних координат з однієї двовимірної системи координат в іншу двовимірну систему координат. - Нові конструктори сесії
Session(Context, Set
(Java) і) ArSession_createWithFeatures()
(NDK) увімкнути нові можливості, починаючи з: -
Фронтальна камера та розширені обличчя
- Програми тепер можуть увімкнути розширені обличчя за допомогою передньої (селфі) камери, запитавши
FRONT_CAMERA
під час створення сеансу. - Нові методи
CameraConfig.getFacingDirection()
(Java) іArCameraConfig_getFacingDirection()
(NDK) дозволяє програмі перевіряти, чи використовує вона фронтальну камеру. - Примітка: Відстеження руху, усі типи прив’язок, доповнені зображення та визначення площини недоступні під час використання фронтальної камери.
- Новий метод
Config.setAugmentedFaceMode(…)
дозволяє програмі вмикати доповнені обличчя. - Нове відстеження
AugmentedFace
клас для виявлення обличчя, визначення пози регіону та створення 3D-сітки обличчя. -
AugmentedFace
(Java) клас і набірArAugmentedFace_*
Методи (NDK) надають геттери для запиту центральної пози, позиції регіону, вершин, нормалей та індексів трикутника 3D-сітки граней.
- Програми тепер можуть увімкнути розширені обличчя за допомогою передньої (селфі) камери, запитавши
-
Спільний доступ до камери (тільки Java)
- Програми тепер можуть спільно керувати камерою з ARCore, запитуючи
SHARED_CAMERA
під час створення сеансу. Ця функція в першу чергу призначена для швидкого перемикання між режимами лише камери (не AR) і ARCore. - новий
shared_camera_java
приклад, який демонструє, як поділитися доступом до камери за допомогою ARCore. - новий
SharedCamera
клас, щоб дозволити програмам ділитися доступом Camera2 API до ARCore.-
Примітка:
Frame.getImageMetadata()
кидкиIllegalStateException
під час використання спільного сеансу камери. Натомість підпишіться на зворотний дзвінок камери безпосередньо за допомогоюSharedCamera.setCaptureCallback(…)
, і використовуйтеFrame.getAndroidCameraTimestamp()
щоб співвіднести кадр із метаданими.
-
Примітка:
- Новий метод
Session.getSharedCamera()
отримує спільний об’єкт камери для сеансу. - Новий метод
Frame.getAndroidCameraTimestamp()
повертає позначку часу камери Android зображення.
- Програми тепер можуть спільно керувати камерою з ARCore, запитуючи
- Додаткові зміни лише для Java:
- Новий метод
Session.close()
дозволяє явно вивільняти ресурси, які зберігаються сеансом ARCore, для кращого контролю ресурсів. -
PointCloud
тепер реалізуєCloseable
, що дозволяє використовувати його з Java try-with-resources і Kotlinuse
блоки.
- Новий метод
Депрекації
-
Frame.transformDisplayUvCoords
(Java) іArFrame_transformDisplayUvCoords
(NDK) тепер не підтримується. Будь ласка, використовуйтеframe.transformCoordinates2d(Coordinates2d.VIEW_NORMALIZED, …, Coordinates2d.TEXTURE_NORMALIZED, …)
(Java) іArFrame_transformCoordinates2d(…, AR_COORDINATES_2D_VIEW_NORMALIZED, …, AR_COORDINATES_2D_TEXTURE_NORMALIZED, …)
(НДК) замість цього.
Виправлення помилок
-
Випуск №630:
-
Java:
Session.createAnchor()
іTrackable.createAnchor()
тепер буде правильно кидатиSessionPausedException
іNotTrackingException
коли це доречно замістьFatalException
. -
C:
ArSession_acquireNewAnchor()
іArTrackable_acquireNewAnchor()
тепер правильно повернетьсяAR_ERROR_SESSION_PAUSED
іAR_ERROR_NOT_TRACKING
коли це доречно замістьAR_ERROR_FATAL
.
-
Java:
читати далі
Нові пристрої з підтримкою ARCore
Оскільки ми останнійприніс Ваші новини про платформу доповненої реальності Google, ось пристрої, які були додані до списку підтримуваних пристроїв Google.
- Honor View 20
- Huawei Nova 4
- Huawei Y9 2019
- Motorola Moto G7
- Motorola Moto G7 Plus
- Motorola Moto G7 Power
- Motorola Moto G7 Play
- OPPO R17 Pro
- Vivo NEX Dual Display Edition
Honor Переглянути 20 форумівФоруми Huawei Nova 4Форуми Moto G7Форуми Moto G7 PlayФоруми Moto G7 PlusФоруми Moto G7 Power
The Honor View 20, Huawei Y9 2019, Moto G7 Power, і OPPO R17 Pro усі нещодавно запущені в Індії. The Huawei Nova 4 і Vivo NEX Dual Display Edition ще не запущено за межі Китаю.
Якщо вам вдасться завантажити Google ARCore 1.7 на підтримуваний пристрій, перегляньте деякі можливості доповненої реальності, доступні в магазині Google Play. Нижче я навів посилання на одну просту програму, яку я люблю використовувати для перевірки роботи ARCore.
Ціна: безкоштовно.
3.9.
Джерело 1: блог Google DevelopersДжерело 2: Сторінка випусків Google ARCore GitHubДжерело 3: Підтримувані пристрої Google ARCore