基本的なオクルージョンが、UAkComponent::SetOcclusion()で公開されます。アクタのオクルージョンを有効にするには、ブループリントエディタのSet
Occlusion Refresh Interval機能を使います。UAkComponent用のバージョンもあります。リフレッシュ間隔を0に設定すると、オクルージョンチェックは実行されません。
リスナーからみて、ソースがオクルージョンを受けるかどうかは、簡単なラインオブサイト(LOS)チェックで確認でき、AkComponentのプロパティで設定されたライントレースチャンネルを使います(OcclusionCollisionChannel
)。ラインオブサイト、つまり視線が遮られると、オクルージョンレベルの計算が開始されます。この計算をもとに、障害物に対するヒットポイントがそのバウンディングボックスにマッピングされて障害物の周りに12個のポイントが作成されます。これら「第2のパス」も遮られているかどうかを確認するために、さらに複数のラインオブサイトのテストを行います。サウンドエンジンに送られるオクルージョンは、遮られた「第2のパス」数をもとに調整されます。
異なるオクルージョンレベルの間をスムーズに移行できるように、テンポラルフェードのメソッドも適用されます。フェードスピードを変更するには、OCCLUSION_FADE_RATEの定数を変えます。
作成:
1.6.3