मैं सामान को संशोधित करने से पहले बस एक साधारण ज्यामिति शेडर लिखने की कोशिश कर रहा हूं जो कि केवल कोबिस के माध्यम से गुज़रता है।जीएलएसएल 1.5 सरल ज्यामिति शेडर
मेरे शिखर शेडर है
#version 150 core
in vec3 inPosition;
in vec4 inColor;
out vec4 vertexColor;
void main() {
vertexColor = inColor;
gl_Position = vec4(inPosition, 1.0);
}
मेरे ज्यामिति शेडर
#version 150 core
layout (triangles) in;
layout (triangle_strip, max_vertices=3) out;
void main() {
gl_Position = gl_in[0].gl_Position;
EmitVertex();
gl_Position = gl_in[1].gl_Position;
EmitVertex();
gl_Position = gl_in[2].gl_Position;
EmitVertex();
EndPrimitive();
}
सब कुछ ठीक काम करता है और मेरे टुकड़ा शेडर ज्यामिति शेडर में जुड़े हुए बिना
#version 150 core
in vec4 vertexColor;
out vec4 fragColor;
void main() {
fragColor = vertexColor;
}
है। हालांकि जब मैं ज्यामिति शेडर में लिंक करता हूं तो यह काम करना बंद कर देता है। यह क्या है कि मैं याद कर रहा हूँ? क्या मेरे ज्यामिति शेडर को मेरे वर्टेक्स शेडर से vertexColor
के लिए इनपुट की आवश्यकता है और यदि ऐसा है तो यह कैसे किया जाता है?
http://en.wikipedia.org/wiki/GLSL#A_sample_trivial_GLSL_geometry_shader? – n0rd
यह मेरे प्रश्न का उत्तर नहीं देता है। मेरा ज्यामिति शेडर लूप को हटाए जाने के अपवाद के साथ उस पृष्ठ पर सूचीबद्ध एक जैसा ही है। हालांकि यह काम नहीं करता है। कुछ भी नहीं खींचा जाता है। इसके अलावा उस पृष्ठ पर दिखाए गए कशेरुक और टुकड़े के शेडर्स glsl 1 के लिए हैं।20 इन सभी को एक साथ जोड़ने में एक समस्या है जिसे मैं समझ नहीं पा रहा हूं और न ही मुझे कैसे ठीक किया जाए इस बारे में कोई जानकारी मिल सकती है। – user1139069