summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPauli Nieminen <suokkos@gmail.com>2010-02-02 05:39:28 +0200
committerPauli Nieminen <suokkos@gmail.com>2010-02-02 06:09:36 +0200
commit7b92cb45b2f7076476b6a2f50ed044979b1eebe1 (patch)
treece3b85e8d380cc54a05a51c2e80e176ceab8018b
parent43e4b584227534e30e487e7fb7e99d6501cbcd85 (diff)
r200: Fix EXT_fogcoord rendering.
The fogcoord calue was not pushed to GPU because of implicit float to int conversion. Fix is to use float pointer to buffer object so no conversion is done in assigment.
-rw-r--r--src/mesa/drivers/dri/r200/r200_maos_arrays.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/r200/r200_maos_arrays.c b/src/mesa/drivers/dri/r200/r200_maos_arrays.c
index 383a0c4b0d3..3762a1ce188 100644
--- a/src/mesa/drivers/dri/r200/r200_maos_arrays.c
+++ b/src/mesa/drivers/dri/r200/r200_maos_arrays.c
@@ -74,7 +74,7 @@ static void r200_emit_vecfog(GLcontext *ctx, struct radeon_aos *aos,
GLvoid *data, int stride, int count)
{
radeonContextPtr rmesa = RADEON_CONTEXT(ctx);
- uint32_t *out;
+ GLfloat *out;
int i;
int size = 1;
@@ -90,7 +90,7 @@ static void r200_emit_vecfog(GLcontext *ctx, struct radeon_aos *aos,
aos->components = size;
aos->count = count;
- out = (uint32_t*)((char*)aos->bo->ptr + aos->offset);
+ out = (GLfloat*)((char*)aos->bo->ptr + aos->offset);
for (i = 0; i < count; i++) {
out[0] = r200ComputeFogBlendFactor( ctx, *(GLfloat *)data );
out++;