From 060801db204ef7992f9fa1f20d7eb2ef7ff1f1d0 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 10 Nov 2014 23:13:20 +0000 Subject: [PATCH] Check GL_MAX_VERTEX_ATTRIBS on apply as well as fetch --- renderdoc/driver/gl/gl_renderstate.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/renderdoc/driver/gl/gl_renderstate.cpp b/renderdoc/driver/gl/gl_renderstate.cpp index 749acd80e..d7d52f8cd 100644 --- a/renderdoc/driver/gl/gl_renderstate.cpp +++ b/renderdoc/driver/gl/gl_renderstate.cpp @@ -301,7 +301,9 @@ void GLRenderState::ApplyState() // See FetchState(). The spec says that you have to SET the right format for the shader too, // but we couldn't query for the format so we can't set it here. - for(GLuint i=0; i < (GLuint)ARRAY_COUNT(GenericVertexAttribs); i++) + GLuint maxNumAttribs = 0; + m_Real->glGetIntegerv(eGL_MAX_VERTEX_ATTRIBS, (GLint *)&maxNumAttribs); + for(GLuint i=0; i < RDCMAX(maxNumAttribs, (GLuint)ARRAY_COUNT(GenericVertexAttribs)); i++) m_Real->glVertexAttrib4fv(i, &GenericVertexAttribs[i].x); m_Real->glPointParameterf(eGL_POINT_FADE_THRESHOLD_SIZE, PointFadeThresholdSize);