ARアプリケーションでは、目に見えない平面の上に影を落として影と現実の映像をブレンドしたいという要望があります。完全に透明な平面オブジェクトをシーンに追加することで実現できますが、完全に透明なオブジェクトを描画して、さらにそのオブジェクト全体に影を描画するのはオーバーヘッドが大きくなってしまいます。そこで、Fast Shadow Receiverを使った、もっと良い方法を紹介します。

チュートリアルとして、Basicサンプルを使用します。

最初に、PlaneオブジェクトからMeshRendererコンポーネントを削除して、描画されないようにします。もしコライダーも必要ないのであれば空のゲームオブジェクトに置き換えても構いません。

次に空のゲームオブジェクトをBlobShadowSample/BlobShadowProjectorオブジェクトの下に作成して、’Plane Shadow Receiver’に名前を変えます(階層構造やオブジェクトの名前は全く重要ではありません)。

上で作成した空のゲームオブジェクトに’Scripts > FastShadowReceiver > Infinite Plane Shadow Receiver’コンポーネントを追加します。

BlobShadowProjectorオブジェクトを’Projector’フィールドに、Planeオブジェクトを’Target’フィールドに設定します。

同じことをHardShadowProjectorとSofrShadowProjectorにも行います。

以上!すごく簡単なので試してみてください。

Links

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

Anti Spam Code *