Zum Hauptinhalt springen

XR8.Threejs.xrScene()

XR8.Threejs.xrScene()

Beschreibung

Holen Sie sich ein Handle auf die xr-Szene, die Kamera, den Renderer, die (optionale) Kameratextur und die (optionale) layerScenes.

Parameter

Keine

Returns

Ein Objekt: { scene, camera, renderer, cameraTexture, layerScenes }

EigentumTypBeschreibung
sceneSchauplatzDie three.js-Szene.
cameraKameraDie Hauptkamera von three.js.
rendererRendererDer three.js Renderer.
cameraTexture [Optional]TexturEine three.js-Textur mit dem auf die Leinwandgröße zugeschnittenen Kamerabild. Aktiviert durch den Aufruf XR8.Threejs.configure({renderCameraTexture: true}).
layerScenes [Optional]DatensatzEine Zuordnung von Ebenennamen zu three.js Ebenenszenen. Enthält Datensätze, die durch den Aufruf von aktiviert werden XR8.Threejs.configure({layerScenes: ['sky']}).

Die LayerScene im Objekt layerScenes hat die folgenden Eigenschaften:

EigentumTypBeschreibung
sceneSzeneDie 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. Bei den Himmelseffekten zum Beispiel wird ein Würfel 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.
cameraKameraDie three.js Kamera für diese Ebene. Die Position und Drehung der Kamera wird mit der Hauptkamera synchronisiert.

Beispiel

const {scene, camera, 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)