summaryrefslogtreecommitdiff
path: root/src/gallium/drivers/r600/r600_draw.c
diff options
context:
space:
mode:
authorJerome Glisse <jglisse@redhat.com>2010-07-27 20:15:17 -0400
committerJerome Glisse <jglisse@redhat.com>2010-07-27 20:18:32 -0400
commit641c9adb09e8707f659d42be600d16902ebf8895 (patch)
treedb9200b3266bbc931c2b2636ca31fe5c158b80a5 /src/gallium/drivers/r600/r600_draw.c
parent25472942c9640f6c0d252de2f013d04ac2355b1d (diff)
r600g: texture support
Add texture mapping support, redbook/texbind works if you comment out glClear and second checkboard. Need to fix : - texture overwritting - lod & mip/map handling - unormalized coordinate handling - texture view with first leve > 0 - and many other things Signed-off-by: Jerome Glisse <jglisse@redhat.com>
Diffstat (limited to 'src/gallium/drivers/r600/r600_draw.c')
-rw-r--r--src/gallium/drivers/r600/r600_draw.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_draw.c b/src/gallium/drivers/r600/r600_draw.c
index 724fb6c988..e0d624889f 100644
--- a/src/gallium/drivers/r600/r600_draw.c
+++ b/src/gallium/drivers/r600/r600_draw.c
@@ -125,6 +125,17 @@ static int r600_draw_common(struct r600_draw *draw)
if (r)
return r;
}
+ /* setup texture sampler & resource */
+ for (i = 0 ; i < rctx->nps_sampler; i++) {
+ r = radeon_draw_set_new(rctx->draw, rctx->ps_sampler[i]);
+ if (r)
+ return r;
+ }
+ for (i = 0 ; i < rctx->nps_view; i++) {
+ r = radeon_draw_set_new(rctx->draw, rctx->ps_view[i]->state);
+ if (r)
+ return r;
+ }
/* FIXME start need to change winsys */
draw->draw = radeon_state(rscreen->rw, R600_DRAW_TYPE, R600_DRAW);
if (draw->draw == NULL)