瀏覽代碼

nv30: disable rendering to 3D textures

There's no way to tell the 3D engine about swizzling on such textures.
While rendering to NPOT ones may be possible, there's no great way to
expose that in gallium, nor would there be any practical benefit.

Fixes the non-compressed-format "copyteximage 3D" failures. Something
odd going on with the compressed formats.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
tags/19.0-branchpoint
Ilia Mirkin 6 年之前
父節點
當前提交
8f98ff362c
共有 1 個文件被更改,包括 6 次插入0 次删除
  1. 6
    0
      src/gallium/drivers/nouveau/nv30/nv30_screen.c

+ 6
- 0
src/gallium/drivers/nouveau/nv30/nv30_screen.c 查看文件

@@ -435,6 +435,12 @@ nv30_screen_is_format_supported(struct pipe_screen *pscreen,
if (MAX2(1, sample_count) != MAX2(1, storage_sample_count))
return false;

/* No way to render to a swizzled 3d texture. We don't necessarily know if
* it's swizzled or not here, but we have to assume anyways.
*/
if (target == PIPE_TEXTURE_3D && (bindings & PIPE_BIND_RENDER_TARGET))
return false;

/* shared is always supported */
bindings &= ~PIPE_BIND_SHARED;


Loading…
取消
儲存