Das Ambiente für Szenen wird hierarchisch dargestellt, eine hierarchische Anordnung der Inhalte einer Szene. Eine Szene kann null oder mehr untergeordnete Knoten und jeder Knoten null oder mehr untergeordnete Knoten haben.
Die Szene bietet auch Treffertests, mit denen ermittelt werden kann, welcher Knoten von einem MotionEvent oder Ray berührt wird.
Verschachtelte Klassen
Schnittstelle | Scene.OnPeekTouchListener | Schnittstellendefinition für einen Callback, der ausgelöst wird, wenn ein Touch-Ereignis an eine Szene gesendet wird. | |
Schnittstelle | Scene.OnTouchListener | Schnittstellendefinition für einen Callback, der ausgelöst wird, wenn ein Touch-Ereignis an eine Szene gesendet wird. | |
Schnittstelle | Scene.OnUpdateListener | Schnittstellendefinition für einen Callback, der einmal pro Frame unmittelbar vor der Aktualisierung der Szene aufgerufen wird. |
Felder
public static final EnvironmentalHdrParameters | DEFAULT_HDR_PARAMETERS |
Public Constructors
Public Methods
Ungültig |
addOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
Fügt einen Listener hinzu, der vor dem Aufruf von
Scene.OnTouchListener aufgerufen wird. |
Ungültig |
addOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
Fügt einen Listener hinzu, der einmal pro Frame direkt vor der Aktualisierung des Ambientes aufgerufen wird.
|
deine Kamera zugegriffen haben |
getCamera()
Rufen Sie die Kamera auf, die zum Rendern der Szene verwendet wird.
|
Knoten |
getSunlight
Rufen Sie den standardmäßigen Sonnenlichtknoten ab.
|
Szenenansicht |
getView
Gibt die SceneView zurück, die zum Erstellen der Szene verwendet wurde.
|
HitTestResult |
hitTest(MotionEventmotionEvent)
Tests, um festzustellen, ob ein Bewegungsereignis einen Knoten in der Szene berührt, basierend auf einem Ray-Treffertest, dessen Ursprung die Bildschirmposition des Bewegungsereignisses ist, und gibt ein HitTestResult mit dem Knoten aus, der dem Bildschirm am nächsten ist
|
HitTestResult | |
ArrayList<HitTestResult> |
hitTestAll(Ray Ray)
Testet, ob ein Strahl auf einen Knoten trifft und gibt eine Liste von HitTestResults zurück, die alle getroffenen Knoten enthält und nach Entfernung sortiert ist.
|
ArrayList<HitTestResult> |
hitTestAll(MotionEventmotionEvent)
Testet, ob ein Bewegungsereignis einen Knoten in der Szene berührt, und gibt eine Liste von HitTestResults zurück, die alle getroffenen Knoten enthält, sortiert nach Entfernung.
|
Ungültig |
onAddChild(Node-Untergeordnetes Element)
|
Ungültig |
onRemoveChild(Node-Untergeordnetes)
|
Knoten |
overlapTest(Knoten-Knoten)
Testet, ob sich die angegebene Form der Kollision eines Knotens mit der Form anderer Knoten in der Szene über
getCollisionShape() überschneidet. |
ArrayList<Knoten> |
overlapTestAll(Knoten-Knoten)
Testet mit
getCollisionShape() , ob sich ein Knoten mit anderen Knoten in der Szene überschneidet. |
Ungültig |
removeOnPeekTouchListener(Scene.OnPeekTouchListener onPeekTouchListener)
Entfernt einen Listener, der aufgerufen wird, bevor
Scene.OnTouchListener aufgerufen wird. |
Ungültig |
removeOnUpdateListener(Scene.OnUpdateListener onUpdateListener)
Entfernt einen Listener, der einmal pro Frame direkt vor der Aktualisierung des Ambientes aufgerufen wird.
|
Ungültig |
setLightEstimated(Color colorCorrection, float pixelIntensity)
Legt die Lichtschätzung fest, um die Beleuchtung und Intensität der Szene zu modulieren.
|
Ungültig |
setOnTouchListener(Scene.OnTouchListener onTouchListener)
Registriert einen Callback, der ausgelöst wird, wenn die Szene berührt wird.
|
Übernommene Methoden
Felder
public static final EnvironmentalHdrParameters DEFAULT_HDR_PARAMETERS
Public Constructors
public Szene (Szenenansicht-Ansicht)
Erstellt eine Szene mit dem angegebenen Kontext.
Parameter
Ansicht |
---|
Public Methods
public void addOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)
Fügt einen Listener hinzu, der vor dem Aufruf von Scene.OnTouchListener
aufgerufen wird. Dies wird auch dann aufgerufen, wenn die Geste genutzt wurde, sodass alle erfassten Bewegungsereignisse erfasst werden können. Diese wird aufgerufen, auch wenn die Touchbedienung nicht über einem Knoten liegt. In diesem Fall ist getNode()
null. Die Listener werden in der Reihenfolge aufgerufen, in der sie hinzugefügt wurden.
Parameter
onPeekTouchListener | Peek-Touch-Listener zum Hinzufügen |
---|
public void addOnUpdateListener (Scene.OnUpdateListener onUpdateListener)
Fügt einen Listener hinzu, der einmal pro Frame direkt vor der Aktualisierung des Ambientes aufgerufen wird. Die Listener werden in der Reihenfolge aufgerufen, in der sie hinzugefügt wurden.
Parameter
onUpdateListener (auf Update-Listener) | den zu aktualisierenden Listener für Updates |
---|
public Camera getCamera ()
Rufen Sie die Kamera auf, die zum Rendern der Szene verwendet wird. Die Kamera ist ein Knotentyp.
Rückgabe:
- Kamera, mit der die Szene gerendert wurde
public Node getSunlight ()
Rufen Sie den standardmäßigen Sonnenlichtknoten ab.
Rückgabe:
- Sonnenlichtknoten, der für die Beleuchtung der Szene verwendet wird
public HitTestResult hitTest (MotionEventmotionEvent)
Tests, um festzustellen, ob ein Bewegungsereignis einen Knoten in der Szene berührt, basierend auf einem Ray-Treffertest, dessen Ursprung die Bildschirmposition des Bewegungsereignisses ist, und gibt ein HitTestResult mit dem Knoten aus, der dem Bildschirm am nächsten ist
Parameter
Bewegungsereignis | das Bewegungsereignis, das für den Test verwendet werden soll |
---|
Rückgabe:
- Das Ergebnis enthält den ersten Knoten, der vom Bewegungsereignis erfasst wurde (kann null sein) und Informationen darüber, wo das Bewegungsereignis den Knoten im Weltall erreicht hat
public HitTestResult hitTest (Ray ray)
Prüft, ob ein Strahl auf einen Knoten in der Szene trifft, und gibt ein HitTestResult zurück, das den Knoten enthält, der dem Ray-Ursprung am nächsten ist, der sich mit dem Strahl schneidet.
Parameter
Ray | den für den Test zu verwendenden Strahlung |
---|
Rückgabe:
- Das Ergebnis enthält den ersten Knoten, der von der Strahlung getroffen wurde (kann null sein) und Informationen darüber, wo die Strahlung den Knoten des Weltalls erreicht hat
Weitere Informationen
public ArrayList<HitTestResult> hitTestAll (Ray ray)
Testet, ob ein Strahl auf einen Knoten trifft und gibt eine Liste von HitTestResults zurück, die alle getroffenen Knoten enthält und nach Entfernung sortiert ist.
Parameter
Ray | Die für den Test zu verwendende Strahlung. |
---|
Rückgabe:
- Wird für jedes Treffer, der nach Entfernung sortiert ist, mit einem TrefferTestResult ausgefüllt. Leer, wenn keine Knoten erfasst wurden.
Weitere Informationen
public ArrayList<HitTestResult> hitTestAll (MotionEventmotionEvent)
Testet, ob ein Bewegungsereignis einen Knoten in der Szene berührt, und gibt eine Liste von HitTestResults zurück, die alle getroffenen Knoten enthält, sortiert nach Entfernung.
Parameter
Bewegungsereignis | Das für den Test zu verwendende Bewegungsereignis. |
---|
Rückgabe:
- Wird für jedes Treffer, der nach Entfernung sortiert ist, mit einem TrefferTestResult ausgefüllt. Leer, wenn keine Knoten erfasst wurden.
öffentlicher Knoten overlapTest (Knoten Knoten)
Testet, ob sich die angegebene Form der Kollision eines Knotens mit der Form anderer Knoten in der Szene über getCollisionShape()
überschneidet. Der für den Test verwendete Knoten muss nicht aktiv sein.
Parameter
Knoten | Der für den Test zu verwendende Knoten. |
---|
Rückgabe:
- Ein Knoten, der sich mit dem Testknoten überschneidet. Wenn sich kein Knoten mit dem Testknoten überschneidet, ist dies null. Wenn sich mehrere Knoten mit dem Testknoten überschneiden, kann dies ein beliebiger Knoten sein.
Weitere Informationen
public ArrayList<Node> overlapTestAll (Knoten Knoten)
Testet mit getCollisionShape()
, ob sich ein Knoten mit anderen Knoten in der Szene überschneidet. Der für den Test verwendete Knoten muss nicht aktiv sein.
Parameter
Knoten | Der für den Test zu verwendende Knoten. |
---|
Rückgabe:
- Eine Liste aller Knoten, die sich mit dem Testknoten überschneiden. Wenn sich kein Knoten mit dem Testknoten überschneidet, ist die Liste leer.
Weitere Informationen
public void removeOnPeekTouchListener (Scene.OnPeekTouchListener onPeekTouchListener)
Entfernt einen Listener, der aufgerufen wird, bevor Scene.OnTouchListener
aufgerufen wird.
Dies wird auch dann aufgerufen, wenn die Geste genutzt wurde, sodass alle erfassten Bewegungsereignisse erfasst werden können. Diese wird aufgerufen, auch wenn die Touchbedienung nicht über einem Knoten liegt. In diesem Fall ist getNode()
null.
Parameter
onPeekTouchListener | Peek Touch-Listener zum Entfernen |
---|
public void removeOnUpdateListener (Scene.OnUpdateListener onUpdateListener)
Entfernt einen Listener, der einmal pro Frame direkt vor der Aktualisierung des Ambientes aufgerufen wird.
Parameter
onUpdateListener (auf Update-Listener) | den zu entfernenden Update-Listener |
---|
public void setLightSchätzung (Color colorCorrection, float pixelIntensity)
Legt die Lichtschätzung fest, um die Beleuchtung und Intensität der Szene zu modulieren. Für die gerenderten Lampen wird eine Kombination aus diesen Werten sowie die Farbe und Intensität der Lampen verwendet. Der Wert einer weißen Korrektur und die pixelIntensität von 1 bedeuten, dass keine Änderungen an den Lichteinstellungen vorgenommen werden.
Wird in AR-Szenenszenen intern verwendet, um die Beleuchtung basierend auf Werten aus ARCore anzupassen. In einer AR-Szene wird sie automatisch aufgerufen und überschreibt möglicherweise andere Einstellungen. In den meisten Fällen sollte das nicht explizit erforderlich sein.
Parameter
colorCorrection (Farbkorrektur) | moduliert die Lichtfarbe der Szene. |
---|---|
pixelIntensität | moduliert die Lichtintensität der Szene. |
public void setOnTouchListener (Scene.OnTouchListener onTouchListener)
Registriert einen Callback, der ausgelöst wird, wenn die Szene berührt wird. Der Callback wird aufgerufen, nachdem das Touch-Ereignis an die Knoten im Ambiente gesendet wurde, wenn kein Ereignis das Ereignis verarbeitet hat. Diese wird aufgerufen, auch wenn die Berührung nicht über einem Knoten erfolgt. In diesem Fall ist getNode()
null.
Parameter
onTouchListener | den zu erfassenden Touch-Listener |
---|