On Wed, May 1, 2013 at 2:10 PM, Anuj Phogat <anuj.pho...@gmail.com> wrote:
> In traditional multisampled framebuffer rendering, color samples must be 
> explicitly
> resolved via BlitFramebuffer before doing the scaled blitting of the 
> framebuffer.
> So, scaled blitting of a multisample framebuffer takes two separate calls to
> BlitFramebuffer.
>
> This patch implements the functionality of doing multisampled scaled resolve 
> using
> just one BlitFramebuffer call. Important changes involved in this patch are 
> listed
> below:
> 1. Add fractional scale/offset capability.
> 2. Modify blorp setup code to handle scaled blits properly.
>    - Do register allocation for UD and float registers.
>    - Use float registers to do scale / offset texture coordinates.
>    - Change offset computation to consider float coordinates.
>    - Round the scaled & offset coordinates down to integer.
>    - Make relevant changes to ensure correct blitting of stencil / depth 
> buffers.
> 3. Linear filter is not yet implemented in blorp. So, don't use blorp engine 
> to do
>    single sampled scaled blitting.
> 4. if INTEL_DEBUG=blorp is set, recompile the blorp shader to dump the native 
> code
>    for blorp blit. This will not effect performance but assist in debugging.
>
> Note: Observed no piglit regressions on sandybridge & ivybridge with these 
> changes.
>
I have identified problems with clipping of source / destination
coordinates. I am not
considering scale factor while clipping the coordinates in this patch.
I'm working on
fixing it along with other updates.
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to