ARCore SDK на Google за приложения за 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
API за разширени лица
Новото API за разширени лица позволява на разработчиците да наслагват лицето на потребителя с 3D ефекти. Като пример Google казва, че разработчиците могат да създават ефекти като анимирани маски, очила, виртуални шапки или да извършват ретуширане на кожата. Той използва предната камера, за да създаде 468-точкова 3D мрежа, която предоставя координати и специфични за региона котви. Разработчиците могат да използват Unity или Sceneform, за да започнат работа с Augmented Faces API.
Анимации в Sceneform
Към обектите, създадени в Sceneform, вече могат да се добавят анимации, като танци, скачане или въртене.
Интегриране на ARCore елементи
ARCore SDK за Unity има интегрирани ARCore Elements, общи AR UI компоненти, предназначени да опростят вашия работен процес. Намиране на равнина и манипулиране на обекти, което рационализира процеса на откриване на повърхност и използване на жестове за манипулират съответно виртуални обекти, са два от компонентите на AR UI, които Google подчерта в своя блог пост.
Цена: Безплатно.
4.
Споделен достъп до камерата
Превключването и излизането от режим AR ще стане по-безпроблемно за потребителя благодарение на споделения достъп до камерата в SDK. Тази функция позволява на потребителите да поставят на пауза AR изживяването, да скочат до камерата, за да направят снимка (в идеалния случай на нещо във вашето приложение) и след това да се върнат елегантно обратно към AR изживяването.
ARCore SDK за Android 1.7.0 Changelog
Нови API и възможности
- Нов
Camera.getTrackingFailureReason()
(Java) иArCamera_getTrackingFailureReason()
(NDK), който връща причината за неуспешно проследяване на AR, когато състоянието на проследяване еPAUSED
. - Нов
Frame.transformCoordinates2d(…)
(Java) иArFrame_transformCoordinates2d(…)
(NDK) метод, който трансформира списък от 2D координати от една 2D координатна система в друга 2D координатна система. - Конструктори на нови сесии
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
клас, за да позволи на приложенията да споделят достъп до API на Camera2 с 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, …)
(NDK) вместо това.
Изчистване на бъгове
-
Брой #630:
-
Java:
Session.createAnchor()
иTrackable.createAnchor()
сега ще хвърли правилноSessionPausedException
иNotTrackingException
когато е подходящо вместоFatalException
. -
° С:
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 Store. Свързах едно просто приложение по-долу, което обичам да използвам, за да проверя дали ARCore работи.
Цена: Безплатно.
3.9.
Източник 1: Блог на Google DevelopersИзточник 2: Страница за издания на Google ARCore GitHubИзточник 3: Google ARCore поддържани устройства