今日のShaderリーディング0721

rot(極座標系)で流れる川の向きを指定、widthとかで幅も指定。

反射的表現もfetchしてくるUV座標を前フレームとほんのちょっとしかずらしてないからそれっぽく見えてるだけ。(iTime引数を与えたfbmによる動的かつ連続的ノイズでUVを歪ませる(   fbm((uv, time))   ))
まあ逆にそれほど歪ませるとか法線マップとかによる視覚の騙せやすさはすごいということ

歪む感覚とは…xy=(20,43)の座標のピクセルを取りに行く→本来はUV座標(20/width , 43/height)のテクスチャーを読み取るはずが、noiseにより全く別のUV座標(0.148, 0.649)の値を読み取ってしまった → 次フレーム時、xy=(20,43)の座標のピクセルを取りに行く→同様にしてUV座標(0.145, 0.658)の値を読み取ってきた。だが、前と比較するとあまりUV座標が変化しておらず時間的に連続してるように見える。
空間的歪みも同様。uvとはfor i in width , for j in height をしてるようなもの。これですでに空間的連続性を担保している。本来はi+1,jはi,jの隣のテクスチャーの色を読み取るはずだったが、fbmノイズによって少しずれた場所を読み取ってしまってる。これが空間的連続を保ったゆがみ。

UV座標をfbmで歪ませることは空間的な連続性を担保するし、引数にTimeを取ることは時間的な連続性を担保する。

なおUV座標を時間で加算減算することは物体が移動してるように見える


いいなと思ったら応援しよう!