/* Apply any xfb_stride global qualifiers */
if (has_xfb_qualifiers) {
for (unsigned j = 0; j < MAX_FEEDBACK_BUFFERS; j++) {
- if (prog->TransformFeedback.BufferStride[j]) {
+ if (prog->LinkedTransformFeedback.BufferStride[j]) {
buffers |= 1 << j;
explicit_stride[j] = true;
prog->LinkedTransformFeedback.Buffers[j].Stride =
- prog->TransformFeedback.BufferStride[j] / 4;
+ prog->LinkedTransformFeedback.BufferStride[j] / 4;
}
}
}
for (unsigned j = 0; j < MAX_FEEDBACK_BUFFERS; j++) {
if (linked_shader->info.TransformFeedback.BufferStride[j]) {
- prog->TransformFeedback.BufferStride[j] =
+ prog->LinkedTransformFeedback.BufferStride[j] =
linked_shader->info.TransformFeedback.BufferStride[j];
/* We will validate doubles at a later stage */
- if (prog->TransformFeedback.BufferStride[j] % 4) {
+ if (prog->LinkedTransformFeedback.BufferStride[j] % 4) {
linker_error(prog, "invalid qualifier xfb_stride=%d must be a "
"multiple of 4 or if its applied to a type that is "
"or contains a double a multiple of 8.",
- prog->TransformFeedback.BufferStride[j]);
+ prog->LinkedTransformFeedback.BufferStride[j]);
return;
}
- if (prog->TransformFeedback.BufferStride[j] / 4 >
+ if (prog->LinkedTransformFeedback.BufferStride[j] / 4 >
ctx->Const.MaxTransformFeedbackInterleavedComponents) {
linker_error(prog,
"The MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS "
struct gl_transform_feedback_varying_info *Varyings;
GLint NumVarying;
+ /** Global xfb_stride out qualifier if any */
+ GLuint BufferStride[MAX_FEEDBACK_BUFFERS];
+
struct gl_transform_feedback_buffer Buffers[MAX_FEEDBACK_BUFFERS];
};
*/
struct {
GLenum BufferMode;
- /** Global xfb_stride out qualifier if any */
- GLuint BufferStride[MAX_FEEDBACK_BUFFERS];
GLuint NumVarying;
GLchar **VaryingNames; /**< Array [NumVarying] of char * */
} TransformFeedback;