r300-gallium: Slightly hacky fix for glxgears-style TCL.
authorCorbin Simpson <MostAwesomeDude@gmail.com>
Mon, 1 Jun 2009 19:04:29 +0000 (12:04 -0700)
committerCorbin Simpson <MostAwesomeDude@gmail.com>
Mon, 1 Jun 2009 19:04:29 +0000 (12:04 -0700)
src/gallium/drivers/r300/r300_state_derived.c

index 7ae339cf972d8d5a7a4b557d6dce617408cf3397..2477b30822b81d07ddb2f6a4acfb9eb0cdaf9f1f 100644 (file)
@@ -163,6 +163,13 @@ static void r300_vs_tab_routes(struct r300_context* r300,
         vinfo->hwfmt[3] |= (4 << (3 * i));
     }
 
+    /* Handle the case where the vertex shader will be generating some of
+     * the attribs based on its inputs. */
+    if (r300screen->caps->has_tcl &&
+            info->num_inputs < info->num_outputs) {
+        vinfo->num_attribs = info->num_inputs;
+    }
+
     draw_compute_vertex_size(vinfo);
 }