Zum Hauptinhalt springen

XR8.Threejs.xrScene()

XR8.Threejs.xrScene()`

Beschreibung

Holt einen Handle auf die xr-Szene, die Kamera, den Renderer, die (optionale) Kameratextur und die (optionale) layerScenes.

Parameter

Keine

Rückgabe

Ein Objekt: { Szene, Kamera, Renderer, cameraTexture, layerScenes }

EigentumTypBeschreibung
SzeneSzeneDie three.js-Szene.
KameraKameraDie Hauptkamera von three.js.
RendererRendererDer three.js-Renderer.
cameraTexture [Optional]TexturEine three.js-Textur mit dem auf die Leinwandgröße zugeschnittenen Kamerabild. Aktiviert durch Aufruf von XR8.Threejs.configure({renderCameraTexture: true}).
layerScenes [Optional]Aufzeichnung<String, LayerScene>`Eine Zuordnung von Ebenennamen zu three.js-Ebenenszenen. Enthält Datensätze, die durch den Aufruf von XR8.Threejs.configure({layerScenes: ['sky']}) aktiviert wurden.

Die LayerScene im layerScenes-Objekt hat die folgenden Eigenschaften:

EigentumTypBeschreibung
SzeneSzeneDie three.js-Szene für diese Ebene. Inhalte, die zu diesem Himmel hinzugefügt werden, sind nur sichtbar, wenn sie sich in einem Bereich des Kamerafeeds befinden, in dem diese Ebene erkannt wurde. In den Himmelseffekten wird ein Würfel zum Beispiel nur im Himmel angezeigt. Verwenden Sie XR8.LayersController.configure({layers: {sky: {invertLayerMask: true}}}), um dies umzukehren und den Würfel nur anzuzeigen, wenn er sich nicht im Himmel befindet.
KameraKameraDie three.js-Kamera für diese Ebene. Die Position und Drehung der Kamera wird mit der Hauptkamera synchronisiert.

Beispiel

const {Szene, Kamera, Renderer, cameraTexture} = XR8.Threejs.xrScene()

Beispiel - Himmelsszene

XR8.LayersController.configure({layers: {sky: {}}})
XR8.Threejs.configure({layerScenes: ['sky']})
...
const {layerScenes} = XR8.Threejs.xrScene()
createSkyScene(layerScenes.sky.scene, layerScenes.sky.camera)