Το ARCore SDK της Google για εφαρμογές Android επαυξημένης πραγματικότητας φτάνει στην έκδοση 1.7 με νέα API και υποστήριξη για τα Honor View 20, Moto G7, OPPO R17 Pro και άλλα.
Το SDK επαυξημένης πραγματικότητας της Google, ARCore, λαμβάνει μια μεγάλη ενημέρωση στην έκδοση 1.7. Σε μια ανάρτηση ιστολογίου, η Google δηλώνει ότι η έκδοση 1.7 εστιάζει σε "δημιουργικά στοιχεία" όπως selfies επαυξημένης πραγματικότητας, κινούμενα σχέδια χαρακτήρων σε εφαρμογές Sceneform AR, ενσωμάτωση στοιχείων ARCore και προσθήκη Shared Πρόσβαση στην κάμερα. Επιπλέον, η επίσημη λίστα των υποστηριζόμενων συσκευών έχει επεκταθεί για να περιλαμβάνει συσκευές όπως το Honor View 20, τη σειρά Moto G7, το OPPO R17 Pro και άλλες συσκευές.
Επισκόπηση ARCore 1.7
API Augmented Faces
Το νέο API Augmented Faces επιτρέπει στους προγραμματιστές να επικαλύπτουν το πρόσωπο ενός χρήστη με εφέ 3D. Για παράδειγμα, η Google λέει ότι οι προγραμματιστές μπορούν να δημιουργήσουν εφέ όπως κινούμενες μάσκες, γυαλιά, εικονικά καπέλα ή να κάνουν ρετούς δέρματος. Χρησιμοποιεί την μπροστινή κάμερα για να δημιουργήσει ένα πλέγμα 3D 468 σημείων που παρέχει συντεταγμένες και άγκυρες για συγκεκριμένες περιοχές. Οι προγραμματιστές μπορούν να χρησιμοποιήσουν το Unity ή το Sceneform για να ξεκινήσουν με το API Augmented Faces.
Κινούμενα σχέδια σε Sceneform
Τα αντικείμενα που δημιουργούνται στο Sceneform μπορούν πλέον να έχουν προστεθεί κινούμενα σχέδια, όπως χορό, άλμα ή περιστροφή.
Ενσωμάτωση στοιχείων ARCore
Το ARCore SDK for Unity έχει ενσωματωμένα στοιχεία ARCore, κοινά στοιχεία διεπαφής χρήστη AR που έχουν σχεδιαστεί για να απλοποιούν τη ροή εργασίας σας. Εντοπισμός αεροπλάνου και χειρισμός αντικειμένων, ο οποίος εξορθολογίζει τη διαδικασία ανίχνευσης μιας επιφάνειας και χρήσης χειρονομιών για χειρίζονται εικονικά αντικείμενα αντίστοιχα, είναι δύο από τα στοιχεία διεπαφής χρήστη AR που τόνισε η Google στο ιστολόγιό της Θέση.
Τιμή: Δωρεάν.
4.
Κοινόχρηστη πρόσβαση στην κάμερα
Η εναλλαγή και η έξοδος από τη λειτουργία AR θα γίνει πιο απρόσκοπτη για τον χρήστη χάρη στην πρόσβαση στην Κοινόχρηστη κάμερα στο SDK. Αυτή η δυνατότητα επιτρέπει στους χρήστες να κάνουν παύση της εμπειρίας AR, να μεταβούν στην κάμερα για να τραβήξουν μια φωτογραφία (ιδανικά, από κάτι στην εφαρμογή σας) και στη συνέχεια να επιστρέψουν με χάρη στην εμπειρία AR.
Καταγραφή αλλαγών ARCore SDK για Android 1.7.0
Νέα API και δυνατότητες
- Νέος
Camera.getTrackingFailureReason()
(Java) καιArCamera_getTrackingFailureReason()
(NDK) που επιστρέφει την αιτία της αποτυχίας παρακολούθησης AR όταν είναι η κατάσταση παρακολούθησηςPAUSED
. - Νέος
Frame.transformCoordinates2d(…)
(Java) καιArFrame_transformCoordinates2d(…)
(NDK) μέθοδος που μετατρέπει μια λίστα 2Δ συντεταγμένων από ένα σύστημα 2D συντεταγμένων σε ένα άλλο σύστημα 2D συντεταγμένων. - Νέοι κατασκευαστές συνεδρίας
Session(Context, Set
(Java) και) ArSession_createWithFeatures()
(NDK) ενεργοποιούν νέες δυνατότητες, ξεκινώντας από: -
Μπροστινή κάμερα & επαυξημένα πρόσωπα
- Οι εφαρμογές μπορούν τώρα να ενεργοποιήσουν τα Επαυξημένα Πρόσωπα με την μπροστινή κάμερα (selfie) ζητώντας το
FRONT_CAMERA
χαρακτηριστικό κατά τη δημιουργία μιας συνεδρίας. - Νέες μέθοδοι
CameraConfig.getFacingDirection()
(Java) καιArCameraConfig_getFacingDirection()
(NDK) επιτρέπει σε μια εφαρμογή να ελέγχει εάν χρησιμοποιεί την μπροστινή κάμερα. - Σημείωση: Η παρακολούθηση κίνησης, όλοι οι τύποι αγκυρώσεων, οι επαυξημένες εικόνες και η ανίχνευση επιπέδου δεν είναι διαθέσιμα όταν χρησιμοποιείτε την μπροστινή κάμερα.
- Νέα μέθοδος
Config.setAugmentedFaceMode(…)
επιτρέπει σε μια εφαρμογή να ενεργοποιεί τα επαυξημένα πρόσωπα. - Νέο Trackable
AugmentedFace
τάξη για να ανιχνεύσει ένα πρόσωπο, να καθορίσει τις στάσεις της περιοχής και να δημιουργήσει ένα τρισδιάστατο πλέγμα προσώπου. -
AugmentedFace
(Java) τάξη και ένα σύνολοArAugmentedFace_*
Οι μέθοδοι (NDK) παρέχουν τους λήπτες για να ζητήσουν την κεντρική θέση, τις θέσεις περιοχής, τις κορυφές, τις κανονικές και τους τριγώνους δείκτες του τρισδιάστατου πλέγματος προσώπου.
- Οι εφαρμογές μπορούν τώρα να ενεργοποιήσουν τα Επαυξημένα Πρόσωπα με την μπροστινή κάμερα (selfie) ζητώντας το
-
Πρόσβαση σε κοινόχρηστη κάμερα (μόνο για Java)
- Οι εφαρμογές μπορούν πλέον να μοιράζονται τον έλεγχο της κάμερας με το ARCore ζητώντας το
SHARED_CAMERA
χαρακτηριστικό κατά τη δημιουργία μιας συνεδρίας. Αυτή η λειτουργία προορίζεται κυρίως να επιτρέπει τη γρήγορη εναλλαγή μεταξύ των λειτουργιών μόνο για κάμερα (χωρίς AR) και ARCore. - Νέος
shared_camera_java
παράδειγμα που δείχνει πώς να μοιράζεστε την πρόσβαση στην κάμερα με το ARCore. - Νέος
SharedCamera
class για να επιτρέψετε στις εφαρμογές να μοιράζονται την πρόσβαση στο 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, …)
(NDK) αντί.
Διορθώσεις σφαλμάτων
-
Τεύχος #630:
-
Ιάβα:
Session.createAnchor()
καιTrackable.createAnchor()
θα ρίξει τώρα σωστάSessionPausedException
καιNotTrackingException
όταν ενδείκνυται αντί γιαFatalException
. -
ΝΤΟ:
ArSession_acquireNewAnchor()
καιArTrackable_acquireNewAnchor()
θα επιστρέψει τώρα σωστάAR_ERROR_SESSION_PAUSED
καιAR_ERROR_NOT_TRACKING
όταν ενδείκνυται αντί γιαAR_ERROR_FATAL
.
-
Ιάβα:
Διαβάστε περισσότερα
Νέες συσκευές που υποστηρίζουν το 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 View 20 φόρουμΦόρουμ Huawei Nova 4Φόρουμ Moto G7Moto G7 Play φόρουμΦόρουμ Moto G7 PlusΦόρουμ Moto G7 Power
ο Honor View 20, Huawei Y9 2019, Moto G7 Power, και OPPO R17 Pro όλα κυκλοφόρησαν πρόσφατα στην Ινδία. ο 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