Renderingキューブマップ&フレネル反射で厚みのあるフォトリアルなガラスを表現する方法です。関連Unity2019.2.5やりたいことCEDEC2019の下記のセッションで、厚みのあるガラスを疑似的に表現する手法が紹介されていました。cedec.cesa.or.jpこの記事ではこれを参考にして厚みのあるガラスを表現してみます。基本的には普通のフレネル反射を行うものの、厚みを表現するために以下の二点を加えます。内面も描画するグレージング角度に近づくにつれて少し早めに完全反射までもっていく※細かい部分は大体こんな感じかな?という雰囲気で作ってますのでご了承くださいシェーダそれではシェーダを書いてみます。}}内面と外面を描画するので2パスです。1パス目で内面を描いています。内面は前面をカリングし、厚みの分だけメッシュを縮小します。外側より反射が目立たないほうが自然そうだったので最終的なアルファ値に0.5を掛けました。外面は背面カリングして普通のフレネル反射の計算をしているだけですが、グレージング角度に近づくにつれて少し早めに完全反射するようにしています。前節のシェーダを使ってレンダリングを行うと以下の結果が得られます。動画だとこんな感じです。2019もう少し複雑なモデルに適用するとこんな感じ。それらしいレンダリング結果が得られました。»プロフィールUnityエンジニア。グラフィックスへの興味が強めです。インストールから基本的な使い方・注意点まとめ【Unity】【エディタ拡張】テクスチャを指定したUV座標で切り取って保存する【Unity】指定したアセットのAssetBundle名を取得する【Unity】【シェーダ】スクリプトからVP行列を渡してシェーダで座標変換に使う【Unity】【シェーダ】FloatやVectorをリニアライズ対象にするGammaアトリビュート月別アーカイブはてなブログをはじめよう!halya_11さんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。