diff options
author | Brian Paul <[email protected]> | 2008-10-13 16:43:11 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 2008-10-13 16:43:36 -0600 |
commit | 978799beb2a9c51550abb1f37bb6f63d06bc4717 (patch) | |
tree | 56e725b9d9f7e9ce03891ff89206aa7bc02cd07a /src/gallium/drivers/cell/ppu/cell_state_emit.c | |
parent | b0c136cfb1fcbcea35e17dc699a96acbb24738f5 (diff) |
cell: initial work for mipmap texture filtering
Diffstat (limited to 'src/gallium/drivers/cell/ppu/cell_state_emit.c')
-rw-r--r-- | src/gallium/drivers/cell/ppu/cell_state_emit.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/src/gallium/drivers/cell/ppu/cell_state_emit.c b/src/gallium/drivers/cell/ppu/cell_state_emit.c index cbfa393cfba..7090b4c99f7 100644 --- a/src/gallium/drivers/cell/ppu/cell_state_emit.c +++ b/src/gallium/drivers/cell/ppu/cell_state_emit.c @@ -211,14 +211,20 @@ cell_emit_state(struct cell_context *cell) texture->opcode = CELL_CMD_STATE_TEXTURE; texture->unit = i; if (cell->texture[i]) { - texture->start = cell->texture[i]->tiled_data; - texture->width = cell->texture[i]->base.width[0]; - texture->height = cell->texture[i]->base.height[0]; + uint level; + for (level = 0; level < CELL_MAX_TEXTURE_LEVELS; level++) { + texture->start[level] = cell->texture[i]->tiled_data[level]; + texture->width[level] = cell->texture[i]->base.width[level]; + texture->height[level] = cell->texture[i]->base.height[level]; + } } else { - texture->start = NULL; - texture->width = 1; - texture->height = 1; + uint level; + for (level = 0; level < CELL_MAX_TEXTURE_LEVELS; level++) { + texture->start[level] = NULL; + texture->width[level] = 1; + texture->height[level] = 1; + } } } } |