ShaderTips

シェーダーTips

主にUnityシェーダーについての記事を書いています。

2019-07-01から1ヶ月間の記事一覧

ブリン・フォン反射モデル

フォンの反射モデルでは反射光の計算を内積や乗算をフラグメントシェーダーで行なっていたので、負荷が高いという懸念点がありました。 ny-program.hatenablog.com そこで今回はスペキュラ反射を簡易的な計算処理で行うブリン・フォン反射モデルを紹介します…

物理ベースレンダリングって何?

物理ベースレンダリングとは 物体表面における光の反射や※1媒質内における散乱などの物理現象 光源からシーンを経てカメラに入射する光の伝搬などを計測して数式でモデル化したもの用いてレンダリングすること ※1光などの物理的作用を他へ伝えるもの 光 電磁…

フォンの反射モデル

フォンの反射モデルとは ランバート反射モデルにスペキュラ反射を追加したものです。 ny-program.hatenablog.com スペキュラ反射 物体表面のハイライト(光沢)部分を表現するものです。 プラスチックや金属を見ると表面の一部に強いハイライトが発生している…

【Unity】【シェーダー】ランバート反射モデル (フォンシェーディング)

下の記事で解説したランバート反射モデルではバーテックスシェーダーで法線と光源方向ベクトルの内積を拡散反射の反射量としました。頂点単位なのでピクセルシェーダー に渡った時点で反射量が補間されるため、精度がイマイチです。 ny-program.hatenablog.c…

【Unity】【シェーダー】ランバート反射モデル (グローシェーディング)

ランバート反射モデルとは [1]サーフェスの法線ベクトルと、光源方向のベクトルがなす角度から 0.0 ~ 1.0 の値を算出し、それをサーフェスの「明るさ」とします。 原理 光とは粒子の集合(フォトン)でフォトンが物体に当たることにより、光ります。 とある光…

Unity GI(大域照明)ライティング

GI(大域照明)ライティングとは 負荷が大きい間接光[1]の計算をビルド前に済ませておき、ゲーム実行時にはその計算結果を使う手法。 ライトマップ 計算結果を保存するテクスチャ ベイク 間接光などの計算結果をライトマップに書き込む行為 [1]間接光とは壁や…