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