※このページではアフィリエイト広告を紹介しています

unityとblenderの鏡面反射についての備忘録。反射平面とリフレクションプローブなど

unity 鏡Blender

バーチャル3Dクリエイター神部まゆみです(*^-^*)

この記事は、blenderとunityの鏡面反射について調べて動かしてみた備忘録です。

 

要は鏡の作り方なんだけど、案外簡単にできました。

シェーダーいじったりしないと作れないのかと思ってたけど、そうでもないっぽい。

いくつかやり方はあるみたいだけど、今回のやり方は簡単にできました。

参考にできそうなところがあれば参考にしてね。

■PR■

現在200個以上の新規unityアセットが最大50%オフで買える New Releaseセールをやっているみたいです。

unityアセット New Release割引 最大50%OFF

欲しいアセットはこの機会に買っておくと良いかも。

 
 

 

 

blenderは「反射平面」を追加すると鏡面反射するらしい

こちらの先輩のページが参考になりました。

ありがとうございます(*^-^*)

【Blender】Eeveeで鏡面反射を作る
Eeveeで簡単に鏡面反射を作ってみました。3Dビューポートに2つのCubeを置きました。大きい方はメタリックを1、ラフネスを0にしていますが、まだ赤いCubeや床を反射していません。鏡を作るために、ReflectionPlanesを追加します。これは、板状の範囲と矢印を持っています。オブジェクトモードで回転して、鏡に...

blenderの使用バージョンは2.93です。

反射平面を追加して、反射させたい方向に矢印を向ける

反射平面ってのはこれです。

blender 反射平面

 

これだけでも反射はするんだろうけど、立方体を鏡の枠みたいにしてみる。

反射平面は矢印を向いている方に反射するようなので、回転させて向きを調整します。

blender 反射平面

プレビュー平面にチェックを入れたら表示された!

鏡のアイコンのメニューで、「プレビュー平面」ってのをクリックすると、3Dビューに鏡面反射が反映されるみたい。

 

これで表示されたぞ( *´艸`)

難しいと思ってたけど、こんな簡単にできるとはΣ(゚Д゚)

複雑なシェーダーノードを組む必要があると思ってたから、簡単にできて拍子抜けした( ̄▽ ̄;)

 

絵的にもハッタリが効きそうだから多用してもいいかもしれない。

なんか凄そうに見えるし、技術力のある人に見えそう。たぶん(笑)。

unityで鏡面反射するにはリフレクションプローブを使う

こちらの先輩のページが参考になりました。

ありがとうございます(*^-^*)

UnityのReflectionProbeを使って鏡を作ってみる
UnityのReflectionProbeを使って鏡を作り、キャラクターを動かして映るかどうかを試していきます。

先輩のページによると、unityで鏡を作るにはいくつかやり方があるみたい。

でもこのやり方が簡単そうなので、これでやってみます。

スタンダードシェーダーでマテリアルを作る

スタンダードシェーダーでマテリアルを作り、スムースネスとメタリックを1にする。

けどこの段階ではまだ反射しない。

でもこれでアルベドのアルファ値を0にすると透明になるので、窓ガラスとかには使えるっぽいです。

光は反射するっぽい?ので、窓ガラスっぽくなるらしい。

リフレクションプローブを追加してミラーと同じ位置に配置

反射させるにはリフレクションプローブを追加する必要がある。

unity リフレクションプローブ
ミラーと同じくらいの位置に配置します。

ちょっと表示がおかしい?位置や解像度を調整する

やってみたけど…横や後ろには映ってるっぽい?けど、なんか設定がおかしいのかもしれない。

unity リフレクションプローブ
んー、もう少し設定をいじってみたほうがいいかも。

 

あ!ちょっと近すぎたことが原因っぽい。キャラを鏡から離したら映った。

unity 鏡

解像度が低いからパラメーターで上げるといいっぽいです。結局2048まで上げた。

 

お、いい感じになったかも。

これでも大きく映りすぎな気がするけど、どこかのパラメーターをいじる感じかな?

あれ、シーンビューだから大きく映ってるだけで、カメラからのゲームビューなら適正サイズで表示されてるっぽいです。

じゃあこれでいいのかな。

ボックスプロジェクションにチェックを入れると良い感じのサイズで映った

ボックスプロジェクションのチェックを入れたらいい感じのサイズ感で映った!

unity ボックスプロジェクション

これボックスのサイズを変えられるから、表示がおかしかったらそのあたりいじると良いかも。

ThirdPersonUserControlスクリプトで動かしたら、無事にできた!

近付いても遠くなってもちゃんと映ってる( *´艸`)

unity mirror

これはスタンダードアセットに入ってる ThirdPersonUserControl スクリプトを入れて動かしました。

 

それにしてもガチ恋距離は破壊力あるな…我ながらドキッとした(*ノωノ)

これだからunityはやめられませんね( *´艸`)

せっかくだから鏡の前でポーズを取ってみる(笑)

うんいい。じつにいい。気に入った( *´艸`)

unity 鏡

アニメーションはVeryAnimationで簡単に作りました。これ手軽に作れるから便利。

Very Animation|Unity Asset Store

なんか鏡の前でえっちなことしてるシチュエーションに使えそう(笑)。

2023/06/07追記:うまく動作しない時はライトマップの生成?をやったらうまくいった

久々にいじってみたらスカイボックスの風景しか映らない不具合が発生したけど、

新しいライティング設定を作ってライティングの設定をやり直したらちゃんと映るようになった。

表示がおかしくなったら生成し直すと良いかもしれない。

というか自動生成にチェック入れとけば自動でやってくれるか(;^_^A

久々にいじると忘れるね(;^_^A

 

あと距離感がおかしい時はボックスサイズ調整すると良い感じっぽい。

追記終わり。

 

まとめ

難しいと思ってたけど案外簡単にできるっぽいです。

ただ、リアルタイムで表示させまくってると結構重くなるかも?

ゲームとかで使う場合は負荷も考えたほうがいいかもしれない。

 

次は光の感じを少し勉強したいな。

ランプから光が漏れて透過する感じの、ガラスみたいな感じの。

CG Geek氏のチュートリアルでそのあたりをやっているので、続きをやるために勉強していこうと思います。

blenderでリアルな部屋の作り方をCG Geek氏のチュートリアル動画で学ぶ② ~シェーダー・ライト設定・ヘアーパーティクルなど~
バーチャル3Dクリエイター神部まゆみです(*^-^*)この記事は前回の続きで、blenderでリアルな部屋を作るCGGeek氏のチュートリアルをやってみた備忘録です。前回はモデリングだけだったけど、今回はシェーダーやライト設定・ヘアーパーテ...

2022/02/16追記:ビルドしたらリアルタイム反射しなくなった(-_-;)

この記事に書いたやつはビルドせずにエディターで動かしてただけなんだけど、ビルドしてみたらリアルタイム反射しなくなって詰まった(゚Д゚;)

設定次第っぽいけど…どうだろ。

unityで窓ガラス透過と鏡面反射をいじってみたが…ビルドしたらリアルタイム反射しなくて詰まった(゚Д゚;)
バーチャル3Dクリエイター神部まゆみです(*^-^*)この記事ではunityで窓ガラスの透過と鏡面反射をいじってみたからそのメモです。前回までの記事はこちら。追記:ビルドしたらリアルタイム反射しなかったのは、品質設定で「リアルタイムリフレク...

今のところリアルタイムじゃない静的(static)にしたオブジェクトは、ちゃんとWebGLでも表示されてるけど。

まぁ解決したら後で追記しときます。

タイトルとURLをコピーしました