summaryrefslogtreecommitdiff
path: root/src/mesa/drivers
diff options
context:
space:
mode:
authorVladimir Dergachev <volodya@freedesktop.org>2004-12-30 11:43:04 +0000
committerVladimir Dergachev <volodya@freedesktop.org>2004-12-30 11:43:04 +0000
commitbcd1a9ed68cee96022af0816a1d22de86691fc77 (patch)
tree07b9581a95a800f6cb85676a492fe3d9db716e72 /src/mesa/drivers
parent2269445f6d20c49e6fc64f60dca8954a6ac0176c (diff)
Update vertex buffer code (still does not work properly..)
Diffstat (limited to 'src/mesa/drivers')
-rw-r--r--src/mesa/drivers/dri/r300/r300_render.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/mesa/drivers/dri/r300/r300_render.c b/src/mesa/drivers/dri/r300/r300_render.c
index 48b7ebb56e..1cb99915ff 100644
--- a/src/mesa/drivers/dri/r300/r300_render.c
+++ b/src/mesa/drivers/dri/r300/r300_render.c
@@ -259,13 +259,11 @@ static GLboolean r300_run_flat_render(GLcontext *ctx,
FLAT_COLOR_PIPELINE.vertex_shader.matrix[0].length=16;
memcpy(FLAT_COLOR_PIPELINE.vertex_shader.matrix[0].body.f, ctx->_ModelProjectMatrix.m, 16*4);
- #if 0
FLAT_COLOR_PIPELINE.vertex_shader.unknown2.length=4;
FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[0]=0.0;
FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[1]=0.0;
FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[2]=1.0;
FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[3]=0.0;
- #endif
program_pipeline(PASS_PREFIX &FLAT_COLOR_PIPELINE);
@@ -401,21 +399,28 @@ static GLboolean r300_run_vb_flat_render(GLcontext *ctx,
upload_vertex_buffer(rmesa, ctx, vb_arrays, &n_arrays);
fprintf(stderr, "Using %d AOS arrays\n", n_arrays);
- r300EmitState(rmesa);
-
reg_start(R300_RB3D_DSTCACHE_CTLSTAT,0);
e32(0x0000000a);
reg_start(0x4f18,0);
e32(0x00000003);
+ r300EmitState(rmesa);
+
reg_start(0x20b0,0);
e32(0x0000043f);
+ FLAT_COLOR_PIPELINE.vertex_shader.matrix[0].length=16;
+ memcpy(FLAT_COLOR_PIPELINE.vertex_shader.matrix[0].body.f, ctx->_ModelProjectMatrix.m, 16*4);
+
+ FLAT_COLOR_PIPELINE.vertex_shader.unknown2.length=4;
+ FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[0]=0.0;
+ FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[1]=0.0;
+ FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[2]=1.0;
+ FLAT_COLOR_PIPELINE.vertex_shader.unknown2.body.f[3]=0.0;
+
program_pipeline(PASS_PREFIX &FLAT_COLOR_PIPELINE);
- //upload_vertex_shader_fragment(PASS_PREFIX VSF_DEST_UNKNOWN1, &default_vector_vsf);
-
reg_start(R300_RE_OCCLUSION_CNTL, 0);
e32(R300_OCCLUSION_ON);