Henri Verbeet
a2ef014342
wined3d: Merge the IWineD3DSurface::Release() implementations.
2011-04-27 11:50:41 +02:00
Henri Verbeet
d9ace3c9f7
wined3d: Only invalidate the INDRAWABLE location for onscreen surfaces in surface_realize_palette().
...
For offscreen surfaces this might actually remove the texture we just loaded.
2011-04-27 11:50:35 +02:00
Henri Verbeet
a05841bd1a
wined3d: Rename "pCaps" to "caps".
2011-04-27 11:50:29 +02:00
Henri Verbeet
3f0120241b
wined3d: Enable SM3 if ARB_shader_texture_lod is supported.
2011-04-26 10:46:52 +02:00
Henri Verbeet
9d0e17e9ea
wined3d: Either set SM3 for both vertex and fragment shaders or for neither.
2011-04-26 10:46:45 +02:00
Henri Verbeet
f63a84be61
wined3d: Merge surface_base.c into surface.c.
2011-04-26 10:46:40 +02:00
Henri Verbeet
11d44809bb
wined3d: Remove IWineD3DSurface::PrivateSetup() from the public interface.
2011-04-26 10:46:23 +02:00
Stefan Dösinger
dbc8702e44
wined3d: Scale the depthbias factor by the depth buffer's depth.
2011-04-22 17:51:29 +02:00
Stefan Dösinger
96b758f7b3
d3d: Map D3DRS_ZBIAS to WINED3DRS_DEPTHBIAS.
...
ZBIAS was removed in d3d9 and replaced with DEPTHBIAS. Currently
wined3d implements both independently which will cause trouble if we
want to set the depthbias value depending on the depth stencil format.
2011-04-22 17:51:29 +02:00
Henri Verbeet
c852200b03
wined3d: Get rid of IWineD3DSurface::GetType().
2011-04-22 10:44:28 +02:00
Henri Verbeet
cc39bde98d
wined3d: Get rid of wined3d_volume_get_type().
2011-04-22 10:44:23 +02:00
Henri Verbeet
efc080e3a3
wined3d: Get rid of wined3d_buffer_get_type().
2011-04-22 10:44:20 +02:00
Henri Verbeet
82e39ced7f
wined3d: Make sure we release the correct DC in context_update_window().
2011-04-22 10:44:16 +02:00
Henri Verbeet
f6e4f4a122
wined3d: Get rid of the mipmap hint code.
...
Mipmap hint isn't a texture parameter, but a global hint. This never worked,
it just causes GL errors.
2011-04-21 16:53:41 +02:00
Matteo Bruni
a3c12c5be4
wined3d: Fallback to our private window when context activation fails otherwise.
2011-04-20 16:31:48 +02:00
Matteo Bruni
edebabc2ec
wined3d: Add two functions for GL context activation/restore.
2011-04-20 16:31:45 +02:00
Henri Verbeet
0de0e81793
wined3d: Decrement the vertex declaration refcount on stateblock destruction.
2011-04-20 13:06:35 +02:00
Henri Verbeet
e30a057487
wined3d: Don't bother unsetting texture resources in IWineD3DDeviceImpl_Uninit3D().
...
Releasing the stateblock already takes care of this.
2011-04-19 13:29:36 +02:00
Henri Verbeet
4651746102
wined3d: Set resource bindings to NULL before releasing them on stateblock destruction.
...
To prevent ERRs from device_resource_released().
2011-04-19 13:29:32 +02:00
Henri Verbeet
516ade9b2b
wined3d: Also update ds_current_size if there's no current DS location in surface_load_ds_location().
2011-04-19 13:29:28 +02:00
Henri Verbeet
84d50f7353
wined3d: Remove IWineD3DSurface::GetImplType() from the public interface.
2011-04-18 11:45:55 +02:00
Henri Verbeet
52edf556f6
wined3d: Merge surface_gdi.c into surface.c.
2011-04-18 11:45:51 +02:00
Henri Verbeet
38800d8e9a
wined3d: Forward volume refcounts to the container.
2011-04-18 11:45:20 +02:00
Henri Verbeet
fadfdf21c0
wined3d: Forward surface refcounts to the container.
...
This will prevent textures from being released if one of its surfaces is still
in use by the stateblock. We have similar constructions in d3d8 and d3d9, but
those won't prevent the wined3d texture from being released.
2011-04-18 11:45:17 +02:00
Henri Verbeet
a5983e0c3d
wined3d: Use the correct mask for depth/stencil locations in surface_load_ds_location().
2011-04-18 11:45:09 +02:00
Henri Verbeet
6a135a1511
wined3d: Get rid of the IWineD3DBase interface.
2011-04-15 10:07:58 +02:00
Henri Verbeet
7b8bbdcc44
wined3d: Get rid of the IWineD3DResource interface.
2011-04-15 10:07:58 +02:00
Henri Verbeet
66875c6dc7
wined3d: Don't flush just because a swapchain has multiple contexts.
...
If you really have e.g. multiple draws to the same drawable, this is not
enough, and you should use the StrictDrawOrdering registry setting. In the
other cases it just slows things down unnecessarily.
2011-04-15 10:07:58 +02:00
Henri Verbeet
89a4e696a2
wined3d: Get rid of the IWineD3DVolume typedefs.
2011-04-15 10:07:58 +02:00
Henri Verbeet
2c450571e5
wined3d: Remove COM from the volume implementation.
2011-04-15 10:07:57 +02:00
Henri Verbeet
be378c6529
wined3d: Decrement the refcount in wined3d_query_decref().
2011-04-14 17:13:57 +02:00
Henri Verbeet
c1575cb65c
wined3d: Get rid of the unused vSyncCounter swapchain field.
2011-04-14 17:13:57 +02:00
Henri Verbeet
d30da7ae39
wined3d: Get rid of the IWineD3DSwapChain typedefs.
2011-04-14 17:13:57 +02:00
Henri Verbeet
3ec19590d5
wined3d: Remove COM from the swapchain implementation.
2011-04-14 17:13:57 +02:00
Henri Verbeet
178061d3c1
wined3d: Merge the GL and GDI swapchain vtbls.
2011-04-14 17:13:56 +02:00
Stefan Dösinger
c79864f871
wined3d: Only acquire a context in buffer::PreLoad if we have to.
2011-04-13 16:03:27 +02:00
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
d2e665230a
wined3d: Get rid of the swapchain destroy callback.
2011-04-13 14:13:51 +02:00
Stefan Dösinger
5627ee49ea
wined3d: Remove FLOAT16 vertex attribute conversion support.
...
All mayor drivers support GL_ARB_half_float_vertex now and the half
float conversion doesn't work well in practise. The only game that was
ever playable with it was Eve online.
2011-04-12 17:42:12 +02:00
Stefan Dösinger
46d879eef6
wined3d: Don't drop VBOs for full buffer reloading without conversion.
2011-04-12 17:42:12 +02:00
Henri Verbeet
17c51d49b7
wined3d: Flush after accessing the front buffer in flush_to_framebuffer_drawpixels().
2011-04-11 23:54:09 +02:00
Henri Verbeet
55e957a31a
wined3d: Flush after accessing the front buffer in surface_blt_fbo().
2011-04-11 23:54:05 +02:00
Henri Verbeet
68c4a1b61a
wined3d: Depth-only clears are done offscreen.
...
This fixes a regression introduced by commit
99bfd81714
.
2011-04-11 23:54:01 +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
8e12b2e61e
wined3d: Set the read buffer to GL_NONE for draws and clears on an FBO.
...
For the benefit of depth-only draws and clears, that would otherwise fail FBO
completeness, unless the driver supports ARB_ES2_compatibility.
2011-04-11 11:50:48 +02:00
Henri Verbeet
2f3c147ab2
wined3d: Only set draw buffers that are explicitly specified in context_apply_draw_buffers().
...
Anything that isn't explicitly specified is set to GL_NONE by
glDrawBuffersARB().
2011-04-11 11:50:44 +02:00
Henri Verbeet
bf99c0248f
wined3d: Explicitly handle 0 rt_count right at the start of context_apply_draw_buffers().
...
It's trivial, and allows the rest of the code to assume at least 1 render
target is present.
2011-04-11 11:50:40 +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