2010-11-14 38 views
2

我試圖讓一個簡單直通幾何着色器在Mac OS X 10.6的工作。代碼編譯和鏈接沒有問題,但由於某種原因沒有幾何被繪製到屏幕上。這是我的着色器代碼:OpenGL的幾何着色器的Mac OS X

#version 120 
#extension GL_EXT_geometry_shader4: enable 

void main() 
{ 
    gl_Position = gl_PositionIn[0]; 
    EmitVertex(); 

    EndPrimitive(); 
} 

如果有人能幫助,我會很感激。

回答

2

所以事實證明,這個問題是不是在着色器代碼在所有。顯然,幾何着色器使用的版本120的時候,你必須設置的輸入和輸出類型如下:

glProgramParameteriEXT(shaderProgramID, GL_GEOMETRY_OUTPUT_TYPE_EXT, GL_POINTS); 
glProgramParameteriEXT(shaderProgramID, GL_GEOMETRY_VERTICES_OUT_EXT, GL_POINTS); 

之後,一切都非常完美了。

0

幾何着色器適用於整個圖元。你的看起來只適合積分。如果您未通過積分,則需要處理所有gl_VerticesIn(計數)頂點。

+0

最終的計劃是有着色過程中的一個點到更復雜的幾何形狀。現在我只通過個別點。 – LandonSchropp 2010-11-15 10:20:50