[2/6] wined3d: Pass the destination surface to blitters
stefan at codeweavers.com
Thu Oct 13 13:58:31 CDT 2011
On Thursday 13 October 2011 14:39:58 Henri Verbeet wrote:
> On 13 October 2011 01:07, Stefan Dösinger <stefan at codeweavers.com> wrote:
> > -static HRESULT arbfp_blit_set(void *blit_priv, struct wined3d_context
> > *context, struct wined3d_surface *surface) + static HRESULT
> > arbfp_blit_set(void *blit_priv, struct wined3d_context *context, struct
> > wined3d_surface *src, + const struct wined3d_surface *dst)
> Whitespace error. The parameter you're adding isn't used anywhere, not
> even in the same patchset.
- upload_palette(src, context);
+ upload_palette(src, dst, context);
> Perhaps more important though is the point
> that "set_shader" is pretty much the wrong interface for blitters and
> should go away. Note that the blitter interface is something I'm
> actually working on as part of the ddraw work, it's just that other
> things keep coming up.
What does the interface you plan look like?
I had a short look at this and my proposal is to separate the blitters into
two interfaces: One that sets the shader for the color conversion(blit_shader
without colorfill and depthfill), and one that does the drawable setup and
initiates the data transfer(That could include blitters that call
glTexSubImage2D when blitting from sysmem->vidmem)
The shader setup blitter could be hidden behind a quad draw blitter if you find
a way to integrate swapchain_blit and surface_blt_to_drawable(especially
frontbuffer texture -> frontbuffer drawable blit)
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 836 bytes
Desc: This is a digitally signed message part.
More information about the wine-devel