Henri Verbeet
4f651808fc
wined3d: Disallow empty surfaces.
2010-11-18 12:37:36 +01:00
Henri Verbeet
faba8d734d
wined3d: Send a notification that the GL texture changed in flip_surface().
...
Strictly speaking the texture doesn't get unloaded, but it does get associated
with a different surface. The FBO cache in particular is much happier when it
gets notified of these.
2010-11-17 14:01:14 +01:00
Henri Verbeet
4dc28005eb
wined3d: Remove a redundant flag in IWineD3DSurfaceImpl_SetMem().
2010-11-16 13:48:42 +01:00
Henri Verbeet
745126b05d
wined3d: Properly recreate the sysmem resource location in IWineD3DSurfaceImpl_SetMem().
...
Otherwise we could end up with surfaces that have SFLAG_INSYSMEM set, but no
actual system memory allocated. This was exposed by
3bbe658ef1
.
2010-11-15 15:04:41 +01:00
Henri Verbeet
44b9712cd6
wined3d: Add a trace to IWineD3DSurfaceImpl_SetMem().
2010-11-15 15:04:36 +01:00
Henri Verbeet
60b5dc04b7
wined3d: Rename the IWineD3DPaletteImpl "Flags" field to "flags".
2010-11-15 15:04:32 +01:00
Henri Verbeet
efb185dcd5
wined3d: Rename the wined3d_format "Flags" field to "flags".
2010-11-12 15:43:08 +01:00
Henri Verbeet
027fdb31c2
wined3d: Rename the IWineD3DSurfaceImpl "Flags" field to "flags".
2010-11-12 15:43:07 +01:00
Henri Verbeet
a59ee29dec
wined3d: Simplify a condition in IWineD3DSurfaceImpl_LoadTexture().
2010-11-12 15:43:07 +01:00
Henri Verbeet
4bd1f04fbd
wined3d: Check for depth/stencil surfaces in general in IWineD3DSurfaceImpl_Unmap().
...
Instead of just the current one.
2010-11-12 15:43:07 +01:00
Henri Verbeet
db013ed213
wined3d: Avoid marking samplers dirty in IWineD3DSurfaceImpl_Unmap().
...
Resources are explicitly loaded in context_apply_draw_state() when needed, the
resource location management takes care of all of this.
2010-11-12 15:43:07 +01:00
Henri Verbeet
3bbe658ef1
wined3d: Remove some useless code.
2010-11-11 13:11:37 +01:00
Henri Verbeet
78abb8ae07
wined3d: Simply use surface_modify_location() in IWineD3DSurfaceImpl_Map() with WINED3DLOCK_DISCARD.
...
The call to surface_add_dirty_rect() would have taken care of evicting the
other locations anyway, but we really shouldn't be touching the location flags
directly.
2010-11-11 13:11:34 +01:00
Henri Verbeet
d3fd7b247b
wined3d: Handle rendertargetlock_mode in surface_load_location().
2010-11-11 13:11:30 +01:00
Henri Verbeet
8e059205ba
wined3d: Translate drawable coordinates in flush_to_framebuffer_drawpixels().
2010-11-02 13:17:35 +01:00
Henri Verbeet
3f0d16c5bf
wined3d: Do not use "lockedRect" unless the surface is locked in flush_to_framebuffer_drawpixels().
2010-11-02 13:17:31 +01:00
Henri Verbeet
e35b6aa1a7
wined3d: Change surface_translate_frontbuffer_coords() to handle all drawable coordinates.
2010-11-01 13:34:43 +01:00
Henri Verbeet
27bf4c3747
wined3d: Remove some redundant state save/restore code from flush_to_framebuffer_drawpixels().
2010-10-29 14:33:57 +02:00
Henri Verbeet
7414ebc975
wined3d: Don't flip the coordinate system in set_blit_dimension().
2010-10-29 14:33:57 +02:00
Henri Verbeet
2b58f80c27
wined3d: Use surface_blt_to_drawable() in IWineD3DSurfaceImpl_BltOverride().
2010-10-21 16:15:31 +02:00
Henri Verbeet
574169174e
wined3d: Check if we can do the blit before messing with surface flags in IWineD3DSurfaceImpl_BltOverride().
...
As an added benefit blit_supported() will now get the rectangles in the
correct coordinate system.
2010-10-21 16:15:25 +02:00
Henri Verbeet
1237e8065e
wined3d: Properly flip in surface_blt_to_drawable().
...
We want to flip the coordinate system, not just the rectangle.
2010-10-19 13:50:13 +02:00
Henri Verbeet
8a96a8cc1f
wined3d: Always pass a valid rectangle to surface_get_blt_info().
2010-10-19 13:50:09 +02:00
Henri Verbeet
ca381b610c
wined3d: Allow FBO blits again between surfaces with fixups if they have the same format.
...
For some reason f1ca14cb5b
disabled this.
2010-10-19 13:50:01 +02:00
Henri Verbeet
1fa3365832
wined3d: Flip destination coordinates when blitting to an offscreen target in BltOverride().
2010-10-15 16:19:50 +02:00
Henri Verbeet
95469309d6
wined3d: Consistently use Map/Unmap for mapping resources.
2010-10-14 17:54:52 +02:00
Henri Verbeet
b68d257710
wined3d: Get rid of redundant comparisons against NULL / 0.
2010-09-14 09:43:33 -05:00
Henri Verbeet
8fbf23f0cc
wined3d: Don't overwrite the offscreen depth/stencil surface with undefined data in surface_load_ds_location().
2010-09-06 16:14:26 +02:00
Henri Verbeet
8e0cb60b09
wined3d: Do not call device_switch_onscreen_ds() while under the GL lock.
2010-09-06 16:14:18 +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
4005eb2a18
wined3d: Get rid of WINED3DRECT.
2010-08-31 14:23:47 +02:00
Henri Verbeet
1bf25cfe3f
wined3d: Use debug_surflocation() in surface_load_location().
2010-08-31 14:23:46 +02:00
Henri Verbeet
c689280beb
wined3d: Use surface_color_fill() in IWineD3DDeviceImpl_ColorFill().
2010-08-30 11:26:45 +02:00
Henri Verbeet
ecc67757ab
wined3d: Introduce surface_color_fill().
...
This is also a first attempt at a more structured interface to blitter
operations.
2010-08-30 11:26:45 +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
42b814c7d1
wined3d: Remove the GetContainer() methods from the public wined3d interface.
...
There's nothing left that uses these.
2010-08-26 12:41:39 +02:00
Henri Verbeet
22428d97e1
wined3d: Don't set a NULL container of type WINED3D_CONTAINER_TEXTURE.
...
Any container type other than WINED3D_CONTAINER_NONE implies a valid pointer
of the specified type. This fixes a regression introduced by
368e5eb87a
.
2010-08-26 12:41:34 +02:00
Henri Verbeet
87e12b8b6a
wined3d: Introduce a local variable for gl_info in IWineD3DSurfaceImpl_BltOverride().
2010-08-25 11:57:12 +02:00
Henri Verbeet
cc5271d1b7
wined3d: Rename WINED3DFORMAT to wined3d_format_id.
2010-08-24 12:25:01 +02:00
Henri Verbeet
50b5955288
wined3d: Use floating point colors in the blitter's color_fill functions.
2010-08-24 12:24:39 +02:00
Henri Verbeet
9956ea7044
wined3d: Convert from floating point to specific surface formats.
...
Instead of from WINED3DFMT_B8G8R8A8_UNORM.
2010-08-24 12:24:33 +02:00
Henri Verbeet
a455a918c1
wined3d: Explicitly pass the draw rect to device_clear_render_targets().
...
For regular clears this is the intersection of the viewport and scissor
rectangles, but color fills shouldn't be affected by those.
2010-08-24 12:24:28 +02:00
Henri Verbeet
b93a9b37fa
wined3d: Pass a WINED3DCOLORVALUE structure to IWineD3DDeviceImpl_ClearRendertargetView().
...
The structure is nicer to work with than the array.
2010-08-23 12:05:24 +02:00
Henri Verbeet
910d3022c3
wined3d: Do not release a reference we do not have in IWineD3DSurfaceImpl_Flip().
...
This fixes a regression introduced by 368e5eb87a
.
2010-08-20 14:11:10 +02:00
Henri Verbeet
f06b22a537
wined3d: Add a TRACE to IWineD3DSurfaceImpl_LoadTexture().
2010-08-18 09:39:42 +02:00
Henri Verbeet
368e5eb87a
wined3d: Avoid IWineD3DSurface_GetContainer().
2010-08-17 11:55:32 +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