nvfx: fix sampler views support
authorLuca Barbieri <luca@luca-barbieri.com>
Mon, 22 Mar 2010 17:36:16 +0000 (18:36 +0100)
committerRoland Scheidegger <sroland@vmware.com>
Mon, 22 Mar 2010 17:36:16 +0000 (18:36 +0100)
The code was half converted, resulting in texturing being totally broken.

src/gallium/drivers/nvfx/nv30_fragtex.c
src/gallium/drivers/nvfx/nv40_fragtex.c
src/gallium/drivers/nvfx/nvfx_context.h

index 2b56f4549218c3f12fbf51b6dc1009f8c3767e78..54e47574c4de5e27d1999e83ee1afb69fc2eb51b 100644 (file)
@@ -91,7 +91,7 @@ struct nouveau_stateobj *
 nv30_fragtex_build(struct nvfx_context *nvfx, int unit)
 {
        struct nvfx_sampler_state *ps = nvfx->tex_sampler[unit];
-       struct nvfx_miptree *nv30mt = nvfx->tex_miptree[unit];
+       struct nvfx_miptree *nv30mt = (struct nvfx_miptree *)nvfx->fragment_sampler_views[unit]->texture;
        struct pipe_texture *pt = &nv30mt->base;
        struct nouveau_bo *bo = nouveau_bo(nv30mt->buffer);
        struct nv30_texture_format *tf;
index 5889b5e40d5f1bc3d4e26760239fbf01d4232326..05506e2809916d1335125beb038c256f6afbc818 100644 (file)
@@ -109,7 +109,7 @@ struct nouveau_stateobj *
 nv40_fragtex_build(struct nvfx_context *nvfx, int unit)
 {
        struct nvfx_sampler_state *ps = nvfx->tex_sampler[unit];
-       struct nvfx_miptree *nv40mt = nvfx->tex_miptree[unit];
+       struct nvfx_miptree *nv40mt = (struct nvfx_miptree *)nvfx->fragment_sampler_views[unit]->texture;
        struct nouveau_bo *bo = nouveau_bo(nv40mt->buffer);
        struct pipe_texture *pt = &nv40mt->base;
        struct nv40_texture_format *tf;
index 001b19eedf04d33976371639e87b44d2e0ee37c2..ab7225cf6c343c3957f64421cbd49e1d9d8e895b 100644 (file)
@@ -158,7 +158,6 @@ struct nvfx_context {
        struct pipe_buffer *idxbuf;
        unsigned idxbuf_format;
        struct nvfx_sampler_state *tex_sampler[PIPE_MAX_SAMPLERS];
-       struct nvfx_miptree *tex_miptree[PIPE_MAX_SAMPLERS];
        struct pipe_sampler_view *fragment_sampler_views[PIPE_MAX_SAMPLERS];
        unsigned nr_samplers;
        unsigned nr_textures;