Henri Verbeet
b9f4fdcc51
wined3d: Capture stateblock state from a wined3d_state structure.
2010-09-27 14:10:45 +02:00
Henri Verbeet
9f75633a4f
wined3d: Pass a wined3d_state structure to apply_lights().
2010-09-27 14:10:45 +02:00
Henri Verbeet
8b54093bbc
wined3d: Pass a wined3d_state structure to record_lights().
2010-09-27 14:10:45 +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
7dd4174e05
wined3d: Pass a wined3d_state structure to ffp_clip_emul().
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
Lauri Kenttä
0d27b6ca70
wined3d: Add check for Intel GM965/GL960 with Mesa driver.
2010-09-22 19:56:52 +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
f4df53c41a
wined3d: Move the primitive type to wined3d_state.
2010-09-22 12:41:06 +02:00
Alexandre Julliard
97c4ab23ab
wined3d: Reduce the size of a huge function that takes ages to compile.
2010-09-21 20:16:15 +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
Lauri Kenttä
602486bdb4
wined3d: Use the same card selection for both Intel Mesa and binary drivers.
2010-09-20 15:12:32 +02:00
Henri Verbeet
b37ce45d6c
wined3d: Move pixel shader constants to wined3d_state.
2010-09-20 13:48:13 +02:00
Henri Verbeet
33dfb9539c
wined3d: Move the pixel shader to wined3d_state.
2010-09-20 13:48:13 +02:00
Henri Verbeet
8a148cc7c5
wined3d: Move vertex shader constants to wined3d_state.
2010-09-20 13:48:12 +02:00
Henri Verbeet
dd4aea36c9
wined3d: Move the vertex shader to wined3d_state.
2010-09-20 13:48:12 +02:00
Roderick Colenbrander
d73370313e
wined3d: Add Radeon HD3200 to gpu table.
2010-09-20 13:48:12 +02:00
Alexandre Julliard
81b8ee863e
makefiles: Add a standard header for all makefiles to replace the common variable initializations.
2010-09-19 12:36:48 +02:00
Henri Verbeet
e31ea51bab
wined3d: Move the vertex declaration to wined3d_state.
2010-09-18 13:05:54 +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
Henri Verbeet
2e119ecd28
wined3d: Move the texture's target field to the base texture struct.
2010-09-18 13:05:36 +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
Rico Schüller
e6d52c0c8b
wined3d: Add argument check for Type to Get/SetTextureStageState().
2010-09-14 13:32:00 -05:00
Henri Verbeet
6ce848bee4
wined3d: Introduce a structure for stream state.
2010-09-14 11:43:54 -05: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
fd7c1cbf05
wined3d: IWineD3DBuffer_GetDesc() should never fail.
2010-09-14 09:43:22 -05:00
Jesse Litton
ad917d366c
wined3d: Recognize GeForce GTX 465.
2010-09-14 09:43:15 -05:00
Roderick Colenbrander
4baf7a52f0
wined3d: Move video memory override to init_driver_info.
2010-09-13 13:28:28 -05:00
Roderick Colenbrander
192e0dc433
wined3d: Store amount of video memory in gpu_description_table.
2010-09-13 13:28:15 -05:00
Roderick Colenbrander
27fb5e2d74
wined3d: Add legacy ATI cards.
2010-09-13 13:27:21 -05:00
Mikko Rasa
b46183a2b4
wined3d: Recognize GeForce GTX 460.
2010-09-09 18:03:18 +02:00
Roderick Colenbrander
a352ad2097
wined3d: Add Intel gpu and driver information.
2010-09-09 13:20:37 +02:00
Roderick Colenbrander
d79bbdca51
wined3d: Add AMD NT6x drivers.
2010-09-09 13:20:36 +02:00
Roderick Colenbrander
ae5d8698f9
wined3d: Add Nvidia NT6x driver information.
2010-09-09 13:20:36 +02:00
Joris Huizer
2fd50cb4b8
wined3d: Fix typo in checkGLcall.
2010-09-09 12:45:30 +02:00
Henri Verbeet
955858e97d
wined3d: IWineD3DVolume_GetDesc() should never fail.
2010-09-08 13:31:49 +02:00
Henri Verbeet
53183b4cf3
wined3d: IWineD3DSurface_GetDesc() should never fail.
2010-09-08 13:31:43 +02: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
Roderick Colenbrander
d7472026a0
wined3d: Return generic info for unhandled devices/drivers.
2010-09-08 13:26:04 +02:00
Henri Verbeet
07b5c4becf
wined3d: Getting the current pixel shader should never fail.
2010-09-07 11:23:31 +02:00
Henri Verbeet
0c54dfe7ba
wined3d: Getting the current vertex shader should never fail.
2010-09-07 11:23:27 +02:00
Henri Verbeet
992cb88f71
wined3d: Rename "pDesc" to "desc".
2010-09-07 11:23:20 +02:00
Henri Verbeet
8a8ad1ccd8
wined3d: Avoid a memcpy() in IWineD3DImpl_FillGLCaps().
...
And associated stack buffer.
2010-09-07 11:18:23 +02:00
Roderick Colenbrander
878dcc6d93
wined3d: Separate driver info from GPU info.
2010-09-06 20:30:25 +02: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
952dfe30be
wined3d: Translate before scaling for rhw as well in transform_projection().
2010-09-06 16:14:22 +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
6471004a8c
wined3d: Fix a silly typo.
2010-09-06 16:14:11 +02:00
Henri Verbeet
fa3a72c63a
wined3d: Add a handler for WINED3DRS_SRGBWRITEENABLE to the atifs fragment pipe.
2010-09-03 11:05:29 +02:00
Henri Verbeet
e998fffc8f
wined3d: Do not mark invalid blend matrices dirty.
2010-09-03 11:05:24 +02:00
Henri Verbeet
5a7091b8f7
wined3d: Do not preload buffers while under the GL lock in process_vertices_strided().
2010-09-03 11:05:19 +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
a8841eb1dd
wined3d: Avoid a forward declaration.
2010-09-02 11:51:12 +02:00
Octavian Voicu
f9cdd5097f
wined3d: Add missing ckey, fx, and pal directdraw caps.
2010-09-01 17:07:38 +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
b84d1ce5f7
wined3d: Clippers don't need parents.
2010-09-01 14:00:56 +02:00
Henri Verbeet
7c675b522a
wined3d: Queries don't need parents.
2010-09-01 12:40:08 +02:00
Henri Verbeet
2ef400901d
wined3d: Devices don't need parents.
2010-09-01 12:40:07 +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
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
29371bf964
wined3d: Recognize some more Radeon cards.
2010-08-31 14:23:46 +02:00
Henri Verbeet
0a28300c49
wined3d: Use surface_color_fill() in IWineD3DDeviceImpl_ClearRendertargetView().
2010-08-30 11:26: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
9363ea55ee
wined3d: Simply use context_apply_draw_buffers() in context_apply_clear_state().
2010-08-30 11:26:45 +02:00
Henri Verbeet
08101957ba
wined3d: Explicitly pass render targets to context_apply_draw_buffers().
...
This avoids the special handling for blits.
2010-08-30 11:26:45 +02:00
Henri Verbeet
3b4d9ae112
wined3d: Simplify wined3d_format_convert_from_float().
2010-08-27 11:58:26 +02:00
Henri Verbeet
38137d7ce2
wined3d: Cleanup some 2-space indentation.
2010-08-27 11:58:13 +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
2af746b96e
wined3d: Check the GLSL info log for all shaders.
2010-08-25 11:57:24 +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
0df144164b
wined3d: Pass floating point colors to IWineD3DDeviceImpl_ColorFill().
2010-08-24 12:24:43 +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
Stefan Dösinger
fad5ff478d
wined3d: Fix the wined3d_event_query_supported prototype.
2010-08-23 13:37:03 +02:00
Stefan Dösinger
79666d2b6d
wined3d: Don't return a value from a void function.
2010-08-23 13:37:03 +02:00
Stefan Dösinger
612801d3aa
wined3d: Use float functions in drawprim.c.
2010-08-23 13:37:02 +02:00
Stefan Dösinger
1d710bb4ca
wined3d: The clipplane mask and texcoords are unsigned.
2010-08-23 13:37:02 +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
3fd66bc650
wined3d: Make some lookup tables const.
2010-08-23 12:04:36 +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
6e09d7bd60
wined3d: Cleanup device_resource_released().
...
In particular, releasing a resource that's in use by the device or the
stateblock is always an internal error in either wined3d or the relevant
wined3d client library.
2010-08-18 09:41:32 +02:00
Henri Verbeet
35b9d3dbd8
wined3d: Release the previous render target only after replacing it in IWineD3DDeviceImpl_SetRenderTarget().
2010-08-18 09:41:26 +02:00
Henri Verbeet
125321d13c
wined3d: Don't print format IDs in decimal.
...
This is especially silly for FOURCC formats.
2010-08-18 09:41:07 +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
Henri Verbeet
b0fb388edb
wined3d: A volume's container is always a volume texture.
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
Henri Verbeet
89e6a60732
wined3d: Remove SetContainer() from the public IWineD3DVolume interface.
2010-08-17 11:55:32 +02:00
Matteo Bruni
b6637eb89f
wined3d: Remove isInDraw hack from context_setup_target.
...
It is conceptually wrong and actually broken too (as the comment there
said). Just remove the hack now and properly fix any regression that
may come up later by explicitely acquiring the right context where
needed (so, in surface_internal_preload and its callees).
2010-08-16 17:28:58 +02:00
Matteo Bruni
c1450356a7
wined3d: Fix context_apply_clear_state with ORM = backbuffer.
2010-08-16 17:28:58 +02:00
Matteo Bruni
e0528084b1
wined3d: Call set_render_offscreen at the end of context_setup_target.
...
This fixes a regression caused by 20f51c29a9
.
2010-08-16 17:28:57 +02:00
Henri Verbeet
a16cf58494
wined3d: Fix a couple of typos.
2010-08-16 13:47:53 +02:00
Henri Verbeet
b20df2a24c
wined3d: Round up to complete compressed blocks in IWineD3DDeviceImpl_UpdateSurface().
...
This is mostly an issue for surfaces with dimensions smaller than their
format's block width/height.
2010-08-16 13:47:49 +02:00
Henri Verbeet
d494dfb6c0
wined3d: Rename surface_calculate_size() to wined3d_format_calculate_size().
2010-08-16 13:47:42 +02:00
Henri Verbeet
6a9476b609
wined3d: Correctly calculate the resource size for ATI2N surfaces.
2010-08-16 13:47:37 +02:00
Henri Verbeet
3a36013065
wined3d: Print the correct resource location in surface_set_texture_name().
2010-08-16 13:47:33 +02:00
Henri Verbeet
81603f18d8
wined3d: Cleanup IWineD3DBaseSwapChainImpl_GetBackBuffer() a bit.
2010-08-16 13:47:28 +02:00
Henri Verbeet
e1188b0c8e
wined3d: Fix some misspellings of "surface".
2010-08-16 13:47:17 +02:00
Henri Verbeet
5f2fcfdd6b
wined3d: Reattach FBO attachments when any of the corresponding surfaces is unloaded.
2010-08-16 13:47:08 +02:00
Henri Verbeet
37c8632811
wined3d: Make some lookup tables const.
2010-08-04 13:24:24 +02:00
Henri Verbeet
2b88b2d351
wined3d: Only try to acquire a context in surface_cleanup() if there are GL resources to be destroyed.
...
The reason we're in surface_cleanup() might for example be that context
creation failed.
2010-08-04 13:24:21 +02:00
Henri Verbeet
43a86d1e56
wined3d: Cleanup Get/SetDepthStencilSurface().
2010-08-04 13:24:17 +02:00
Henri Verbeet
009cd78fa4
wined3d: Cleanup Get/SetRenderTarget().
2010-08-04 13:24:14 +02:00
Henri Verbeet
6e30387f81
wined3d: Replace color_fill_fbo() with device_clear_render_targets().
2010-08-04 13:24:07 +02:00
Henri Verbeet
6cb38b9c93
wined3d: Allow filtering and blending with WINED3DFMT_ATI2N.
2010-08-03 11:06:51 +02:00
Henri Verbeet
88ff3f406d
wined3d: Always set the get_drawable_size() surface function.
2010-08-03 11:06:47 +02:00
Henri Verbeet
b2e1e1fd71
wined3d: Pass the color as floating point values to device_clear_render_targets().
2010-08-03 11:06:42 +02:00
Henri Verbeet
6e68dd52c4
wined3d: Use the correct divider for 15-bit depth formats in IWineD3DSurfaceImpl_BltZ().
2010-08-03 11:06:20 +02:00
Stefan Dösinger
515eb3d7c4
wined3d: MSVC fixes in state.c.
2010-08-02 12:55:23 +02:00
Stefan Dösinger
4431f6c11d
wined3d: Replace pow with powf in surface_base.c.
2010-08-02 12:55:23 +02:00
Stefan Dösinger
4d45a791b6
wined3d: Fix another DWORD to WORD conversion warning.
2010-08-02 12:55:23 +02:00
Stefan Dösinger
fc5eeebe1a
wined3d: Add double to float conversion casts in device.c.
2010-08-02 12:55:22 +02:00
Stefan Dösinger
8db119b700
wined3d: Use the correct type in device_unit_free_for_vs.
2010-07-30 11:41:59 +02:00
Stefan Dösinger
723d87c280
wined3d: Make glClearColor parameters floats.
2010-07-30 11:41:44 +02:00
Stefan Dösinger
51cd12f35a
wined3d: The flag parameter in shader_hw_sample is a WORD.
2010-07-30 11:41:28 +02:00
Stefan Dösinger
728dd55f62
wined3d: The ARB loop unroller's iteration is unsigned.
2010-07-30 11:41:03 +02:00
Henri Verbeet
a99bf6c017
wined3d: Add support for ARB_texture_compression_rgtc.
2010-07-30 11:36:03 +02:00
Henri Verbeet
237f39377f
wined3d: Move the draw buffer array to the context.
2010-07-30 11:36:03 +02:00
Henri Verbeet
3ad82a82bb
wined3d: The stateblock doesn't have a parent.
2010-07-30 11:36:03 +02:00
Henri Verbeet
4936e71828
wined3d: Clamp vertex shader outputs.
...
To avoid having to interpolate infinities over fragments.
2010-07-29 17:33:35 +02:00
Henri Verbeet
2114a36936
wined3d: Unify vertex shader output handling between shader models.
2010-07-29 17:33:35 +02:00
Stefan Dösinger
cc8a45321f
wined3d: Add casts for int to float conversions.
2010-07-29 17:33:34 +02:00
Stefan Dösinger
6a87681b11
wined3d: Fix an msvc anachronism warning.
2010-07-29 17:33:34 +02:00
Stefan Dösinger
81b03d8891
wined3d: Use a int for the mantissa in float_24_to_32.
2010-07-29 17:33:34 +02:00
Stefan Dösinger
b25f22e456
wined3d: Use powf instead of pow.
2010-07-29 17:33:34 +02:00