2005年09月27日
OpenGL GLSL readback / GLSL multitexture
諸般の事情でGL祭開催中。
とりあえずgpgpu.orgのFBOをベースに描画結果の取得を試みる。
色々悩んだ挙句、glReadBufferとglReadPixelsのコンボで秒殺できることを知る。
だがこの段階では描画結果がclampされてしまい、1.0を超える値をとったりはできない。
だがしかし、これも拡張機能を調べまくった結果、
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA_FLOAT32_ATI, _iWidth, _iHeight, 0, GL_RGBA, GL_FLOAT, data);
みたいにGL_RGBA_FLOAT32_ATIを使ってやれば良いことを知る。
GL_FLOATの精度は良くわからん。
harf_floatはあるけどfull_とかないからなぁ。
最後の敵はマルチテクスチャ。
GLSL内で複数のテクスチャを読んで演算したい。
これがどうにもこうにもできない。
いくつかサンプルなどを漁った結果、
glGetUniformLocationARB、glBindTexture、glUniform1iARB
あたりでなんとかできるようなのだが、一向に成功せず。
sampler2Dへのデータセット自体が失敗している様子。
ちゃんと名前引いているんだけどなぁ?
GLでシェーダとなると、質問する相手がいないのが悲惨だ。
熟練度があまりに低すぎて、何がどう悪いかをうまくまとめられないから海外サイトで質問するときっとリアル厨質問になる。
う~ん。
意味わからなさ過ぎて死にたい。
投稿者 togabito : 2005年09月27日 19:59
Trackback Pings
このエントリーのトラックバックURL:
http://aaa.jspeed.jp/~togabito/cgi-bin/mt/mt-tbx.cgi/309