Unityのリフレクションプローブの使い方

投稿者: | 2019-12-10

鏡のように反射するオブジェクトを作ってみます。

Cubeに鏡のようなマテリアルを付けます。

MetallicとSmoothnessを両方最大にしています。


Cubeがスカイボックスを反射しますが、床やSphereなどのオブジェクトを映しません。

周りのオブジェクトを映すには、リフレクションプローブを使います。

シーンにリフレクションプローブが現れます。

CubeとSphereの中間ぐらいに置いてみます。

周りのオブジェクトを複数選択して、インスペクタからReflection Probe Staticに設定します。

リフレクションプローブのTypeがBakedやCustomの場合、Reflection Probe Staticに設定したオブジェクトしか映しません。

Bakeボタンをクリックすると像を焼き付けます。Window -> Rendering -> Lighting Settingsの下部のGenerate Lightingをクリックするか、Auto Generateにチェックを入れて置いてもOKです。


床やSphereがCubeに映るようになりました。

でもCubeの裏側を見ると不自然です。

リフレクションプローブの矢印のマークをクリックすると、シーンでオブジェクトを動かすように、リフレクションプローブの中心を動かせます。

これをSphereの後ろまで持ってきます。

すると、Cubeの裏側にSphereが映るようになります。

この中心をCubeと重ねると、自然に全ての方向を映すようになります。

鏡に映る像が荒いですが、リフレクションプローブのインスペクタで解像度を上げると綺麗な像になります。

リフレクションプローブの効果範囲

リフレクションプローブの矢印の左にあるボタンをクリックすると、シーンに半透明のCubeが表示されます。

この各面の中央に見える点をドラッグするとリフレクションプローブの効果範囲を変えられます。

鏡のオブジェクトを3つ置いて、左の2つだけが効果範囲に含まれるように配置してみます。

すると、効果範囲の中にあるCubeにだけ反射の情報が渡されます。

効果の外にあるCubeも鏡のマテリアルがついているので、スカイボックスを反射しますが、床やSphereは映りません。

リアルタイムで反射像を動かす

リフレクションプローブのTypeをRealtimeにして、Refresh ModeをEvery frameにしてみます。

これで、反射像をフレーム毎に変化させることができます。

リフレクションプローブをCubeと一緒に動かします。

焼き付けられた反射像を使うのではなく、リフレクションプローブを動かしてそれに応じて反射像を変えたり、鏡に動く物体を映したいというときはRealtimeのリフレクションプローブを使います。

無料ホラーゲームを作りました

Unityのリフレクションプローブの使い方」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。