public QuadShader(GLContext ctx) { super(ctx); int maxVecs = usableMaxUniformVectors(ctx) - extraVec4s(); if (maxVecs < vec4sPerQuad()) throw new RuntimeException( "GL_MAX_VERTEX_UNIFORM_VECTORS too low: have " + maxVecs + ", need at least " + vec4sPerQuad()); maxQuads = maxVecs / vec4sPerQuad(); }