2011年4月18日月曜日

Quartz Composer / Projection Mapping的なことをやってみたい

動機
これとかこれとかがTumblrで流れてきて面白そうだなぁ…ってなってあれこれ調べてみてたらこの記事を発見した.
で,GLSLでできるらしいのでやってみた.


結果


  • GLSL ShaderのVertex側プログラムは参考の通り, Fragment側はデフォルトをそのまま.
  • GLSL Shaderの中にはWidth, Heightをともに2にしたSpriteを入れておく.ついでにDepth testingもNone.
  • GLSL ShaderのrenderSizeは一応Width, Heightともに2にしといた.
  • BL, BR, TL, TRは描画領域内を0〜1までで与える.


ちなみにmix関数は'mix(x, y, a)= x*(1.0-a)+y*a'らしい(a=0.0でx, a=1.0でy, a=0.0→1.0でmix=x→yってこと).

0 件のコメント: