- 追加された行はこのように表示されます。
- 削除された行は
このように表示されます。
!!!影だけを受ける地面の配置
* Dynamic Shadow Projector(Free)をAsset Storeで購入
* 地面に相当するPlaneを配置し、Z Writeのみ行うShaderを書いて割り当て
* CameraのRender PathをForwardにする
!! Dynamic Shadow Projector
https://assetstore.unity.com/packages/tools/particles-effects/dynamic-shadow-projector-35558
これを使用することで、地面にProjectionの影を落とすことができる。
Unity 2017/2018では、Unityの標準であった「Projector」はなくなった。
Unity 2017/2018では、Unityの標準であった「Projector」はなくなった(いつ消えたかは不明)。
Dynamic Shadow Projectorの使い方は以下。
* EmptyのGameObjectをシーンに作成し、「ShadowProjector」という名前にする。
* 「ShadowProjector」のGameObjectにComponentとして「Draw Target Object」を追加。
Projector/Shadow Texture Render/Draw Target Objectが追加される。
* Draw Target Objectの「Target」に影を落とす形状(複数の場合は親のGameObject)を指定
* Materialを作成し、「DynamicShadowProjector/Projector/Mipmapped Shadow」のShaderを割り当て
* Materialパラメータの「Shadow Darkness」で影の濃さ、「Ambient」で影の環境光の強さを調整
* 作成したMaterialを「ShadowProjector」の「Projector」のMaterialに割り当て
* 「ShadowProjector」を移動/回転して投影位置に移動
* 平行投影させる場合は「ShadowProjector」の「Projector」の「Orthographic」をOnにする
* シャドウマップサイズを調整する場合は、「ShadowProjector」の「Shadow Texture Renderer」のTexture Width/Heightを調整する。
これで、地面がある場合は影が落ちる。
なお、これを使用する場合は、Directional Lightの影はOffにしておくほうがよさそう。
!! 地面に相当するPlaneを配置
----
{{lastmodified}}