0

OS: Win7 対 2012

グラフィックカード: Inter HD 4000

計算なしで画像を生成しても問題ありません。しかし、プロスペクティブ プロジェクションに p*vPosition を追加すると、プログラムを実行した直後にウィンドウが開いて閉じてしまいました。誰かが私が間違ったことを指摘できますか? 私の vshsader.glsl コードは次のようになります。

#version 150

in  vec4 vPosition;
in  vec4 vColor;
out vec4 color;

void main() 
{
    float d = -10.0;
    mat4 p = mat4( 1.0, 0.0, 0.0, 0.0
                   0.0, 0.0, 1.0, 0.0
                   0.0, 0.0, 1.0, 0.0
                   0.0, 0.0, 1/d, 0.0);

  gl_Position = p*vPosition;
  color = vColor;
} 
4

1 に答える 1

3

mat4 コンストラクターへのパラメーターの各行の末尾にコンマがありません。

そのはず:

mat4 p = mat4( 1.0, 0.0, 0.0, 0.0, // <- end with comma
               0.0, 0.0, 1.0, 0.0, // <- end with comma
               0.0, 0.0, 1.0, 0.0, // <- end with comma
               0.0, 0.0, 1/d, 0.0);
于 2013-04-21T02:42:51.307 に答える