お世話になっております。
シェーダーでライティングの処理を書く際にdot()で得られる値に疑問があります。
0度で1、90度で0が得られるのであれば、当然45度なら0.5が得られると思っていたのですが、どうもよくわかりません。
実際に内積をそのままフラグメントシェーダーから出力し、立方体の面の色をピックしてみたのですが、
0度の時はRGB255の白、90度の時はRGB0の黒なので、45度の時は当然RGB127のグレーかと思いきや、
RGB180のグレーになっています。360の半分ということなのでしょうか?
本来の中間色であるRGB127が得られるのは60度の時でした。
この差異を吸収する良い方法はありますでしょうか、御教示のほど、何卒よろしく御願い致します。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/07/16 12:25
2019/07/17 00:26
2019/07/17 04:42