0
是否有可能從幾何着色器只導出三角形而不導出三角形?這使一些有趣的可能性。 OpenGL 3.3。我可以在幾何着色器中輸出三角形而不是三角形條嗎?
glProgramParameteriARB(mVoxelShd, GL_GEOMETRY_OUTPUT_TYPE_ARB, GL_TRIANGLE_STRIP);
指定巫術輸出模式執行着色器。如果我嘗試:
glProgramParameteriARB(mVoxelShd, GL_GEOMETRY_OUTPUT_TYPE_ARB, GL_TRIANGLES);
它編譯和工作正常,但它顯示相同的三角形條。
另外,GLSL語言規範3.3:
爲幾何形狀着色器輸出佈局限定符標識符是
- 佈局限定符ID
- 點
- line_strip
- triangle_strip
- max_vertices = i nteger-constant
這裏似乎沒有「三角形」。
請注意'glProgramParameteriARB'不是3.3。這不是3.3的工作原理;那就是ARB_geometry_shader4,它與核心[Geometry Shaders](http://www.opengl.org/wiki/Geometry_Shader)不同。 –
這是一個有用的觀察。這意味着它的語言規範大部分是正確的核心功能,而ARB和EXT可以採用不同的規則? – Palax
只有[核心擴展](http://www.opengl.org/wiki/OpenGL_Extensions#Core_Extensions)需要具有與核心功能完全相同的語義和功能。對於所有其他擴展,核心功能不具有與擴展版本匹配的*。 GLSL在ARB_shader_objects和GL 2.0版本之間發生了顯着的變化。 –