Hi guys, Just wanted to run this past you all before taking the time to report it as a bug.
There seems to be conflicting text in the OpenGL and GLSL specs in regards to the component layout qualifier. In Section 11.1.1 (Vertex Attributes) from the OpenGL 4.5 spec: "When an attribute variable declared using a matrix type is bound to a generic attribute index i, its values are taken from consecutive generic attributes beginning with generic attribute i. Such matrices are treated as an array of column vectors with values taken from the generic attributes identified in table 11.2. Individual col-umn vectors are taken from generic attribute components according to table 11.1, using the vector type from table 11.2 and the component layout qualifier (if any) specified in the variable declaration." The last sentence specifically mentions the component layout qualifier. In Section 4.41 (Input Layout Qualifiers) from the GLSL 4.5 spec: "It is a compile-time error to apply the component qualifier to a matrix, a structure, a block, or an array containing any of these." I tested this on the Nvidia blob and it causes a compile-time error if the component qualifier is used on a vertex shader input that is a matrix. So this is clearly a spec bug right? If so should I allow the qualifier on vertex shader inputs or not? On one hand its safer to go with the less restrictive option on the other hand its more work to implement. Tim _______________________________________________ mesa-dev mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-dev
