シェーダー

DirectX

シェーダーリフレクション [DirectX10]

シェーダーの中身がどのようなものが詰まっているかを取得するための方法です。 なかなか情報がなくて大変でした。 やりたいこととしては、シェーダーのバイナリファイルから どのような変数およびデータ型がどの位置に存在するのかと知る方法となります。D3DX9には存在していたID3DXConstantTableのようなものを D3D10ではどうやるかという感じになるで...
OpenGL

ATIドライバでのGLSL

GLSLの記述について、ATIは結構シビア。 ドライバのバージョンによってはシェーダーのコンパイルが通ったり通らなかったりする。しかし、通らないのは厳密には正しく、そのようなシェーダーを書いていない開発者のほうが悪いのはわかっているんだけど、なんとも開発しづらい。 以前は警告が出ていたのものが、警告が出なくなったりして、 チェックが緩くなったものもあれば、逆...
OpenGL

GLSLスキニング

■GLSLでスキニングシェーダー書いてみた わりとGLSLでスキニングシェーダーをやったという記事を見かけないので ここで書いてみます。 大変だった点はGLSLでは、Cのようなキャストを受け付けない点。 そのためブレンドインデックスをどうやってint型にするかで悩みました。 実際には、下記のソースコードに示すように int( )で囲ってやる程度で済む話なので...