2008年11月16日日曜日

2008年5月18日日曜日

Squirrel

リアルタイム処理にスクリプトを導入するにあたり、JavaScript(ECMAScript)やLuaを検討していたけど、Squirrelに落ち着きつつある。
フィルタ(シェーダー)的な関数を記述したいだけなので、メモリ使用量や処理速度の見積もりがしやすいところが気に入った。
SWIGが正式対応してくれたらうれしい。

2008年4月23日水曜日

OpenGL Cg glstate

Cgの頂点プログラム(プロファイルはarbvp1)からOpenGLのステートにアクセスするには、glstateという変数が利用できる。

例えば、モデル・ビュー
プロジェクションなら、glstate.matrix.mvpといった具合。

Cg Toolkit User's Manual(日本語版)の145ページ以降に書いてある。
http://developer.download.nvidia.com/cg/Cg_2.0/2.0.0012/Cg_Users_Manual_JP.pdf

ちなみにGLSLの場合、
gl_Position= ftransform(); という組み込み関数が利用できる。

2008年3月20日木曜日

OpenGL Cgでテクスチャを無効にする

現在有効になっているフラグメントプログラムの中でsampler2D() とかを呼んでいる場合、 cgGLDisableTextureParameter() だけだと効果なし。
glDisable(GL_TEXTURE_2D)と同等のことをする場合には、cgGLDisableProfile(fragmentProgram) とするか、テクスチャサンプリングしないフラグメントプログラムをバインドするしかないっぽい