Mesa (master): vc4: Add support for rendering to cube map surfaces.

Eric Anholt anholt at kemper.freedesktop.org
Mon Apr 18 17:11:11 UTC 2016


Module: Mesa
Branch: master
Commit: 48fe53bbb9cc14dd758e7a55c55616be85a3358b
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=48fe53bbb9cc14dd758e7a55c55616be85a3358b

Author: Eric Anholt <eric at anholt.net>
Date:   Fri Apr 15 15:07:49 2016 -0700

vc4: Add support for rendering to cube map surfaces.

We need to fix up the offset to point at the face of the cube.  Fixes
piglit fbo-cubemap, copyteximage CUBE, and glean's fbo test.

Cc: "11.1 11.2" <mesa-stable at lists.freedesktop.org>

---

 src/gallium/drivers/vc4/vc4_resource.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/vc4/vc4_resource.c b/src/gallium/drivers/vc4/vc4_resource.c
index 050941c..a360e19 100644
--- a/src/gallium/drivers/vc4/vc4_resource.c
+++ b/src/gallium/drivers/vc4/vc4_resource.c
@@ -607,7 +607,8 @@ vc4_create_surface(struct pipe_context *pctx,
         psurf->u.tex.level = level;
         psurf->u.tex.first_layer = surf_tmpl->u.tex.first_layer;
         psurf->u.tex.last_layer = surf_tmpl->u.tex.last_layer;
-        surface->offset = rsc->slices[level].offset;
+        surface->offset = (rsc->slices[level].offset +
+                           psurf->u.tex.first_layer * rsc->cube_map_stride);
         surface->tiling = rsc->slices[level].tiling;
 
         return &surface->base;




More information about the mesa-commit mailing list