本文へスキップ

XR8.Threejs.xrScene()

XR8.Threejs.xrScene()\`を使用する。

説明

xrシーン、カメラ、レンダラー、(オプションの)カメラフィードテクスチャ、および(オプションの)layerScenesへのハンドルを取得します。

パラメータ

なし

{#returns}を返す。

オブジェクト: { scene, camera, renderer, cameraTexture, layerScenes }.

プロパティタイプ説明
シーンシーン\`three.jsの現場。
カメラカメラ\`three.jsのメインカメラ。
レンダラレンダラー\`three.jsのレンダラー。
cameraTexture [オプション]テクスチャ\`カメラのフィードをキャンバスサイズにトリミングしたthree.jsテクスチャ。 カメラのフィードをキャンバスサイズにトリミングしたthree.jsテクスチャ。 XR8.Threejs.configure({renderCameraTexture: true})\`](configure.md)を呼び出すことで有効になります。
layerScenes [オプション]<String, LayerScene>\`レコードレイヤー名とthree.jsのレイヤーシーンのマップ。 レイヤー名とthree.jsのレイヤーシーンのマップ。 XR8.Threejs.configure({layerScenes: ['sky']})\](configure.md)を呼び出すことで有効になるレコードが含まれます。 レイヤー名とthree.jsのレイヤーシーンのマップ。 XR8.Threejs.configure({layerScenes: ['sky']})\](configure.md)を呼び出すことで有効になるレコードが含まれます。

layerScenesオブジェクトのLayerScene\` は以下のプロパティを持つ:

プロパティタイプ説明
シーンシーン\`このレイヤーのthree.jsシーン。 この空に追加されたコンテンツは、このレイヤーが検出されたカメラ・フィードのエリアにいるときのみ表示されます。 例えばSky Effectsでは、立方体は空にしか表示されません。 このレイヤーのthree.jsシーン。 この空に追加されたコンテンツは、このレイヤーが検出されたカメラ・フィードのエリアにいるときのみ表示されます。 例えばSky Effectsでは、立方体は空にしか表示されません。 XR8.LayersController.configure({layers: {sky: {invertLayerMask: true}}})\`を使ってこれを反転させ、キューブが空にないときだけ表示されるようにします。
カメラカメラ\`このレイヤーのthree.jsカメラ。 その位置と回転はメインカメラと同期する。 その位置と回転はメインカメラと同期する。

const {scene, camera, renderer, cameraTexture} = XR8.Threejs.xrScene()

例 - スカイシーン

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