プログラミング

STL関連リンクエラー

どこかで以下のようなエラーを見かけたので、 それについて書いておこうと思います。 ■メッセージ例 error LNK2019: 未解決の外部シンボル "__declspec(dllimport) class std::basic_ostream > & __cdecl std::operator<< >( class std...
OpenGL

OpenGLでのストリームアウト その4

今までのものは GL_transform_feedback_NVのやつでやっていた。 しかし、今回AMDのRadeon 5450環境を手に入れられたのでこちらについても ちょっと試してみた。GL_transform_feedback_EXT をサポートしているようなのでこちらを使うことになりそう。 ■APIの置き換え(その1) NVIDIA AM...
OpenGL

OpenGLでのストリームアウト その3

ようやく動作自体は出来たのでメモしておきたいと思います。 サンプルプログラムはまた後日に。 ■ 準備 GLSLシェーダーをコンパイル シェーダープログラムをリンク処理 glTransformFeedbackVaryingsNV でストリームアウトとして書き込むデータの設定 格納先のバッファオブジェクトを生成 ■ 描画フェーズ ラスタライ...
OpenGL

OpenGLでのストリームアウト その2

■GL_NV_transformfeedbackのspecテキスト こう書いてあった。 Two methods exist to specify which transformed vertex attributes are streamed to one, or more, buffer objects in transform feedback...
OpenGL

OpenGLでのストリームアウト その1

OpenGLを用いてもDirectX10のストリームアウト相当の機能を使うことが出来ます。この機能のためにまず最初に拡張されたのが GL_NV_transform_feedback というエクステンションです。 最近ではこれがEXTになったようですが、単純にNVから格が上がっただけとはいえないようです。 APIが変更されているからです。 EXT版で試行錯誤...
DirectX

Scissorによる挙動違い(DX vs GL)

DirectXとOpenGLとで、シザーの設定時のクリア挙動が異なるようです。座標系がそれぞれ異なるってのもあるけど、 そこは上下を逆転して対処したとしても、それだけでは互換動作は不可能。 フレームバッファの縦横と、ビューポートの縦横と、シザー設定の縦横 それぞれ違う設定にしてみて、双方のAPIで実行してみるとわかりやすいかと。 DirectXではビュー...
DirectX

Vertex Texture Fetchによるスキニング

Vertex Texture Fetchを利用して、スキニングメッシュのサンプルを動かしてみました。 ひにけにxnaさんのところでは、XNAを用いての解説があったので、 ここでは、普通のDirectX SDKとC++による組み合わせでこれをやってみたいと思います。 ■ 使用するもの SkinnedMeshのサンプルプログラム Shade...
vmware

ESXiでのディスク上限

今までやってなかったVMwareESXi4でのiSCSIの実験やNFSマウントの実験をやってみました。 これで2TBの壁を越えられるかという点に興味があります。 ■準備編 *2TB以上のiSCSIターゲット WindowsServer2008を用意して、その中でiSCSIターゲットを準備します。 以前SoftwareTargetでは2TB以上のVHD...
未分類

シェーダー定数(GLSL)

■ボーンの行列60個 どこかのブログでボーン用マトリックスパレットが60個くらいまでしか使えなかったと見たので、その理由を書いてみます。 実はその制限は単純なもので、ShaderModel3系までだと、シェーダー定数は256個のレジスタが使えることになっています。 マトリックスだとfloatの16個分なので、float4に換算すると4つ使うことになります。...
OpenGL

GLSLスキニング

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