Version: 2023.1
言語: 日本語
オクルージョンエリア
Occlusion Culling ウィンドウ

オクルージョンポータル

Occlusion Portal (オクルージョンポータル、“オクルージョンの門” の意味) は開いていても閉じていても構いません。オクルージョンポータルが閉じられると、他のゲームオブジェクトを遮蔽します。オクルージョンポータルが開いていると、他のゲームオブジェクトを遮蔽しません。

シーンに、ドアなどのように開いた状態と閉じた状態を持つゲームオブジェクトがある場合、それをオクルージョンカリングシステムで表すためにオクルージョンポータルを作成します。次に、そのゲームオブジェクトの状態に応じて、オクルージョンポータルの開いた (Open) 状態を設定します。Occlusion Portal コンポーネントは、ゲームオブジェクト上に設定する必要はありません。

シーンにオクルージョンポータルを設定

  1. シーン内で、オクルージョンポータルとして適当なゲームオブジェクトを選択します。オクルージョンポータルに適した候補は、ドアなど、サイズが中から大程度の固体のゲームオブジェクトです。
  2. ゲームオブジェクトが Occluder Static または Occludee Static としてマークされていないことを確認します。
  3. Occlusion Portal コンポーネントをゲームオブジェクトに加えます。
  4. シーンのオクルージョンデータをベイクします。手順について はオクルージョンカリングの準備 を参照してください。
  5. Occlusion Culling ウィンドウ、Inspector ウィンドウ、シーンビューがすべて表示されていることを確認します。
  6. シーンビューで、オクルージョンポータルの正面にカメラを移動します。
  7. Occlusion Portal コンポーネントを持つゲームオブジェクトを選択します。
  8. Inspector ウィンドウで、Occlusion Portal コンポーネントの Open プロパティのオンとオフを切り替えます。シーンビューで、オクルージョンカリングの違いを確認します。

ランタイムのオクルージョンポータルの開閉

スクリプトを使用して、オクルージョンポータルの Open プロパティを適切な状態に設定します。

void OpenDoor() {
     // オクルージョンポータルの Open 状態を切り替えます。すると、Unity はゲームオブジェクトをその後方に描画します。
    myOcclusionPortal.open = true;
    
    // ドアが開くアニメーションを再生する関数を呼び出します。そうしないと、ゲームオブジェクトを隠します。
    …
}

Occlusion Portal コンポーネントリファレンス

プロパティ 機能
Open 有効にするとオクルージョンポータルが開き、描画されるゲームオブジェクトを遮蔽しません。無効にすると、オクルージョンポータルは閉じられ、ゲームオブジェクトが隠されます。
Center オクルージョンポータルの中心を設定します。デフォルト値は 0,0,0 です。
Size オクルージョンポータルのサイズを設定します。

OcclusionPortal

オクルージョンエリア
Occlusion Culling ウィンドウ