2017-12-28 7 views
0

Was ist der Sinn eines "reinen" ARAnchors (das ist kein ARPlaneAnchor)?Wird ARKit jemals automatisch einen reinen ARAnchor aktualisieren oder "erkennen"/hinzufügen? (Wie es erzeugt ARPlaneAnchors?)

Wird ARKit automatisch einen reinen ARAnchor aktualisieren/verfolgen oder hinzufügen/erkennen? (Wie funktioniert es mit ARPlaneAnchor?)

Warum sollte jemand ARKit einen benutzerdefinierten ARAnchor hinzufügen wollen, wenn sie nicht verfolgt werden?

Kann ein reiner ARAnchor jemals automatisch von ARKit auf einen ARPlaneAnchor "aufgerüstet" werden?

+0

Mögliches Duplikat [Was ist der Unterschied zwischen ARAnchor mit einem Knoten einfügen und direkt einen Knoten einfügen?] (Https://stackoverflow.com/questions/45155379/whats-the-difference - between-using-aranchor-Einfügen-a-node-and-direct-inser) – rickster

+0

Nein, diese Frage fragt nach verschiedenen Möglichkeiten, das gleiche zu tun - speziell zum Hinzufügen eines Knotens in SceneKit. Es wird nicht gefragt, ob ARKits automatisch von ARKit hinzugefügt oder aktualisiert werden oder ob ein ARAnchor automatisch auf einen ARPlaneAnchor "aufgerüstet" werden kann. Bitte kennzeichnen Sie dies nicht als Duplikat. – aidinabedi

Antwort

0

Der Hauptgrund, warum Sie ARAnchor .....

  1. ARAnchor geeignet ist für Nicht-SceneKit Motor (SpriteKit, Metall, etc.), für SceneKit verwenden könnte es die gleiche ist (da Arkit abgeleitet von SceneKit und hat die gleiche Weltkoordinate)

  2. Wenn Sie ARSKView verwenden, benötigen Sie eine Möglichkeit, Positionen/Ausrichtungen in 3D-Umgebung (real-world) zu referenzieren, da SpriteKit kein 3D ist. Sie benötigen ARAnchor, um Positionen in 3D zu verfolgen, damit sie in 2D abgebildet werden können.

  3. Wenn Sie Ihre eigene Nicht-SceneKit-Engine mit Metal (oder GL) erstellen, handelt es sich nicht um eine 3D-Szenenbeschreibungs-API, sondern um eine GPU-Programmier-API Raum. Sie können ARAnchor als Brücke zwischen ARKits Vorstellung vom Weltraum und dem, was Sie bauen, verwenden.

What's the difference between using ARAnchor to insert a node and directly insert a node?

+0

Leider kann ich den Anwendungsfall nicht wirklich sehen, weil: A) die Transformation eines ARAnchors schreibgeschützt ist (die API bietet keine Möglichkeit, sie zu modifizieren.) B) [wie diese akzeptierte SO-Antwort] (https://stackoverflow.com/questions/44401173/how-do-i-programmaramatic-move-an-ancharor/44403042#44403042) scheint zu implizieren, jede Transformation hat immer den gleichen festen Wert (es sei denn, ich täusche mich) - so wird es nicht einmal von ARKit aktualisiert? Was ist der Sinn? Sie könnten auch eine Reihe von Ankern in Ihrem eigenen Array/Dictionary halten. Es sei denn, sie werden aktualisiert oder von ARKit automatisch hinzugefügt/erkannt. – aidinabedi

+0

Ich weiß, das ist ein Monat alt. Aber ich bin kürzlich auf einen Anwendungsfall gestoßen, bei dem ich glaube, dass das Hinzufügen eines reinen Ankers manuell sehr hilfreich ist. Wenn Sie ein Modell an einer wirklich genauen Stelle platzieren möchten, können Sie zu dieser Stelle gehen und die TAPH-Geste (hitTest) verwenden und den reinen Anker im Weltbereich hinzufügen. Sie können dann jederzeit einen Knoten an die Ankerposition anhängen, wenn die App dies erfordert. Noch wichtiger ist, dass Arkit seit Arkit 1.5 (iOS 11.3) anscheinend einige zusätzliche Arbeit geleistet hat, um sicherzustellen, dass sein Weltkoordinatenraum zumindest in der Nähe dieses Punktes genau mit der realen Welt übereinstimmt. – Ash

Verwandte Themen