diff options
author | Pauli Nieminen <suokkos@gmail.com> | 2010-02-02 05:39:28 +0200 |
---|---|---|
committer | Pauli Nieminen <suokkos@gmail.com> | 2010-02-02 06:09:36 +0200 |
commit | 7b92cb45b2f7076476b6a2f50ed044979b1eebe1 (patch) | |
tree | ce3b85e8d380cc54a05a51c2e80e176ceab8018b | |
parent | 43e4b584227534e30e487e7fb7e99d6501cbcd85 (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.c | 4 |
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++; |