Henri Verbeet
7ace689742
wined3d: Take hDestWindowOverride into account in IWineGDISwapChainImpl_Present().
2011-04-13 14:13:52 +02:00
Henri Verbeet
926dfc5c49
wined3d: Merge the IWineD3DSwapChain::SetDestWindowOverride() implementations.
2011-04-13 14:13:51 +02:00
Henri Verbeet
3068ae9e83
wined3d: Remove IWineD3DSwapChain::Destroy() from the public interface.
2011-04-13 14:13:51 +02:00
Henri Verbeet
84103460bd
wined3d: Check FBO completeness after the read / draw buffers are specified.
...
Unless the driver implements ARB_ES2_compatibility / GL4.1, FBO completeness
depends on what read / draw buffers are set.
2011-04-11 11:50:51 +02:00
Henri Verbeet
dd2c7d0d8c
wined3d: Don't free D3D swapchains until the wined3d swapchain is destroyed.
...
This will allow us the get rid of the swapchain refcounting hacks in d3d9 in
particular. This is similar to the way we handle resources that are still in
use by a stateblock, but aren't referenced anywhere by the application.
2011-04-08 14:40:48 +02:00
Henri Verbeet
d19c3588bc
wined3d: Merge the IWineD3DSwapChain::Destroy() implementations.
...
They're mostly the same, except for the GL version also destroying its
contexts, and being a bit more careful about the order in which backbuffers
are destroyed.
2011-04-08 14:40:43 +02:00
Henri Verbeet
28137ba2e9
wined3d: Only create a swapchain context array for GL swapchains.
...
Lying about the number of contexts a swapchain has isn't very useful.
2011-04-08 14:40:39 +02:00
Henri Verbeet
032c374307
wined3d: Merge swapchain_base.c into swapchain.c.
2011-04-07 19:27:01 +02:00
Henri Verbeet
0a174ae542
wined3d: Merge swapchain_gdi.c into swapchain.c.
2011-04-07 19:26:50 +02:00
Henri Verbeet
85f2348549
wined3d: Get rid of the IWineD3DBase requirement for surface_set_container().
...
This made sense back when we needed the container's parent and didn't know the
container's type, but neither of those is true anymore.
2011-03-28 17:08:52 +02:00
Henri Verbeet
ac9c592ca9
wined3d: Store all the resource desc information in struct wined3d_resource.
2011-03-09 12:29:17 +01:00
Henri Verbeet
36d4268e3c
wined3d: Remove COM from IWineD3D.
2011-02-02 12:22:42 +01:00
Henri Verbeet
6f95f05aaf
wined3d: Move swapchain context retrieval to swapchain.c.
2011-01-20 12:18:58 +01:00
Henri Verbeet
b439fa9d8f
wined3d: Pass an IWineD3DSwapChainImpl pointer to swapchain_create_context_for_thread().
2011-01-19 12:22:38 +01:00
Andrew Nguyen
7e13b1afaf
wined3d: Remove references to GLX_SGI_video_sync.
...
Usage of GLX_SGI_video_sync is problematic, and wined3d cannot use GLX extensions.
2010-12-27 15:39:41 +01:00
Henri Verbeet
0e3c60786e
wined3d: Explicitly pass gl_info to unset_shader().
2010-12-10 13:02:26 +01:00
Henri Verbeet
ae7a20af2f
wined3d: Explicitly pass blit_priv and gl_info to set_shader().
2010-12-10 13:02:24 +01:00
Henri Verbeet
03f7a2d88e
wined3d: Get rid of the remaining "Flags".
2010-11-23 13:15:36 +01:00
Henri Verbeet
027fdb31c2
wined3d: Rename the IWineD3DSurfaceImpl "Flags" field to "flags".
2010-11-12 15:43:07 +01:00
Henri Verbeet
7e3985e1fe
ddraw: Setup the device window in SetCooperativeLevel().
2010-11-08 13:30:54 +01:00
Henri Verbeet
45cee64295
wined3d: Move the fullscreen window setup / restore code to the device.
2010-11-08 13:30:40 +01:00
Henri Verbeet
0b15963b4e
wined3d: Get rid of redundant comparisons against FALSE.
2010-09-14 11:43:44 -05:00
Henri Verbeet
b68d257710
wined3d: Get rid of redundant comparisons against NULL / 0.
2010-09-14 09:43:33 -05:00
Henri Verbeet
f49028d91c
wined3d: GL_DRAW_FRAMEBUFFER depends on either ARB_framebuffer_object or EXT_framebuffer_blit.
2010-09-08 13:31:37 +02:00
Henri Verbeet
bc2db78c3a
wined3d: Explicitly document some more consequences of GL locking policy.
...
The basic rule is that you can't call anything that takes the user32 / gdi32
lock while under the GL (winex11) lock. As a consequence, you can't call
anything like context_acquire() or context_destroy() either.
2010-09-03 11:05:10 +02:00
Henri Verbeet
6c4c351791
wined3d: Don't require wined3d object parents to be COM objects.
2010-09-01 14:01:02 +02:00
Henri Verbeet
3a7f08a56f
wined3d: Rename wined3d_format_desc to wined3d_format.
2010-08-31 14:23:47 +02:00
Henri Verbeet
c568916f9e
wined3d: Implicit depth/stencil surfaces don't have a container.
...
They're owned by the device instead of the swapchain.
2010-08-31 14:23:47 +02:00
Henri Verbeet
b233e7b301
wined3d: Rename the "format" field in wined3d_format_desc to "id".
2010-08-26 12:41:44 +02:00
Henri Verbeet
cc5271d1b7
wined3d: Rename WINED3DFORMAT to wined3d_format_id.
2010-08-24 12:25:01 +02:00
Henri Verbeet
3fd66bc650
wined3d: Make some lookup tables const.
2010-08-23 12:04:36 +02:00
Henri Verbeet
8292c687d8
wined3d: Get rid of the now redundant SFLAG_SWAPCHAIN surface flag.
2010-08-17 11:55:32 +02:00
Henri Verbeet
0b24db5db5
wined3d: Also store the subresource container type.
2010-08-17 11:55:32 +02:00
Henri Verbeet
61db577a4b
wined3d: Remove SetContainer() from the public IWineD3DSurface interface.
2010-08-17 11:55:32 +02:00
Matteo Bruni
20f51c29a9
wined3d: Setup target if offscreen rendering setting changed.
2010-07-26 18:38:33 +02:00
Henri Verbeet
943fb2fb57
wined3d: Do RGB <=> sRGB transfers using FBO blits.
...
Concept based on a patch by Stefan.
2010-07-26 18:38:31 +02:00
Henri Verbeet
3d8ff7f27a
wined3d: Framebuffer blits are affected by the color mask.
2010-07-22 10:13:36 +02:00
Henri Verbeet
f7760656f3
wined3d: Remove LoadLocation() from the public wined3d surface interface.
2010-07-22 10:13:24 +02:00
Henri Verbeet
147f24dd78
wined3d: Remove ModifyLocation() from the public wined3d surface interface.
2010-07-22 10:13:13 +02:00
Henri Verbeet
1b5cc39a86
wined3d: Get rid of some dead code.
2010-06-01 11:03:56 +02:00
Dan Kegel
f99e1d80e2
wined3d: Fix size of buffer in swapchain_create_context_for_thread().
2010-05-31 12:46:08 +02:00
Henri Verbeet
e8ac9bbd7f
wined3d: Get rid of GLINFO_LOCATION.
2010-05-25 13:29:00 +02:00
Henri Verbeet
bcc4603125
wined3d: Set the swapchain.c GLINFO_LOCATION to *gl_info.
2010-05-24 11:31:25 +02:00
Henri Verbeet
7bec8e1dcb
wined3d: Correctly translate between coordinate systems in swapchain_blit().
2010-05-18 18:42:09 +02:00
Henri Verbeet
7a2debe113
wined3d: Use the FBO cache in swapchain_blit().
2010-05-06 14:17:30 +02:00
Stefan Dösinger
ec3d2ba316
wined3d: Fall back to other depth stencil formats if D24S8 isn't supported.
2010-05-04 13:15:00 +02:00
Henri Verbeet
49e076eabd
wined3d: Separate context acquisition and state application.
2010-05-04 13:14:59 +02:00
Henri Verbeet
f09b8e454d
wined3d: Avoid some needless depth buffer copies.
...
If an application switches between render targets of a different size, but
with the same depth/stencil surface it'll typically clear the depth/stencil
surface before drawing. However, in case of the smaller render target that
wouldn't be a full clear, so we'd have to do a depth copy if we also switched
between onscreen and offscreen rendering. Keeping track of which part of the
depth/stencil surface is current for onscreen/offscreen allows us to avoid
most of these kinds of copies. The current scheme requires the current/dirty
rectangle to have an origin at (0,0). This could be extended to an arbitrary
rectangle, but the bookkeeping becomes somewhat more complex in that case, and
it's not clear that there would be much of a benefit at this point.
2010-04-29 10:19:39 -05:00
Henri Verbeet
d977e91b11
wined3d: Store back buffer surfaces as IWineD3DSurfaceImpl pointers in the swapchain.
2010-04-27 12:02:14 -05:00
Henri Verbeet
62acb2fdbc
wined3d: Store the front buffer surface as an IWineD3DSurfaceImpl pointer in the swapchain.
2010-04-27 12:01:59 -05:00