Henri Verbeet
560d5188b7
wined3d: Make the rts and ds parameters to context_validate_rt_config() const.
2011-06-28 10:18:30 -05:00
Henri Verbeet
64bf19d07b
wined3d: Make the generate_rt_mask_no_fbo() parameters const.
2011-06-28 10:18:26 -05:00
Henri Verbeet
b9721600dc
wined3d: Make the target parameter to generate_rt_mask_from_surface() const.
2011-06-28 10:18:20 -05:00
Henri Verbeet
4725d4bb99
wined3d: Make the depth_stencil parameter to context_validate_onscreen_formats() const.
2011-06-28 10:18:15 -05:00
Stefan Dösinger
5e97e22951
wined3d: Separate stream sources and vertex declaration.
...
Changing the stream sources does not require a reapplication of the
vertex declaration. Even setting a NULL vertex buffer doesn't make
attributes disappear - it just causes a segfault on Windows.
2011-06-27 16:43:24 -05:00
Stefan Dösinger
9ed6dc9144
wined3d: Don't set FBO attachment filtering to GL_NEAREST.
...
The min and mag filters should not have any effect when rendering to
textures. This code was once needed to work around a bug in the Nvidia
driver. Changing the texture filter states is expensive and makes it
harder to apply the FBO state only when needed.
2011-06-27 16:43:08 -05:00
Henri Verbeet
c4da128b8f
wined3d: Make the device and target parameters to FindContext() const.
2011-06-23 09:47:34 +02:00
Matteo Bruni
32787ec0dd
wined3d: Fix draw buffers tracking.
2011-06-22 15:21:43 +02:00
Matteo Bruni
0919ac3b51
wined3d: Fix context_apply_draw_buffers() with backbuffer ORM.
2011-06-22 15:21:36 +02:00
Matteo Bruni
5b67bd4fb2
wined3d: Fix context_apply_blit_state().
2011-06-22 15:21:27 +02:00
Stefan Dösinger
663fac5bcd
wined3d: Set last_was_blit to FALSE in the if condition that checks for it.
2011-06-10 10:45:38 +02:00
Stefan Dösinger
7b39005256
wined3d: Don't check the FBO status if FIXMEs are off.
2011-06-10 10:45:35 +02:00
Matteo Bruni
c23a5443c1
wined3d: Simplify context_apply_draw_buffers() a bit.
2011-06-07 18:12:03 +02:00
Matteo Bruni
002674e49d
wined3d: Fix glDrawBuffers() optimization.
2011-06-07 18:12:01 +02:00
Henri Verbeet
84ce0020f4
wined3d: Rename Context_MarkStateDirty() to context_invalidate_state().
2011-06-06 16:18:48 +02:00
Henri Verbeet
c8f26a1345
wined3d: Rename IWineD3DDeviceImpl_MarkStateDirty() to device_invalidate_state().
2011-06-06 16:18:41 +02:00
Stefan Dösinger
5b9daccc66
wined3d: Call context_apply_draw_buffers under the GL lock.
2011-05-27 17:53:37 +02:00
Stefan Dösinger
dda91ac02a
wined3d: Call frag_pipe->enable_extension under the GL lock.
2011-05-26 16:41:14 +02:00
Henri Verbeet
019f6a8534
wined3d: Mask out writes to unused render targets.
...
Outputs not written by the pixel shader are undefined in GL, but in D3D the
render target is unmodified.
2011-05-25 11:49:23 +02:00
Henri Verbeet
6d31039034
wined3d: Rename IWineD3DDeviceImpl_FindTexUnitMap() to device_update_tex_unit_map().
2011-05-25 11:48:38 +02:00
Henri Verbeet
6d6402afef
wined3d: Get rid of the mostly unused SRGB_BOTH enum value.
2011-05-19 10:08:02 +02:00
Henri Verbeet
aba42d1fa5
wined3d: Introduce a separate structure for framebuffer state.
2011-05-19 10:07:57 +02:00
Henri Verbeet
0e0e5c3e38
wined3d: Get rid of the IWineD3DDevice typedefs.
2011-05-17 10:06:23 +02:00
Henri Verbeet
8d4ca1f815
wined3d: Remove COM from the device implementation.
2011-05-17 10:06:18 +02:00
Stefan Dösinger
20b147bfeb
wined3d: Consistently store format bitcounts in BYTEs.
2011-05-16 16:35:30 +02:00
Francois Gouget
5920de5ffb
Assorted spelling and case fixes.
2011-05-09 12:09:27 +02:00
Henri Verbeet
0cbdd10c58
wined3d: Get rid of the WineD3D_PixelFormat typedef.
2011-05-06 14:23:46 +02:00
Adam Martinson
f912e55610
wined3d: Fix an oops/crash in context_destroy_gl_resources().
...
Introduced by 96b150929b
.
2011-05-02 12:54:25 +02:00
Henri Verbeet
c4b73c4550
wined3d: Get rid of the IWineD3DSurface typedefs.
2011-04-29 16:52:13 +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
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
d30da7ae39
wined3d: Get rid of the IWineD3DSwapChain typedefs.
2011-04-14 17:13:57 +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
99bfd81714
wined3d: Allow depth and stencil clears on surfaces other than the current depth / stencil buffer.
2011-04-06 12:05:06 +02:00
Henri Verbeet
0ce17ea27e
wined3d: Don't bother setting a depth render buffer for WINED3DFMT_NULL render targets.
2011-04-05 11:13:39 +02:00
Matteo Bruni
77face22d5
wined3d: Get rid of context_validate.
...
It should not be needed anymore, now the wined3d context is implicitly
validated on GL context activation. The check itself wasn't reliable
because of some threading issues and it also brought a small performance hit.
2011-04-04 12:25:56 +02:00
Matteo Bruni
06ef87ceb1
wined3d: Better handle some instances when we can't make the required GL context current.
2011-04-01 11:50:20 +02:00
Matteo Bruni
0322114cd6
wined3d: Fix an error message.
2011-04-01 11:50:05 +02:00
Henri Verbeet
692aa004d0
wined3d: Rename "numContexts" to "context_count".
2011-03-31 12:37:47 +02:00
Henri Verbeet
c5bf96c951
wined3d: Get rid of IWineD3DBaseTextureClass.
2011-03-29 12:34:40 +02:00
Henri Verbeet
eb5bfad18d
wined3d: Get rid of the IWineD3DBaseTexture typedefs.
2011-03-28 17:08:52 +02:00
Henri Verbeet
fd8e18bd2b
wined3d: Remove COM from the texture implementation.
2011-03-28 17:08:52 +02:00
Stefan Dösinger
82f6410bfc
wined3d: Disable the depth stencil if it is smaller than the primary color buffer.
...
This way we get correct behavior if the application has depth and stencil related tests
disabled. If we attach the depth stencil GL limits the framebuffer size to the smallest
surface, making some parts of the framebuffer inaccessible.
2011-03-16 16:31:53 +01:00
Henri Verbeet
1bff3599ce
wined3d: Don't invalidate STATE_VDECL in context_set_render_offscreen().
...
This used to be invalidated to update the vertex shader position fixup
uniform, but this is handled by STATE_VIEWPORT now. Any performance impact
from this will be minimal, since in practice there are enough other things
invalidating STATE_VDECL that it's close to being invalidated for every draw
anyway.
2011-03-11 11:40:56 +01: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
75c8e9f7b4
wined3d: Use EXT_texture_sRGB_decode to avoid sRGB texture duplication.
2011-03-03 17:47:13 +01:00