フォト

Google AdSense

  • AdSense
無料ブログはココログ

« researchコーナーの処遇 | トップページ | 前日 »

2004.10.26

BumpUnderWater

ちょっと頼まれてSummer 2003まであったBumpUnderWaterのエフェクトを行うクラスを即興で作る。

一応、単独では固定機能で動いたんですが組み込んでみたらなんか表示がおかしかった(たぶん、サンプラーステージステートのフィルタの問題だと思いますが・・・。そっち側は私の関与するところではありませんので)ので、HLSLのシェーダで同じことをするものを作ってみる(DXSASはちょっとめんどくて途中まで書きかけ。正式にTipsでも書くのであれば直すけどねぇ)。

FrameMoveでやってる部分はロックしないで頂点シェーダにやらせてもいいんですが、固定機能で実装時にピクセルシェーダがやるところがおかしかったので、その辺は置いておきます(そんなにパフォーマンスが変わるほどでもないだろうし)。

http://masafumi-t.cool.ne.jp/DL/WaterShader.lzh
(lzh形式, 981KB, ソース実行ファイル両方付き)

あんまり使われるモノでもないからTipsにするようなネタじゃないよなぁ。まぁ、完全にシェーダだけで実現するのであれば、FX ComposerやRenderMonkey向けのネタとしてはいいのかもね。

内部的なことで言えば、RenderShader()の引数でテクスチャを取るのは今回の要求が、レンダーターゲットのテクスチャでやりたかったのでメンバで持たないわけですね。

ま、忙しいときですが、この程度のことはリハビリにはいいですね。

underwater.jpg

« researchコーナーの処遇 | トップページ | 前日 »

Programming」カテゴリの記事

コメント

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/2210/1775658

この記事へのトラックバック一覧です: BumpUnderWater:

« researchコーナーの処遇 | トップページ | 前日 »