マニュアル: 3D背景機能(BackgroundLayer3D)

概要

3D背景機能(BackgroundLayer3D)とは、3Dモデルを背景として読み込み、利用できるようにするためのノードです。
あくまで、ヴィジュアルスクリプトが動作するゲーム画面は2Dであり、3Dは背景としてのみ機能しますが、2Dのカメラと連動して動くなど、2Dの動作にあわせた視差背景として機能します。
BackgroundLayer3Dを追加することで、3D背景を表示するためのSubviewportや3D空間内部でのカメラを制御するBackgroundCamera3D等のノードが自動で子として追加されます。

技術的概要

BackgroundLayer3DはCanvasLayerをベースとしたカスタムノードです。機能としてはCanvasLayerと同様ですが、3D機能の有効/無効を切り替えるプロパティや3Dモデルを読み込み配置するプロパティが追加されています。
BackgroundCamera3DはCamera3Dをベースとしたカスタムノードです。Camera3Dに加え、GameSceneのアクティブカメラを読み込み、その動きに合わせて自動で追従する機能が追加されています。

3D背景の利用方法

  1. GameSceneに、ノードを追加よりBackgroundLayer3Dを追加します。
  2. BackgroundLayer3Dを選択し、インスペクターにて「3Dビューの有効化」を行います。(この時点で、上部のタブに3Dビューが追加されます。)
  3. 引き続き、BackgroundLayer3Dのインスペクターにて「3Dマップの読み込み」を行います。(任意のglb,gltf形式の3Dモデルが読み込めます。)
  4. 正常に読み込むことができたら、BackgroundCamera3Dを選択し、ハンドルを操作してカメラの位置を調整します。カメラの見え方はインスペクターを確認しましょう。
  5. DirectionalLight3D(太陽光)を選択し、ハンドルを操作して太陽光の方向を決めます。
  6. 以上で設定は完了です、以後3Dを操作しない場合は、BackgroundLayer3Dを選択し、インスペクターにて「3Dビューの有効化」をオフにしましょう。