Grundlegende Konzepte

Bevor Sie sich mit ARCore befassen, sollten Sie sich mit einigen grundlegenden Konzepten vertraut machen. Diese Konzepte veranschaulichen, wie ARCore Erlebnisse ermöglicht, bei denen virtuelle Inhalte so aussehen, als wären sie auf realen Oberflächen oder an realen Orten gebunden.

Bewegungserkennung

Während du dein Smartphone auf der ganzen Welt bewegst, nutzt ARCore einen Prozess namens Simultaneous Localization and Mapping (simultanes Lokalisieren und Kartieren) oder SLAM, um zu verstehen, wo sich das Smartphone im Verhältnis zur Welt um es herum befindet. ARCore erkennt optisch bestimmte Merkmale im aufgenommenen Kamerabild, sogenannte Feature Points, und berechnet anhand dieser Punkte die Standortänderung. Die visuellen Informationen werden mit Inertialmessungen des IMU des Geräts kombiniert, um die Pose (Position und Ausrichtung) der Kamera im Zeitverlauf relativ zur Welt zu schätzen.

Entwickler können virtuelle Inhalte aus der richtigen Perspektive rendern, indem sie die Position der virtuellen Kamera, die deine 3D-Inhalte rendert, an die Kamera des Geräts anpassen, die von ARCore bereitgestellt wird. Das gerenderte virtuelle Bild kann über das Bild gelegt werden, das die Kamera des Geräts erhält, sodass es so aussieht, als wäre der virtuelle Inhalt Teil der realen Welt.

Umweltbewusstsein

Durch die Erkennung von Featurepunkten und Ebenen verbessert ARCore kontinuierlich sein Verständnis der realen Umgebung.

ARCore sucht nach Gruppen von Merkmalspunkten, die auf gemeinsamen horizontalen oder vertikalen Oberflächen wie Tabellen oder Wänden zu liegen scheinen, und stellt diese Oberflächen für Ihre App als geometrische Ebenen zur Verfügung. ARCore kann auch die Grenzen jeder geometrischen Ebene ermitteln und diese Informationen Ihrer App zur Verfügung stellen. Sie können diese Informationen verwenden, um virtuelle Objekte auf flachen Oberflächen zu platzieren.

Da ARCore mithilfe von Featurepunkten Ebenen erkennt, werden flache Oberflächen ohne Textur, z. B. eine weiße Wand, möglicherweise nicht richtig erkannt.

Umfassendes Verständnis

ARCore kann mit der RGB-Hauptkamera eines unterstützten Geräts Tiefenkarten – Bilder, die Daten zur Entfernung zwischen Oberflächen von einem bestimmten Punkt enthalten – erstellen. Sie können die Informationen einer Tiefenkarte verwenden, um immersive und realistische Nutzererfahrungen zu ermöglichen. So können Sie beispielsweise dafür sorgen, dass virtuelle Objekte genau mit beobachteten Oberflächen kollidieren, oder sie vor oder hinter realen Objekten erscheinen lassen.

Lichtschätzung

ARCore kann Informationen zur Beleuchtung der Umgebung erkennen und dir die durchschnittliche Intensität und Farbkorrektur eines bestimmten Kamerabildes anzeigen. Mit diesen Informationen können Sie Ihre virtuellen Objekte unter den gleichen Bedingungen wie die Umgebung beleuchten, was für einen realistischeren Eindruck sorgt.

Nutzerinteraktion

ARCore verwendet Treffertests, um eine (x,y)-Koordinate, die dem Display des Smartphones entspricht (durch Tippen oder eine andere Interaktion bereitgestellt, die Ihre App unterstützen soll) und projiziert einen Strahl in die Weltsicht der Kamera. Dabei werden alle geometrischen Ebenen oder Merkmalspunkte zurückgegeben, die der Strahl schneidet, sowie die Position dieser Schnittstelle im Weltraum. Dadurch können Nutzer Objekte in der Umgebung auswählen oder anderweitig mit ihnen interagieren.

Orientierungspunkte

Mit ausgerichteten Punkten können Sie virtuelle Objekte auf schrägen Oberflächen platzieren. Wenn du einen Treffertest durchführst, der einen Merkmalspunkt zurückgibt, sucht ARCore nach nahe gelegenen Merkmalspunkten und versucht anhand dieser, den Winkel der Oberfläche am angegebenen Elementpunkt zu schätzen. ARCore gibt dann eine Pose zurück, die diesen Winkel berücksichtigt.

Da ARCore Cluster von Merkmalspunkten verwendet, um den Winkel der Oberfläche zu erkennen, werden Oberflächen ohne Textur, z. B. eine weiße Wand, möglicherweise nicht richtig erkannt.

Anker und Tracking-Elemente

Positionen können sich ändern, wenn ARCore die eigene Position und Umgebung besser versteht. Wenn Sie ein virtuelles Objekt platzieren möchten, müssen Sie einen Anker definieren, damit ARCore die Position des Objekts im Zeitverlauf verfolgt. Oft erstellen Sie einen Anker basierend auf der Position, die von einem Treffertest zurückgegeben wurde, wie unter Nutzerinteraktion beschrieben.

Die Tatsache, dass sich Posen ändern können, bedeutet, dass ARCore die Position von Umgebungsobjekten wie geometrischen Ebenen und Merkmalspunkten im Laufe der Zeit aktualisieren kann. Ebenen und Punkte sind ein spezieller Objekttyp, der als verfolgbar bezeichnet wird. Wie der Name schon sagt, sind dies Objekte, die ARCore im Laufe der Zeit verfolgt. Sie können virtuelle Objekte mit bestimmten Trackables verankern, um sicherzustellen, dass die Beziehung zwischen Ihrem virtuellen Objekt und dem Trackable auch dann stabil bleibt, wenn sich das Gerät bewegt. Wenn Sie also eine virtuelle Android-Figur auf Ihrem Schreibtisch platzieren und ARCore später die Position der mit dem Schreibtisch verknüpften geometrischen Ebene anpasst, bleibt die Android-Figur weiter oben auf dem Tisch.

Weitere Informationen finden Sie unter Mit Ankern arbeiten.

Erweiterte Bilder

Mit der Funktion „Augmented Images“ kannst du AR-Apps erstellen, die auf bestimmte 2D-Bilder reagieren, z. B. auf Produktverpackungen oder Filmposter. Nutzer können AR-Erlebnisse auslösen, wenn sie die Kamera ihres Smartphones auf ein bestimmtes Bild richten. Sie können die Kamera beispielsweise auf ein Filmplakat richten und einen Charakter in eine Szene richten.

ARCore verfolgt auch sich bewegende Bilder, z. B. eine Reklametafel an der Seite eines fahrenden Busses.

Bilder können offline kompiliert werden, um eine Bilddatenbank zu erstellen, oder einzelne Bilder können in Echtzeit vom Gerät aus hinzugefügt werden. Nach der Registrierung erkennt ARCore diese Bilder und die Grenzen der Bilder und gibt eine entsprechende Pose zurück.

Inhalte teilen

Mit der ARCore Cloud Anchor API können Sie Apps für die Zusammenarbeit oder für den Mehrspielermodus für Android- und iOS-Geräte erstellen.

Mit Cloud Anchors sendet ein Gerät einen Anker und nahe gelegene Featurepunkte zum Hosting an die Cloud. Diese Anker können für andere Nutzer auf Android- oder iOS-Geräten in derselben Umgebung freigegeben werden. Dadurch können Apps dieselben 3D-Objekte, die an diese Anker angehängt sind, rendern, sodass Nutzer die gleiche AR-Erfahrung gleichzeitig haben.

Weitere Informationen

Setzen Sie diese Konzepte in die Praxis um, indem Sie AR-Erlebnisse auf einer Plattform Ihrer Wahl erstellen.