Commit Graph

644 Commits

Author SHA1 Message Date
Henri Verbeet b09b7e323c wined3d: Store a pointer to the state table in the context. 2011-07-25 11:59:15 +02:00
Henri Verbeet dd2f2c40f0 wined3d: Get rid of the useext macro.
This does nothing, since we have our own GL header.
2011-07-15 10:08:14 +02:00
Henri Verbeet 7ee4bda63e wined3d: Add stream offsets in device_stream_info_from_declaration().
They're not going to change until the next time the stream info is updated.
This would of course mainly be useful if we managed to do more than one or two
draws with the same stream info.
2011-07-15 10:08:02 +02:00
Henri Verbeet e4d2d78500 wined3d: Pass a wined3d_state pointer to state handlers.
Instead of an entire stateblock. This is mainly useful is we ever want to call
state handlers on state not stored in a stateblock.
2011-07-14 14:11:25 +02:00
Henri Verbeet 565fcbdfb8 wined3d: Get rid of the clip status code.
I'm pretty sure this is just broken, and I'm not aware of any application
using this.
2011-07-14 14:11:18 +02:00
Henri Verbeet 5e83efa1b2 wined3d: Remove the unused untransformed field from struct wined3d_device. 2011-07-14 14:11:11 +02:00
Henri Verbeet fcf4303e1a wined3d: Store a pointer to the framebuffer state in struct wined3d_state. 2011-07-14 14:11:07 +02:00
Henri Verbeet 475225c275 wined3d: Pass a state pointer instead of a stateblock to loadVertexData(). 2011-07-13 11:52:04 +02:00
Henri Verbeet 534151a79b wined3d: Pass a state pointer instead of a stateblock to loadTexCoords(). 2011-07-13 11:51:58 +02:00
Henri Verbeet 3d28cdb691 wined3d: Pass a state pointer instead of a stateblock to loadNumberedArrays(). 2011-07-13 11:51:55 +02:00
Henri Verbeet c5d457c8b4 wined3d: Store a struct wined3d_bo_address in struct wined3d_stream_info_element.
Instead of using separate fields for the buffer object and offset.
2011-07-11 11:53:42 +02:00
Stefan Dösinger d321959dd7 wined3d: Move FBO application into a state handler. 2011-07-05 17:33:35 +02:00
Henri Verbeet ddc29c40e6 wined3d: Make D3DRS_ZBIAS work.
D3DRS_ZBIAS is poorly defined, but it makes sense that the bias should be
format independent. Looking at application behaviour, it seems to include a
slope scale factor as well. This fixes a couple of regressions introduced by
96b758f7b3, although it was broken before as
well, just in a different way.
2011-07-05 13:46:07 +02:00
Stefan Dösinger a27adc478a wined3d: Update the vertex shader when the clipplanes are changed. 2011-06-28 11:57:51 -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
Henri Verbeet 233b8e1cf8 wined3d: Fix the STATE_BASEVERTEXINDEX state entry. 2011-06-21 11:25:15 +02:00
Henri Verbeet 265e62378f wined3d: Validate STATE_BASEVERTEXINDEX in validate_state_table(). 2011-06-21 11:25:13 +02:00
Stefan Dösinger 73cec67c14 wined3d: Link STATE_BASEVERTEXINDEX to STATE_VDECL. 2011-06-20 19:32:02 +02:00
Stefan Dösinger dafd31861a wined3d: Use GL_ARB_draw_elements_base_vertex if available. 2011-06-14 13:43:56 +02:00
Henri Verbeet 708d94212b wined3d: Don't clamp vertex depth values.
Since we report D3DPMISCCAPS_CLIPTLVERTS.
2011-06-06 16:18:33 +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 aba42d1fa5 wined3d: Introduce a separate structure for framebuffer state. 2011-05-19 10:07:57 +02:00
Stefan Dösinger 5c6c019340 wined3d: Remove maxConcurrentLights from the device. 2011-05-18 16:41:57 +02:00
Henri Verbeet 0e0e5c3e38 wined3d: Get rid of the IWineD3DDevice typedefs. 2011-05-17 10:06:23 +02:00
Francois Gouget 5920de5ffb Assorted spelling and case fixes. 2011-05-09 12:09:27 +02:00
Henri Verbeet 493af7e5c1 wined3d: Introduce a helper function for translating blend factors. 2011-05-06 14:23:46 +02:00
Henri Verbeet c4b73c4550 wined3d: Get rid of the IWineD3DSurface typedefs. 2011-04-29 16:52:13 +02:00
Henri Verbeet a05841bd1a wined3d: Rename "pCaps" to "caps". 2011-04-27 11:50:29 +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
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
Henri Verbeet ae58e47ca0 wined3d: Introduce a helper function for translating blend operations. 2011-04-04 11:53:50 +02:00
Henri Verbeet 97a5336ca9 wined3d: Fix the EXT_blend_subtract extension definitions. 2011-03-31 23:46:51 +02:00
Henri Verbeet e4e28c47ea wined3d: Fix the EXT_blend_color extension definitions. 2011-03-31 23:43:14 +02:00
Henri Verbeet f8507d6061 wined3d: Fix the EXT_blend_minmax extension definitions. 2011-03-31 23:43:05 +02:00
Henri Verbeet 8fe80e18b2 wined3d: Get rid of the IWineD3DBaseShader typedefs. 2011-03-31 12:37:47 +02:00
Henri Verbeet 5555d904be wined3d: Get rid of IWineD3DBaseShaderClass. 2011-03-31 12:37:46 +02:00
Henri Verbeet 99bed5d41d wined3d: Get rid of IWineD3DPixelShaderImpl. 2011-03-30 12:18:20 +02:00
Henri Verbeet 0e22aea01e wined3d: Replace "pow2_matrix_identity" in wined3d_texture with a flag. 2011-03-29 12:34:49 +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
Henri Verbeet ac9c592ca9 wined3d: Store all the resource desc information in struct wined3d_resource. 2011-03-09 12:29:17 +01:00
Henri Verbeet af0a4b6956 wined3d: Pass gl_info to basetexture_bind(). 2011-03-03 17:47:14 +01:00
Henri Verbeet 1de6adfbae wined3d: Make IWineD3DResourceImpl an independent structure. 2011-03-01 13:21:59 +01:00
Matteo Bruni 75386a99b4 wined3d: Make clip planes independent from offscreen/onscreen drawing. 2011-02-15 17:24:26 +01:00
Henri Verbeet 96d225d4dd wined3d: Get rid of the IWineD3DStateBlockImpl typedef. 2011-01-31 12:25:05 +01:00
Matteo Bruni ef0f358813 wined3d: Don't call glPointParameter with a random context. 2011-01-07 15:01:38 +01:00
Henri Verbeet d72520b5cc wined3d: Remove IWineD3DBaseTexture::BindTexture() from the public interface. 2011-01-05 17:22:01 +01:00
Henri Verbeet a2c81adae1 wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_apply_state_changes(). 2011-01-04 11:09:49 +01:00
Henri Verbeet a4477fea4a wined3d: Pass an IWineD3DDeviceImpl pointer to free_private(). 2010-12-02 11:54:15 +01:00
Henri Verbeet 6b9118e462 wined3d: Pass an IWineD3DDeviceImpl pointer to alloc_private(). 2010-12-02 11:54:10 +01:00
Henri Verbeet 00550613e7 wined3d: Remove a redundant parameter to enable_extension(). 2010-12-02 11:54:03 +01:00
Henri Verbeet efb185dcd5 wined3d: Rename the wined3d_format "Flags" field to "flags". 2010-11-12 15:43:08 +01:00
Michael Stefaniuc 1183383a6f wined3d: Fix some checkGLcall() messages. 2010-11-05 17:15:34 +01:00
Stefan Dösinger f89fdb4429 wined3d: Don't reapply lighting when vertex shaders are used.
If a vertex shader is used the GL_LIGHTING state is ignored. If the
shader is turned off state_vdecl is called anyway, so it will adjust the
lighting state to match the available fixed function vertex attributes.
2010-11-01 11:43:45 +01:00
Stefan Dösinger 5082c57e77 wined3d: Don't pass the texture stages to basetexture_apply_state_changes. 2010-11-01 11:43:35 +01:00
Henri Verbeet 1b2f9d29d7 wined3d: Get rid of the posFixup field from the device. 2010-10-26 11:58:12 +02:00
Henri Verbeet 5ef7a8c242 wined3d: Explicitly pass parameters to shader_load_np2fixup_constants(). 2010-10-25 14:29:37 +02:00
Henri Verbeet a7ded9a67d wined3d: Pass a wined3d_state structure to use_ps(). 2010-09-28 17:33:17 +02:00
Henri Verbeet 9224751a13 wined3d: Pass a wined3d_state structure to use_vs(). 2010-09-28 17:33:17 +02:00
Henri Verbeet 5013ec83de wined3d: Consistently use the same stateblock in state_colormat().
These should refer to the same stateblock when we're drawing, but it's still
ugly.
2010-09-24 11:34:15 +02:00
Henri Verbeet 23e286613f wined3d: Directly pass the texture to texture_activate_dimensions(). 2010-09-24 11:34:14 +02:00
Henri Verbeet 67b7a573b9 wined3d: Pass a wined3d_state structure to set_tex_op(). 2010-09-24 11:34:14 +02:00
Henri Verbeet 578df29b9f wined3d: Pass a wined3d_state structure to set_tex_op_nvrc(). 2010-09-23 12:06:31 +02:00
Henri Verbeet 478a0aae38 wined3d: Pass a wined3d_state structure to is_invalid_op().
Instead of an entire device.
2010-09-23 12:06:27 +02:00
Henri Verbeet f870cf07e8 wined3d: Move clip status to wined3d_state. 2010-09-22 12:41:22 +02:00
Henri Verbeet 9ce3c61a41 wined3d: Move clip plane state to wined3d_state. 2010-09-22 12:41:18 +02:00
Henri Verbeet 4546a13d98 wined3d: Move light state to wined3d_state. 2010-09-22 12:41:13 +02:00
Henri Verbeet 98a91e84bc wined3d: Move base vertex state to wined3d_state. 2010-09-21 14:17:07 +02:00
Henri Verbeet 902630efb5 wined3d: Move index buffer state to wined3d_state. 2010-09-21 14:17:03 +02:00
Henri Verbeet 153d8d43aa wined3d: Move stream state to wined3d_state. 2010-09-21 14:16:58 +02:00
Henri Verbeet 33dfb9539c wined3d: Move the pixel shader to wined3d_state. 2010-09-20 13:48:13 +02:00
Henri Verbeet d728d5f0ec wined3d: Move texture bindings to wined3d_state. 2010-09-18 13:05:49 +02:00
Henri Verbeet 5a3a4ac77a wined3d: Remove IWineD3DBaseTexture::GetTextureDimensions() from the public wined3d interface. 2010-09-18 13:05:44 +02:00
Ričardas Barkauskas dc1356484c wined3d: Add NVDB support. 2010-09-16 10:12:33 -05:00
Henri Verbeet 8fdfc736bf wined3d: Move sampler states to wined3d_state. 2010-09-16 10:12:24 -05:00
Henri Verbeet 5b3c1a2082 wined3d: Move texture states to wined3d_state. 2010-09-16 10:12:17 -05:00
Henri Verbeet 597da9907a wined3d: Move transforms to wined3d_state. 2010-09-16 10:12:06 -05:00
Henri Verbeet 5f6ced2767 wined3d: Move the material to wined3d_state. 2010-09-16 10:11:57 -05:00
Henri Verbeet 16d9c91b97 wined3d: Move the viewport to wined3d_state. 2010-09-15 10:33:26 -05:00
Henri Verbeet 937eb7e600 wined3d: Move the scissor rect to wined3d_state. 2010-09-15 10:33:20 -05:00
Henri Verbeet 1ef4f075c1 wined3d: Introduce a separate structure for stateblock states.
We'd like to not pass an entire stateblock to things like state handlers and
the shader backend, because those then use the stateblock to get to the
device and through there to all the rest of wined3d. This would also be
required for serialization of wined3d draw and state change commands into a
single GL context. Resource updates would be explicitly excluded from
serialization.
2010-09-15 10:33:14 -05:00
Henri Verbeet 6ce848bee4 wined3d: Introduce a structure for stream state. 2010-09-14 11:43:54 -05:00
Henri Verbeet b68d257710 wined3d: Get rid of redundant comparisons against NULL / 0. 2010-09-14 09:43:33 -05:00
Joris Huizer 2fd50cb4b8 wined3d: Fix typo in checkGLcall. 2010-09-09 12:45:30 +02:00
Henri Verbeet 952dfe30be wined3d: Translate before scaling for rhw as well in transform_projection(). 2010-09-06 16:14:22 +02:00
Henri Verbeet 3a7f08a56f wined3d: Rename wined3d_format_desc to wined3d_format. 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
Stefan Dösinger 515eb3d7c4 wined3d: MSVC fixes in state.c. 2010-08-02 12:55:23 +02:00
Henri Verbeet c411b45da9 wined3d: Use a more consistent name for the normalized texrect "extension". 2010-07-21 09:33:18 +02:00
Henri Verbeet e8ac9bbd7f wined3d: Get rid of GLINFO_LOCATION. 2010-05-25 13:29:00 +02:00
Henri Verbeet b5cec57690 wined3d: Set the state.c GLINFO_LOCATION to *gl_info. 2010-05-25 13:28:14 +02:00
Michael Stefaniuc 6d89364ad1 wined3d: Avoid using the long type. 2010-05-21 18:58:04 +02:00
Henri Verbeet 5dff410254 wined3d: Explicitly pass GL info to buffer_get_sysmem(). 2010-05-21 14:37:52 +02:00
Henri Verbeet d5b68e7640 wined3d: Make sure all fields of the fragment pipe caps are always initialized. 2010-05-03 13:50:45 +02:00
Henri Verbeet 958b523707 wined3d: Store texture sub-resources in IWineD3DBaseTextureClass. 2010-04-25 07:26:51 -05:00
Henri Verbeet c5de1e1045 wined3d: Store the depth/stencil surface as an IWineD3DSurfaceImpl pointer in the device. 2010-04-20 11:14:42 +02:00
Henri Verbeet c7a1848656 wined3d: Store render targets as IWineD3DSurfaceImpl pointers in the device. 2010-04-20 11:14:30 +02:00
Henri Verbeet 43e89cb981 wined3d: Prune unsupported world matrix transform states. 2010-04-13 21:13:54 +02:00