読者です 読者をやめる 読者になる 読者になる

妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

水のマテリアル研究⑫ 反射しそうなところにベースカラーで色をつける

マテリアル UE4.13

f:id:una_unagi:20161217232550p:plain

「反射してるとこって、光を反射してちょっと白っぽくなってるから、白くすればいいんじゃないかなあ……という考え方で作ったマテリアル。これはHTML5の表示。反射とは違うから、緑のブロックの近くが緑になったりはしてない。一律に白っぽくなる」

妹「あー、でもなんかそれっぽさはあるね。雰囲気的には似てる」

f:id:una_unagi:20161217232756p:plain

「ベースカラーのとこに2つの色とFresnelノードを使って、法線の角度に合わせて変化させるっていうのは、前に研究した物と同じパターンを流用した」

imoue.hatenablog.com

「Powerを使ってないのは、これをつないじゃうと、マイナスの数字がいった時に、マイナス同士を掛けてプラスになっちゃうから、思ったのと違う結果になった」

妹「マイナスなの?」

「とりあえず反射の具合を調節しようとして数字をいじくってたんだけど、BaseReflectFractionとかいう数字を色々変更してると、-3.3ぐらいがちょうどいいなあ、という結論に至った。これが何の数字かはよくわかってないんだけど」

f:id:una_unagi:20161217233255p:plain

「調整には例のマテリアルインスタンスを使う。で、この状態だと普通の反射もあるんで、わかりやすいように色を赤く変えた。今思うとラフネスを1にしれ反射消せば良かったような気もする」

妹「赤いのはいいけど、残りの水色はどっから出てきたの?」

「多分マイナスなんて数字を入れたから、色に異常が起きてるんじゃないかと……色の組み合わせによっては上手く表示出来ない場合がある。カメラと面の角度で色を塗り分けるっていう案自体は悪くないと思うんだけど、もうちょっとスマートな方法とか、計算式とかありそう」