Commit Graph

4722 Commits

Author SHA1 Message Date
Henri Verbeet 58ecf706e2 wined3d: Handle WINED3DFMT_R10G10B10A2_UNORM in getColorBits(). 2010-10-20 18:37:07 +02:00
Henri Verbeet 53f2765445 wined3d: Remove a FIXME in context_apply_blit_state().
There are some legitimate cases for this codepath, for example when blitting
to a render target with fixups or a color key.
2010-10-19 13:50:17 +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 70f4e66f84 wined3d: IWineD3DBuffer_Unmap() can't fail. 2010-10-15 16:19:54 +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 4eb8fd7960 wined3d: Recognize the SM4 sample_d opcode. 2010-10-14 17:54:52 +02:00
Henri Verbeet e54d9afbc3 wined3d: Recognize the SM4 ABS and NEG source modifiers. 2010-10-13 13:00:39 +02:00
Henri Verbeet 50f6fbadb0 wined3d: Recognize the SM4 ld opcode. 2010-10-13 13:00:30 +02:00
Henri Verbeet 7c6658f970 wined3d: Recognize the SM4 ieq opcode. 2010-10-13 13:00:26 +02:00
Henri Verbeet a9e3058426 wined3d: Recognize the SM4 ftoi opcode. 2010-10-13 13:00:22 +02:00
Henri Verbeet b53d346d35 wined3d: Recognize the SM4 div opcode. 2010-10-13 13:00:17 +02:00
Henri Verbeet 5eb7a44a2e wined3d: Skip SM4 instruction modifiers. 2010-10-12 17:36:40 +02:00
Henri Verbeet 0e4e196979 wined3d: Skip SM4 source register modifiers. 2010-10-12 17:36:36 +02:00
Henri Verbeet 916167e93a wined3d: Recognize the SM4 resource register type. 2010-10-12 17:36:30 +02:00
Henri Verbeet 6cbf1dd4b5 wined3d: Recognize the SM4 sampler register type. 2010-10-12 17:36:27 +02:00
Henri Verbeet 3c45bba11e wined3d: Add traces to IWineD3DDeviceImpl_AcquireFocusWindow() / IWineD3DDeviceImpl_ReleaseFocusWindow(). 2010-10-11 17:11:34 +02:00
Henri Verbeet ff9c2fcdb2 wined3d: Recognize the SM4 utof opcode. 2010-10-11 17:11:28 +02:00
Henri Verbeet 18d7a73af8 wined3d: Recognize the SM4 sample_l opcode. 2010-10-11 17:11:28 +02:00
Henri Verbeet 407ed1b875 wined3d: Recognize the SM4 sample opcode. 2010-10-11 17:11:28 +02:00
Henri Verbeet b2f520b5f0 wined3d: Recognize the SM4 itof opcode. 2010-10-11 17:11:28 +02:00
Henri Verbeet 1fe1676ae9 wined3d: SM4 immediate constants are typeless. 2010-10-08 15:26:42 +02:00
Henri Verbeet 3e45fe7488 wined3d: The SM4 sincos opcode has two destination arguments. 2010-10-08 15:26:37 +02:00
Henri Verbeet d369136a96 wined3d: Recognize the SM4 imul opcode. 2010-10-08 15:26:33 +02:00
Henri Verbeet 0677a67c7b wined3d: Recognize the SM4 NULL register type. 2010-10-08 15:26:28 +02:00
Henri Verbeet 7c7205d90a wined3d: Allow multiple shader instruction destination arguments. 2010-10-08 15:26:19 +02:00
Henri Verbeet 512e6cec2c wined3d: Recognize the SM4 movc opcode. 2010-10-07 15:58:10 +02:00
Henri Verbeet f78542c34c wined3d: Recognize the SM4 mad opcode. 2010-10-07 15:58:10 +02:00
Henri Verbeet 2eb5df3039 wined3d: Recognize the SM4 frc opcode. 2010-10-07 15:58:10 +02:00
Henri Verbeet 1330f844f8 wined3d: Recognize the SM4 and opcode. 2010-10-07 15:58:09 +02:00
Henri Verbeet 98a2973e95 wined3d: Recognize the SM4 loop opcode. 2010-10-07 15:58:09 +02:00
Henri Verbeet a59d0f45c1 wined3d: Acquire / release the focus window during reset. 2010-10-06 14:42:08 +02:00
Henri Verbeet e1b96eb347 wined3d: Set the depth/stencil buffer to NULL before releasing it.
To prevent device_resource_released() from detecting it as still in use.
2010-10-05 15:16:56 +02:00
Henri Verbeet 5fa84c56c3 ddraw: Remove another hack.
It breaks actual front buffer / back buffer flips.
2010-10-05 15:16:52 +02:00
Matteo Bruni 20010235ad wined3d: Keep track of texture transformation states in compiled pixel shaders. 2010-10-04 15:00:08 +02:00
Henri Verbeet 5fd1b5c023 wined3d: Also pass the destination state directly to wined3d_state_record_lights(). 2010-10-01 13:46:47 +02:00
Henri Verbeet 545dc012cf wined3d: Pass a wined3d_state structure to nvts_activate_dimensions(). 2010-10-01 13:46:43 +02:00
Henri Verbeet 4dcd56f43b wined3d: Pass a wined3d_state structure to remove_vbos(). 2010-10-01 13:46:39 +02:00
Henri Verbeet cf9d9e3204 wined3d: Pass gl_info and state parameters directly to drawStridedInstanced(). 2010-10-01 13:46:36 +02:00
Alexandre Julliard 7afdf5d920 Make some variable declarations extern. 2010-10-01 13:42:22 +02:00
Henri Verbeet 132158cbf5 wined3d: Pass gl_info and state parameters directly to drawStridedSlowVs(). 2010-09-30 17:51:17 +02:00
Henri Verbeet f065a5e54b wined3d: Remove the useless device parameter to drawStridedFast(). 2010-09-30 17:51:16 +02:00
Henri Verbeet c2363f750b wined3d: Pass a wined3d_gl_info structure to send_attribute(). 2010-09-30 17:51:16 +02:00
Henri Verbeet 5097623dcf wined3d: Pass a wined3d_state structure to device_preload_texture(). 2010-09-30 17:51:16 +02:00
Henri Verbeet 5029331f55 wined3d: Pass a wined3d_state structure to find_arb_ps_compile_args(). 2010-09-29 12:22:43 +02:00
Henri Verbeet e5ef8057ea wined3d: Pass a wined3d_state structure to find_arb_vs_compile_args(). 2010-09-29 12:22:41 +02:00
Henri Verbeet e12f5ff08a wined3d: Pass a wined3d_state structure to find_ps_compile_args(). 2010-09-29 12:22:39 +02:00
Henri Verbeet 8d5a25bbec wined3d: Pass a wined3d_state structure to find_vs_compile_args(). 2010-09-29 12:22:36 +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 e59fdb83a6 wined3d: Simply refuse to create shaders if they're disabled.
The functionality is a bit questionable in the first place, but there is some
use in the part that limits the maximum reported shader versions.
2010-09-28 17:33:16 +02:00
Henri Verbeet d6d345fa8a wined3d: Remove IWineD3DStateBlock::InitStartupStateBlock() from the public wined3d interface. 2010-09-28 17:33:16 +02:00
Henri Verbeet 39886193fd wined3d: Set initial stateblock state directly on a wined3d_state structure. 2010-09-27 14:10:45 +02:00
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
Henri Verbeet 41346a1dae wined3d: Setting render target 0 to NULL in an application error. 2010-07-28 12:22:55 +02:00
Henri Verbeet ea2bb2a904 wined3d: Invalid NP2 fixup info is an internal error. 2010-07-28 12:22:52 +02:00
Henri Verbeet 0d25da0c0d wined3d: Properly take both input and output masks into account in handle_ps3_input(). 2010-07-28 12:22:50 +02:00
Henri Verbeet ce39714228 wined3d: Check for unread registers in a more logical way in handle_ps3_input().
~0U always >= (in_count + 2).
2010-07-28 12:22:40 +02:00
Matteo Bruni 20f51c29a9 wined3d: Setup target if offscreen rendering setting changed. 2010-07-26 18:38:33 +02:00
Henri Verbeet 3e37b27d37 wined3d: Cleanup Get/SetRenderState traces a bit. 2010-07-26 18:38:31 +02:00
Henri Verbeet 6874743e78 wined3d: Add a missing return statement to surface_prepare_texture().
Calling surface_prepare_texture_internal() twice on the same surface is
harmless, but unnecessary.
2010-07-26 18:38:31 +02:00
Henri Verbeet 0bf68b846a wined3d: Merge strect_rect_fbo() and surface_load_srgb_fbo(). 2010-07-26 18:38:31 +02:00
Henri Verbeet 943fb2fb57 wined3d: Do RGB <=> sRGB transfers using FBO blits.
Concept based on a patch by Stefan.
2010-07-26 18:38:31 +02:00
Henri Verbeet 2f028f0340 wined3d: Avoid loading the destination surface in stretch_rect_fbo() if it will be completely overwritten. 2010-07-23 11:46:55 +02:00
Henri Verbeet d374d85055 wined3d: Clear all render targets in an MRT setup. 2010-07-23 11:46:47 +02:00
Stefan Dösinger 068915a4f1 wined3d: Check the writemask before activating the oC0 optimization.
The comment above the code correctly mentions that this optimization
does not work if oC0 is written partially, but the code doesn't
actually check for this condition.
2010-07-22 10:22:46 +02:00
Stefan Dösinger 6b794cbd64 wined3d: Only perform sRGB write correction on formats that advertise it. 2010-07-22 10:22:26 +02:00
Henri Verbeet 3d8ff7f27a wined3d: Framebuffer blits are affected by the color mask. 2010-07-22 10:13:36 +02:00
Henri Verbeet 4817a65091 wined3d: Preload resources before FBO setup. 2010-07-22 10:13:30 +02:00
Henri Verbeet f7760656f3 wined3d: Remove LoadLocation() from the public wined3d surface interface. 2010-07-22 10:13:24 +02:00
Henri Verbeet 147f24dd78 wined3d: Remove ModifyLocation() from the public wined3d surface interface. 2010-07-22 10:13:13 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Luke Bratch c63c568731 wined3d: Add Nvidia 8800GTX detection. 2010-07-21 13:23:59 +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 0344bc429d wined3d: Just implement BindTexture() for GDI surfaces in surface_gdi.c. 2010-07-21 09:33:05 +02:00
Henri Verbeet aae8f13610 wined3d: Remove an unused prototype. 2010-07-21 09:33:01 +02:00
Henri Verbeet 9976e078cb wined3d: Add some missing flags to debug_d3dusage(). 2010-07-21 09:32:55 +02:00
Henri Verbeet 4b850ed121 wined3d: Remove restoring the read buffer from read_from_framebuffer_texture().
The few functions that care about the read buffer should explicitly set it
themselves, instead of assuming any particular state.
2010-07-20 13:13:04 +02:00
Henri Verbeet d6e08f8074 wined3d: Consolidate surface related prototypes in wined3d_private.h. 2010-07-20 13:13:04 +02:00
Florian Köberle 2c1e8decfc wined3d: Let GetRasterStatus return D3DERR_INVALIDCALL. 2010-07-19 15:12:14 +02:00
Rico Schüller 894a150f69 wined3d: Add GL_NV_point_sprite extension. 2010-07-19 15:10:32 +02:00
Seth Shelnutt b5a5db910f wined3d: Nvidia Geforce 8400 and 8500 are now reported as 8400GS instead of 8300GS. 2010-07-19 14:38:16 +02:00
Henri Verbeet 3ecaa4a41a wined3d: Invalidate STATE_STREAMSRC in IWineD3DDeviceImpl_EvictManagedResources(). 2010-07-08 17:33:37 +02:00
Francois Gouget 7649c75b40 Assorted typo and spelling fixes. 2010-06-24 10:37:05 +02:00
Francois Gouget 620087c545 wined3d: Remove spaces after '\n's. 2010-06-24 10:33:46 +02:00
Henri Verbeet b769c912cc wined3d: read_from_framebuffer_texture() isn't suitable for readback of onscreen surfaces. 2010-06-22 13:51:30 +02:00
Matteo Bruni 6585bec5ac wined3d: Check for error conditions in GL call. 2010-06-22 11:22:38 +02:00
Roderick Colenbrander eb0a032a8c wined3d: Add NPOT quirk for GeforceFX 5200. 2010-06-18 11:19:03 +02:00
Rico Schüller c223e73bbb wined3d: Improve fglrx glsl spam filter. 2010-06-15 19:58:30 +02:00
Henri Verbeet b1abafcf8d wined3d: Also flip the point sprite coordinate origin when rendering offscreen. 2010-06-11 16:22:25 +02:00
Henri Verbeet 64e2525ba0 wined3d: Release the context on an error path in buffer_PreLoad(). 2010-06-07 12:22:44 +02:00
Henri Verbeet eb3c81fd69 wined3d: Sampler states are 1-based.
0 isn't a valid sampler state, and including it would overflow the
stateblock's contained_sampler_states array in
stateblock_init_contained_states().
2010-06-02 11:53:39 +02:00
Wolfram Sang ddd1c72574 wined3d: Clarify some comments about Intel cards. 2010-06-01 13:37:18 +02:00
Henri Verbeet 1b5cc39a86 wined3d: Get rid of some dead code. 2010-06-01 11:03:56 +02:00
Dan Kegel f99e1d80e2 wined3d: Fix size of buffer in swapchain_create_context_for_thread(). 2010-05-31 12:46:08 +02:00
Henri Verbeet 6f57aabc0a wined3d: Handle a zero source value for WINED3DSIH_POW. 2010-05-27 14:46:43 +02:00
Roderick Colenbrander 39eaaeaa27 wined3d: Add support for mobile Geforce 3xx GPUs. 2010-05-27 14:46:43 +02:00
Roderick Colenbrander c44603a559 wined3d: Mark Geforce GT 140 as a Geforce 9600GT. 2010-05-27 14:46:43 +02:00
Roderick Colenbrander 036295c37a wined3d: Add Geforce 2xx lowend models. 2010-05-27 14:46:43 +02:00