On Thu, Dec 20, 2012 at 10:56 AM, Marek Olšák <mar...@gmail.com> wrote:
> This series contains some fixes for rarely used OpenGL features. What's more 
> interesting here is that it uses 2 features we could use in gallium more 
> often: 3D blits and 3D texture tranfers. The interfaces have been in place 
> already.
>
> The 3D blit can be done with pipe->blit by setting 
> pipe_blit_info.dst.box.depth and src.box.depth to a value > 1. It can copy 
> multiple texture layers/slices with a single blit call. It's implemented by 
> the u_blitter module, which is what most drivers use, though at the moment 
> there's no support for flipping and scaling in the Z direction.
>
> Concerning the 3D transfers, we've had pipe_transfer.layer_stride, box.z and 
> box.depth for some time, so we can just start using them. The drivers which 
> don't implement the 3D transfers have a reason to do so now. This series 
> doesn't break the drivers which don't implement them, because I'm using the 
> 3D transfers to fix things which have always been broken.
>
> In particular, decompress_with_blit uses a 3D blit to decompressed a whole 2D 
> array texture to a temporary texture and a 3D transfer to map all of it. 
> Also, the CopyTexSubImage fallback needs a 3D transfer to be able to map a 1D 
> array texture.

Looks good to me.

Reviewed-by: Brian Paul <bri...@vmware.com>
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to