Henri Verbeet
75c8e9f7b4
wined3d: Use EXT_texture_sRGB_decode to avoid sRGB texture duplication.
2011-03-03 17:47:13 +01:00
Henri Verbeet
a97c1ad15e
wined3d: Add support for EXT_texture_sRGB_decode.
2011-03-03 17:47:13 +01:00
Henri Verbeet
09c3537ad0
wined3d: Retrieve the GL texture through a function.
2011-03-03 17:47:13 +01:00
Henri Verbeet
d523dee76b
wined3d: Retrieve the surface's texture name through a function.
2011-03-02 12:50:59 +01:00
Henri Verbeet
ddc7a803e9
wined3d: Standalone surfaces should never be sRGB.
2011-03-02 12:50:59 +01:00
Henri Verbeet
fe425a2f23
wined3d: Use basetexture_set_dirty() in some more places.
2011-03-02 12:50:59 +01:00
Henri Verbeet
7b2274dff1
wined3d: The basetexture_set_dirty() return value is never used.
2011-03-02 12:50:59 +01:00
Henri Verbeet
ff8c79e45b
wined3d: Recognize some Nouveau renderer strings.
2011-03-01 13:21:59 +01:00
Henri Verbeet
02fa8bf013
wined3d: Rename ATI to AMD.
2011-03-01 13:21:59 +01:00
Henri Verbeet
1de6adfbae
wined3d: Make IWineD3DResourceImpl an independent structure.
2011-03-01 13:21:59 +01:00
Henri Verbeet
1674ca1ebd
wined3d: Pass const resources to some resource functions.
2011-03-01 13:21:58 +01:00
Henri Verbeet
39497ff4d1
wined3d: Remove IWineD3DResource::UnLoad() from the public interface.
2011-02-28 11:09:48 +01:00
Henri Verbeet
1da773ff4d
wined3d: Merge device_unload_resource() and reset_unload_resources().
2011-02-28 11:09:38 +01:00
Henri Verbeet
14050e125d
wined3d: Recognize some Northern Islands cards in select_card_ati_mesa().
2011-02-28 11:09:35 +01:00
Henri Verbeet
d9d2fe31e3
wined3d: Filter sRGB capabilities during format initialization.
2011-02-28 11:09:25 +01:00
Matteo Bruni
75386a99b4
wined3d: Make clip planes independent from offscreen/onscreen drawing.
2011-02-15 17:24:26 +01:00
Gerald Pfeifer
54d98ba791
wined3d: Remove an old hack around Mesa choking on protected memory from flush_to_framebuffer_drawpixels.
2011-02-14 13:33:30 +01:00
Henri Verbeet
14c3387fc2
wined3d: Get rid of the IWineD3DQuery typedefs.
2011-02-04 15:25:32 +01:00
Henri Verbeet
a5fe3610ad
wined3d: Remove COM from the query implementation.
2011-02-04 15:25:32 +01:00
Henri Verbeet
831a29d250
wined3d: Use an internal call table for query operations.
2011-02-04 15:25:31 +01:00
Henri Verbeet
b59dc811e2
wined3d: Get rid of the IWineD3DClipper typedefs.
2011-02-04 15:25:31 +01:00
Henri Verbeet
304d713860
wined3d: Remove COM from the clipper implementation.
2011-02-04 15:25:31 +01:00
Henri Verbeet
e1815f5e3b
wined3d: Get rid of the IWineD3DPalette typedefs.
2011-02-03 13:15:17 +01:00
Henri Verbeet
5963483fc2
wined3d: Remove COM from the palette.
2011-02-03 13:15:17 +01:00
Henri Verbeet
fe3cfb3e8e
wined3d: Get rid of the IWineD3DVertexDeclaration typedefs.
2011-02-03 13:15:17 +01:00
Henri Verbeet
5765632d9f
wined3d: Remove COM from the vertex declaration.
2011-02-03 13:15:17 +01:00
Henri Verbeet
074977d404
wined3d: Get rid of the IWineD3D typedefs.
2011-02-02 12:22:53 +01:00
Henri Verbeet
36d4268e3c
wined3d: Remove COM from IWineD3D.
2011-02-02 12:22:42 +01:00
Henri Verbeet
1fd7c96a31
wined3d: Make volumetexture_ops static.
2011-02-02 12:21:23 +01:00
Henri Verbeet
ddb36691f6
wined3d: Pass a const adapter to the format caps checking functions.
2011-02-01 12:01:18 +01:00
Henri Verbeet
4c30b82c83
wined3d: Just fail if the texture type is not supported in create_glsl_blt_shader() (LLVM/Clang).
...
Changing the texture type has no effect at this point, and it wouldn't work
properly anyway.
2011-02-01 12:01:10 +01:00
Henri Verbeet
96d225d4dd
wined3d: Get rid of the IWineD3DStateBlockImpl typedef.
2011-01-31 12:25:05 +01:00
Henri Verbeet
b98cd5d982
wined3d: Get rid of the IWineD3DStateBlock typedef.
2011-01-31 12:25:01 +01:00
Henri Verbeet
4b109ff1f8
wined3d: Remove COM from the stateblock.
2011-01-31 12:24:58 +01:00
Henri Verbeet
a538d28f28
wined3d: Set color / depth / stencil surfaces to NULL before releasing them in IWineD3DDeviceImpl_Uninit3D().
2011-01-31 12:24:55 +01:00
Stefan Reimer
1c25577873
wined3d: Adding AMD HD5670, HD5570, HD5550, HD5450 detection.
2011-01-28 17:23:57 +01:00
Henri Verbeet
1b726498ed
wined3d: Set all render targets to NULL in IWineD3DDeviceImpl_Uninit3D().
2011-01-28 11:58:06 +01:00
Henri Verbeet
c964134a59
wined3d: Add support for the NULL format.
2011-01-27 14:13:55 +01:00
Henri Verbeet
2469597e2a
wined3d: Verify we have at least one framebuffer attachment before doing clears or draws.
2011-01-27 14:13:39 +01:00
Henri Verbeet
7438e42f1a
wined3d: Do checks at the start of surface_init() (LLVM/Clang).
2011-01-26 15:00:12 +01:00
Henri Verbeet
91ac0c37b1
wined3d: Disable vertex shader output clamping.
...
It looks like NV50+ hardware gets you infinities and NaN's in D3D as well for
most things, so we should only need special handling for pow and nrm.
2011-01-25 12:32:38 +01:00
Henri Verbeet
a50546e563
wined3d: Use dot() instead of length() in shader_glsl_nrm().
...
As Eric Anholt pointed out, using length() here is suboptimal. It essentially
translates into "inversesqrt(dot(x, x));", but needs to handle the case of
zero-length vectors, much like nrm.
2011-01-24 14:43:26 +01:00
Henri Verbeet
010e285b88
wined3d: WINED3DFMT_INTZ is a FOURCC format.
...
This is mostly for consistency, in practice ddraw code is never going to use
this format.
2011-01-24 14:43:26 +01:00
Henri Verbeet
4891ca168e
wined3d: Remove IWineD3DSurface::DrawOverlay() from the public interface.
2011-01-24 14:43:26 +01:00
Henri Verbeet
05603c4568
wined3d: Remove IWineD3DSurface::RealizePalette() from the public interface.
2011-01-24 14:43:26 +01:00
Henri Verbeet
1eefb46a57
wined3d: Remove IWineD3DVolume::LoadTexture() from the public interface.
2011-01-21 18:37:11 +01:00
Henri Verbeet
ce050c89de
wined3d: Get rid of IWineD3DSurface::GetData().
2011-01-21 18:37:09 +01:00
Henri Verbeet
0b7fef751e
wined3d: Remove IWineD3DSurface::LoadTexture() from the public interface.
2011-01-21 18:37:06 +01:00
Henri Verbeet
629d81b192
wined3d: Remove IWineD3DSurface::BindTexture() from the public interface.
2011-01-21 18:37:04 +01:00
Henri Verbeet
227efbbf65
wined3d: Store a pointer to an array of IWineD3DSwapChainImpl pointers in the device.
2011-01-20 12:19:04 +01:00
Henri Verbeet
6f95f05aaf
wined3d: Move swapchain context retrieval to swapchain.c.
2011-01-20 12:18:58 +01:00
Henri Verbeet
f250ee66a3
wined3d: Pass an IWineD3DSwapChainImpl pointer to findThreadContextForSwapChain().
2011-01-19 12:22:41 +01:00
Henri Verbeet
b439fa9d8f
wined3d: Pass an IWineD3DSwapChainImpl pointer to swapchain_create_context_for_thread().
2011-01-19 12:22:38 +01:00
Henri Verbeet
237cdefe7f
wined3d: Pass an IWineD3DVolumeImpl pointer to volume_bind_and_dirtify().
2011-01-19 12:22:34 +01:00
Henri Verbeet
ace5f8e60e
wined3d: Pass an IWineD3DVolumeImpl pointer to volume_add_dirty_box().
2011-01-19 12:22:31 +01:00
Henri Verbeet
d91a413ade
wined3d: Store an IWineD3DClipperImpl pointer in IWineD3DSurfaceImpl.
2011-01-18 12:32:10 +01:00
Henri Verbeet
098cdf4ae3
wined3d: Store an IWineD3DResourceImpl pointer in struct wined3d_rendertarget_view.
2011-01-18 12:32:06 +01:00
Henri Verbeet
e42e5247dd
wined3d: Pass an IWineD3DResourceImpl pointer to wined3d_rendertarget_view_init().
2011-01-18 12:32:01 +01:00
Henri Verbeet
2ceb2a8cdd
wined3d: Pass an IWineD3DResourceImpl pointer to context_resource_unloaded().
2011-01-18 12:31:58 +01:00
Stefan Dösinger
e98a0e5bb1
wined3d: Don't set cube and volume POW2 caps if np2 textures are supported.
2011-01-17 17:33:36 +01:00
Henri Verbeet
c28d6f38af
wined3d: Pass an IWineD3DResourceImpl pointer to context_resource_released().
2011-01-17 13:22:06 +01:00
Henri Verbeet
834b599e19
wined3d: Pass an IWineD3DResourceImpl pointer to device_resource_released().
2011-01-17 13:22:06 +01:00
Henri Verbeet
852ac57db6
wined3d: Pass an IWineD3DResourceImpl pointer to device_resource_add().
2011-01-17 13:22:06 +01:00
Henri Verbeet
2ad540cea5
wined3d: Pass an IWineD3DResourceImpl pointer to device_resource_remove().
2011-01-17 13:22:06 +01:00
Matteo Bruni
ef0f358813
wined3d: Don't call glPointParameter with a random context.
2011-01-07 15:01:38 +01:00
Henri Verbeet
c117248bd1
wined3d: Pass an IWineD3DResourceImpl pointer to resource_get_type().
2011-01-07 10:23:37 +01:00
Henri Verbeet
7e67bcedfd
wined3d: Pass an IWineD3DResourceImpl pointer to resource_set_priority().
2011-01-07 10:23:25 +01:00
Henri Verbeet
2d9748b1e3
wined3d: Pass an IWineD3DResourceImpl pointer to resource_get_priority().
2011-01-07 10:23:21 +01:00
Henri Verbeet
a80749fd57
wined3d: Pass an IWineD3DResourceImpl pointer to resource_set_private_data().
2011-01-07 10:23:17 +01:00
Henri Verbeet
92e439b0f0
wined3d: Pass an IWineD3DResourceImpl pointer to resource_get_private_data().
2011-01-06 11:33:33 +01:00
Henri Verbeet
a97ae0db6a
wined3d: Pass an IWineD3DResourceImpl pointer to resource_free_private_data().
2011-01-06 11:33:29 +01:00
Henri Verbeet
134137cdb4
wined3d: Pass an IWineD3DResourceImpl pointer to resource_cleanup().
2011-01-06 11:33:24 +01:00
Henri Verbeet
7080922e0e
wined3d: Pass an IWineD3DResourceImpl pointer to resource_init().
2011-01-06 11:33:19 +01:00
Henri Verbeet
d72520b5cc
wined3d: Remove IWineD3DBaseTexture::BindTexture() from the public interface.
2011-01-05 17:22:01 +01:00
Henri Verbeet
f9a1e8813e
wined3d: Pass an IWineD3DDeviceImpl pointer to create_primary_opengl_context().
2011-01-05 17:21:47 +01:00
Henri Verbeet
7e0909d058
wined3d: Pass an IWineD3DDeviceImpl pointer to delete_opengl_contexts().
2011-01-05 17:21:37 +01:00
Henri Verbeet
e5d1a0c72d
wined3d: Use surface_modify_location() to manipulate location flags in IWineD3DSurfaceImpl_Unmap().
...
Directly setting SFLAG_INFRAWABLE breaks for offscreen render targets, where
the drawable and texture are the same thing. Before commit
d3fd7b247b
the explicit load of the texture
location with the default RTL_READTEX render target lock mode would have
prevented the flags from becomming inconsistent.
2011-01-05 17:21:28 +01:00
Henri Verbeet
3a59137b09
wined3d: Pass an IWineD3DBaseTextureImpl pointer to internal_preload().
2011-01-04 11:09:52 +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
32779a2232
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_bind().
2011-01-04 11:09:47 +01:00
Henri Verbeet
bf108ac872
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_generate_mipmaps().
2011-01-04 11:09:45 +01:00
Alexandre Julliard
8cbc6efdca
Revert "wined3d: Update detection of vertex blend capabilities."
...
This reverts commit f41fdb225c
.
It's wrong and was committed by mistake.
2011-01-03 19:32:48 +01:00
Jeremy Chin
f41fdb225c
wined3d: Update detection of vertex blend capabilities.
2011-01-03 11:54:05 +01:00
Henri Verbeet
9de4433dbe
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_get_autogen_filter_type().
2011-01-03 11:54:05 +01:00
Henri Verbeet
568f9ecb22
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_set_autogen_filter_type().
2011-01-03 11:54:04 +01:00
Henri Verbeet
54e1aeeb62
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_get_lod().
2011-01-03 11:54:04 +01:00
Henri Verbeet
482a5fd030
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_set_lod().
2011-01-03 11:54:04 +01:00
Andrew Nguyen
12880784fe
wined3d: Handle the swapchain presentation interval with wglSwapIntervalEXT.
2010-12-27 15:39:41 +01:00
Andrew Nguyen
0f050b3ecb
wined3d: Fix typo in GL_SGIS_generate_mipmap preprocessor definition.
2010-12-27 15:39:41 +01:00
Andrew Nguyen
7e13b1afaf
wined3d: Remove references to GLX_SGI_video_sync.
...
Usage of GLX_SGI_video_sync is problematic, and wined3d cannot use GLX extensions.
2010-12-27 15:39:41 +01:00
Rico Schüller
5b985bcb03
wined3d: Fix memset size in IWineD3DVolumeImpl_Unmap.
2010-12-20 12:47:38 +01:00
Henri Verbeet
f5d96d1701
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_get_level_count().
2010-12-16 11:50:09 +01:00
Henri Verbeet
2438968c34
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_cleanup().
2010-12-16 11:50:09 +01:00
Henri Verbeet
47fcc00cce
wined3d: Pass an IWineD3DBaseTextureImpl pointer to basetexture_unload().
2010-12-16 11:50:09 +01:00
Henri Verbeet
7bc7caf423
wined3d: Pass an IWineD3DBaseTextureImpl array to pixelshader_update_samplers().
2010-12-16 11:50:09 +01:00
Henri Verbeet
bd2e7aedcf
wined3d: Store an IWineD3DBaseShaderImpl pointer in wined3d_shader_context.
2010-12-15 11:55:22 +01:00
Henri Verbeet
2f36d600ef
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_main().
2010-12-15 11:55:19 +01:00
Henri Verbeet
51f06dcf0c
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_get_registers_used().
2010-12-15 11:55:16 +01:00
Henri Verbeet
c492ec196e
wined3d: Pass implementation pointers to get_glsl_program_entry().
2010-12-15 11:55:13 +01:00
Henri Verbeet
d6446c7a97
wined3d: Store implementation pointers in glsl_program_key_t.
2010-12-14 11:38:42 +01:00
Henri Verbeet
dd1ba15ec7
wined3d: Store implementation pointers in struct glsl_shader_prog_link.
2010-12-14 11:38:39 +01:00
Henri Verbeet
b0bc24eec3
wined3d: Pass implementation pointers to generate_param_reorder_function().
2010-12-14 11:38:37 +01:00
Henri Verbeet
77beea98b9
wined3d: Avoid some interface pointers in set_glsl_shader_program().
2010-12-14 11:38:34 +01:00
Henri Verbeet
bbbab10c8e
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_cleanup().
2010-12-13 16:24:27 +01:00
Henri Verbeet
fe2ffe1e6a
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_destroy().
2010-12-13 16:24:23 +01:00
Henri Verbeet
97ca0e6863
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_glsl_declarations().
2010-12-13 16:24:19 +01:00
Henri Verbeet
8ea7d1ef71
wined3d: Pass an IWineD3DBaseShaderImpl pointer to shader_generate_arb_declarations().
2010-12-13 16:24:15 +01:00
Henri Verbeet
0e3c60786e
wined3d: Explicitly pass gl_info to unset_shader().
2010-12-10 13:02:26 +01:00
Henri Verbeet
ae7a20af2f
wined3d: Explicitly pass blit_priv and gl_info to set_shader().
2010-12-10 13:02:24 +01:00
Henri Verbeet
0caed0a771
wined3d: Explicitly pass blit_priv and gl_info to gen_p8_shader().
2010-12-10 13:02:22 +01:00
Henri Verbeet
fa75517155
wined3d: Explicitly pass blit_priv and gl_info to gen_yuv_shader().
2010-12-10 13:02:19 +01:00
Henri Verbeet
7f09eb6a7a
wined3d: Pass an IWineD3DDeviceImpl pointer to free_private().
2010-12-09 12:14:31 +01:00
Henri Verbeet
4ba3b64c57
wined3d: Pass an IWineD3DDeviceImpl pointer to alloc_private().
2010-12-09 12:14:25 +01:00
Henri Verbeet
a3b2407824
wined3d: Remove IWineD3DBaseTexture::SetDirty() from the public interface.
2010-12-09 12:14:19 +01:00
Henri Verbeet
4dd3066ea3
wined3d: Remove the unused IWineD3DBaseTexture::GetDirty() method.
2010-12-09 12:14:11 +01:00
Henri Verbeet
b5637a934e
wined3d: Store an IWineD3DDeviceImpl pointer in IWineD3DBaseShaderClass.
2010-12-08 11:27:49 +01:00
Henri Verbeet
018a48493b
wined3d: Remove a redundant SetDirty() call from IWineD3DSurfaceImpl_Map().
...
The surface_add_dirty_rect() call already does this.
2010-12-08 11:27:44 +01:00
Henri Verbeet
5fc53941ef
wined3d: Pass a wined3d_buffer structure to buffer_get_memory().
2010-12-08 11:27:40 +01:00
Henri Verbeet
46f3cc9df6
wined3d: Don't leak heapMemory in surface_remove_pbo().
2010-12-08 11:27:34 +01:00
Henri Verbeet
cd30e9562c
wined3d: Explicitly pass gl_info to shader_arb_generate_pshader().
2010-12-07 11:33:27 +01:00
Henri Verbeet
202a60c489
wined3d: Explicitly pass gl_info to shader_arb_generate_vshader().
2010-12-07 11:33:25 +01:00
Henri Verbeet
db164a990c
wined3d: Rename shader_reg_maps to wined3d_shader_reg_maps.
...
For consistency with other shader translation structures.
2010-12-07 11:33:23 +01:00
Henri Verbeet
78652a5fe8
wined3d: Explicitly pass shader_data, reg_maps and gl_info to vshader_add_footer().
2010-12-06 12:21:35 +01:00
Henri Verbeet
e9ff40d918
wined3d: Use local reg_maps variables where possible.
2010-12-06 12:21:31 +01:00
Henri Verbeet
0405733ff7
wined3d: Explicitly pass shader_data and reg_maps to reserved_vs_const().
2010-12-06 12:21:27 +01:00
Henri Verbeet
a564101630
wined3d: Explicitly pass shader_data and reg_maps to need_helper_const().
2010-12-06 12:21:24 +01:00
Henri Verbeet
6a646ac25d
wined3d: shader_get_registers_used() is only called during shader initialization.
2010-12-03 11:04:39 +01:00
Henri Verbeet
8c1e326e3c
wined3d: Explicitly pass shader_data and reg_maps to need_rel_addr_const().
2010-12-03 11:04:36 +01:00
Henri Verbeet
e43cd744b6
wined3d: need_rel_addr_const() is only ever called for vertex shaders.
2010-12-03 11:04:32 +01:00
Henri Verbeet
fe47ba8fa2
wined3d: Move the rel_offset vertex shader field to the ARB shader backend.
2010-12-03 11:04:28 +01:00
Henri Verbeet
b72b037128
wined3d: Properly initialize min_rel_offset.
...
This somehow got lost in 14da44aa36
.
2010-12-03 11:04:22 +01:00
Henri Verbeet
03d7f527cf
wined3d: Move min_rel_offset / max_rel_offset to the shader_reg_maps structure.
2010-12-02 11:54:20 +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
f92a0667d7
wined3d: Remove a unused parameter to shader_dirtifyable_constants().
2010-12-02 11:53:57 +01:00
Henri Verbeet
f45aeb4abe
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_free_private().
2010-12-01 11:09:08 +01:00
Henri Verbeet
4a69874938
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_alloc_private().
2010-12-01 11:09:02 +01:00
Henri Verbeet
77923346da
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_pixel_constants().
2010-12-01 11:08:57 +01:00
Henri Verbeet
4a6d0da207
wined3d: Pass an IWineD3DDeviceImpl pointer to shader_update_float_vertex_constants().
2010-12-01 11:08:51 +01:00
Henri Verbeet
fad461eefa
wined3d: Move the PrivateData structure to resource.c.
2010-12-01 11:08:39 +01:00
Henri Verbeet
7363b0e98a
wined3d: Explicitly pass data and gl_info to shader_deselect_depth_blt().
2010-11-30 10:57:23 +01:00
Henri Verbeet
93a824d744
wined3d: Explicitly pass data and gl_info to shader_select_depth_blt().
2010-11-30 10:57:17 +01:00
Henri Verbeet
363d8a316e
wined3d: Pass an IWineD3DDeviceImpl pointer to drawPrimitive().
2010-11-30 10:57:10 +01:00
Henri Verbeet
6476ef599d
wined3d: Pass an IWineD3DDeviceImpl pointer to drawStridedSlow().
2010-11-30 10:57:01 +01:00
Marcus Meissner
5d657bfdba
wined3d: Detect nouveau as NVIDIA.
2010-11-29 19:43:35 +01:00
Christian Inci
4229b1f3b6
wined3d: Add nVidia GT 320M to the table.
2010-11-26 14:58:39 +01:00
Austin English
90f428cd85
wined3d: Add detection for Nvidia GT 330.
2010-11-23 14:16:21 +01:00
Henri Verbeet
a147fd9c36
wined3d: Fix the indentation in buffer_direct_upload().
2010-11-23 13:15:39 +01:00
Henri Verbeet
03f7a2d88e
wined3d: Get rid of the remaining "Flags".
2010-11-23 13:15:36 +01:00
Henri Verbeet
b459b917fb
wined3d: Textures never have a resource size.
...
They're just containers for their subresources.
2010-11-23 13:15:32 +01:00
Henri Verbeet
4f651808fc
wined3d: Disallow empty surfaces.
2010-11-18 12:37:36 +01:00
Henri Verbeet
faba8d734d
wined3d: Send a notification that the GL texture changed in flip_surface().
...
Strictly speaking the texture doesn't get unloaded, but it does get associated
with a different surface. The FBO cache in particular is much happier when it
gets notified of these.
2010-11-17 14:01:14 +01:00
Henri Verbeet
fadd192cba
wined3d: buffer_get_sysmem() potentially invalidates the current element array buffer binding.
...
This fixes a regression introduced by commit
2a7a237170
.
2010-11-16 13:48:46 +01:00
Henri Verbeet
4dc28005eb
wined3d: Remove a redundant flag in IWineD3DSurfaceImpl_SetMem().
2010-11-16 13:48:42 +01:00
Henri Verbeet
745126b05d
wined3d: Properly recreate the sysmem resource location in IWineD3DSurfaceImpl_SetMem().
...
Otherwise we could end up with surfaces that have SFLAG_INSYSMEM set, but no
actual system memory allocated. This was exposed by
3bbe658ef1
.
2010-11-15 15:04:41 +01:00
Henri Verbeet
44b9712cd6
wined3d: Add a trace to IWineD3DSurfaceImpl_SetMem().
2010-11-15 15:04:36 +01:00
Henri Verbeet
60b5dc04b7
wined3d: Rename the IWineD3DPaletteImpl "Flags" field to "flags".
2010-11-15 15:04:32 +01:00
Henri Verbeet
efb185dcd5
wined3d: Rename the wined3d_format "Flags" field to "flags".
2010-11-12 15:43:08 +01:00
Henri Verbeet
027fdb31c2
wined3d: Rename the IWineD3DSurfaceImpl "Flags" field to "flags".
2010-11-12 15:43:07 +01:00
Henri Verbeet
a59ee29dec
wined3d: Simplify a condition in IWineD3DSurfaceImpl_LoadTexture().
2010-11-12 15:43:07 +01:00
Henri Verbeet
4bd1f04fbd
wined3d: Check for depth/stencil surfaces in general in IWineD3DSurfaceImpl_Unmap().
...
Instead of just the current one.
2010-11-12 15:43:07 +01:00
Henri Verbeet
db013ed213
wined3d: Avoid marking samplers dirty in IWineD3DSurfaceImpl_Unmap().
...
Resources are explicitly loaded in context_apply_draw_state() when needed, the
resource location management takes care of all of this.
2010-11-12 15:43:07 +01:00
Henri Verbeet
3bbe658ef1
wined3d: Remove some useless code.
2010-11-11 13:11:37 +01:00
Henri Verbeet
78abb8ae07
wined3d: Simply use surface_modify_location() in IWineD3DSurfaceImpl_Map() with WINED3DLOCK_DISCARD.
...
The call to surface_add_dirty_rect() would have taken care of evicting the
other locations anyway, but we really shouldn't be touching the location flags
directly.
2010-11-11 13:11:34 +01:00
Henri Verbeet
d3fd7b247b
wined3d: Handle rendertargetlock_mode in surface_load_location().
2010-11-11 13:11:30 +01:00
Henri Verbeet
1fa19d8e42
wined3d: Take the location into account in context_apply_fbo_state_blit().
2010-11-11 13:11:26 +01:00
Jaime Rave
6bf3f67c01
wined3d: Added Intel GM45 video card detection.
2010-11-11 13:08:25 +01:00
Henri Verbeet
7a354177b3
wined3d: Don't unregister a window unless the window proc is what we expect it to be.
...
In particular, if we'd unregister a window when the application replaced our
window proc, but still forwards to us, we'd create a loop when we register
the same window again later.
2010-11-10 12:19:24 +01:00
Henri Verbeet
9a1fddb0fd
wined3d: Register a window only once.
2010-11-10 12:19:16 +01:00
Henri Verbeet
4503d0cb4b
wined3d: Use a lookup table in select_card_ati_binary().
2010-11-10 12:18:54 +01:00
Henri Verbeet
3bb40b0776
wined3d: Use lookup tables in select_card_nvidia_binary().
2010-11-09 14:21:00 +01:00
Henri Verbeet
a9da30dc5f
wined3d: Use lookup tables in select_card_ati_mesa().
2010-11-09 14:20:51 +01:00
Henri Verbeet
bed0266a8c
wined3d: Recognize Evergreen in select_card_ati_mesa().
2010-11-09 14:20:42 +01:00
Henri Verbeet
50b76b76cb
wined3d: Test for "AMD" in the renderer string as well to detect AMD cards.
...
Specifically, the Gallium r600 driver reports "X.Org" for vendor and a string
of the form "Gallium 0.4 on AMD RV730" for the renderer.
2010-11-08 13:31:09 +01:00
Henri Verbeet
7a64870014
wined3d: Don't use floating point textures without ARB_texture_float.
...
The floating point formats from ARB_texture_rg are only defined when
ARB_texture_float is also supported. It would have been nice if the formats
table itself was able to express this, but as far as I'm aware this is only an
issue for ARB_texture_rg, so it's probably not worth changing.
2010-11-08 13:30:59 +01:00
Henri Verbeet
7e3985e1fe
ddraw: Setup the device window in SetCooperativeLevel().
2010-11-08 13:30:54 +01:00
Henri Verbeet
b898130a11
wined3d: Do not activate the window when restoring the styles.
...
This is consistent with device_setup_fullscreen_window(), and ddraw actually
has a test for this in ddrawmodes.c. (Although it doesn't actually use
device_setup_fullscreen_window() until the next patch.)
2010-11-08 13:30:46 +01:00
Henri Verbeet
45cee64295
wined3d: Move the fullscreen window setup / restore code to the device.
2010-11-08 13:30:40 +01:00
Henri Verbeet
feaf81f60d
wined3d: Use SetWindowPos() to make the focus window active.
2010-11-05 17:15:37 +01:00
Henri Verbeet
f0b0c1b1dd
wined3d: Add support for the INTZ format.
2010-11-05 17:15:36 +01:00
Michael Stefaniuc
1183383a6f
wined3d: Fix some checkGLcall() messages.
2010-11-05 17:15:34 +01:00
Michael Stefaniuc
809741d5ae
wined3d: Move the checkGLcall() right after the corresponding GL call.
2010-11-05 17:15:34 +01:00
Henri Verbeet
8e059205ba
wined3d: Translate drawable coordinates in flush_to_framebuffer_drawpixels().
2010-11-02 13:17:35 +01:00
Henri Verbeet
3f0d16c5bf
wined3d: Do not use "lockedRect" unless the surface is locked in flush_to_framebuffer_drawpixels().
2010-11-02 13:17:31 +01:00
Henri Verbeet
b66478dfbc
wined3d: Set an A window proc on non-unicode windows.
2010-11-02 13:17:25 +01:00
Francois Gouget
b990617a95
Assorted spelling fixes.
2010-11-02 13:16:57 +01:00
Henri Verbeet
e35b6aa1a7
wined3d: Change surface_translate_frontbuffer_coords() to handle all drawable coordinates.
2010-11-01 13:34:43 +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
7173a56161
wined3d: Don't change GL_TEXTURE* when using the arb fragment pipeline.
2010-11-01 11:43:39 +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
27bf4c3747
wined3d: Remove some redundant state save/restore code from flush_to_framebuffer_drawpixels().
2010-10-29 14:33:57 +02:00
Henri Verbeet
7414ebc975
wined3d: Don't flip the coordinate system in set_blit_dimension().
2010-10-29 14:33:57 +02:00
Henri Verbeet
1e301027dc
wined3d: Only complain about unsupported filtering if we have a reason to.
2010-10-29 14:33:56 +02:00
Henri Verbeet
e832b57a15
wined3d: Move loop state to wined3d_shader_context.
2010-10-29 14:33:56 +02:00
Henri Verbeet
8a4a76f9a7
wined3d: Move "parse_state" to wined3d_shader_context.
2010-10-29 14:33:56 +02:00
Henri Verbeet
f216dba1e3
wined3d: Access reg_maps though ins->ctx in get_loop_control_const().
2010-10-28 18:18:12 +02:00
Henri Verbeet
5b36e29298
wined3d: Access reg_maps though ins->ctx in get_bool_const().
2010-10-28 18:18:12 +02:00
Henri Verbeet
ac2805e5b3
wined3d: Access reg_maps though ins->ctx in shader_hw_mov().
2010-10-28 18:18:12 +02:00
Henri Verbeet
6c5caf7a8b
wined3d: Access reg_maps though ins->ctx in shader_arb_get_register_name().
2010-10-28 18:18:11 +02:00
Henri Verbeet
3a41bbdd71
wined3d: Access reg_maps though ins->ctx in shader_glsl_get_register_name().
...
This is all part of the ongoing work to make the shader backend interface less
dependent on wined3d internals.
2010-10-28 18:18:11 +02:00
Henri Verbeet
5e24ccfd0c
wined3d: Read transform flags from the compile args in pshader_hw_texm3x3spec().
2010-10-27 12:11:49 +02:00
Henri Verbeet
8f5bb62769
wined3d: Read transform flags from the compile args in pshader_hw_texm3x3vspec().
2010-10-27 12:11:45 +02:00
Henri Verbeet
f624d8f7b6
wined3d: Read transform flags from the compile args in pshader_hw_texm3x3tex().
2010-10-26 11:58:34 +02:00
Henri Verbeet
db156977dd
wined3d: Read transform flags from the compile args in pshader_hw_texm3x2tex().
...
Instead of directly from the stateblock. Note that the GLSL backend doesn't
take these flags into account at all. That's probably a bug in the GLSL
backend, but needs tests.
2010-10-26 11:58:31 +02:00
Henri Verbeet
8c36e4ce1d
wined3d: Explicitly pass parameters to shader_arb_ps_local_constants().
2010-10-26 11:58:23 +02:00
Henri Verbeet
5afb593cb2
wined3d: Explicitly pass parameters to shader_arb_vs_local_constants().
2010-10-26 11:58:19 +02: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
6dd9109358
wined3d: Pass a sub-resource index instead of a face + miplevel to cube texture methods.
2010-10-25 14:29:31 +02:00
Henri Verbeet
f0a0714ecd
wined3d: Pass a sub-resource index instead of a miplevel to 2D texture methods.
2010-10-25 14:29:21 +02:00
Henri Verbeet
7f8ea7fffc
wined3d: Pass a sub-resource index instead of a miplevel to volume texture methods.
...
For volume textures this is mostly just a conceptual change, it'll only make a
difference for texture arrays and cube textures.
2010-10-21 16:15:38 +02:00
Henri Verbeet
2b58f80c27
wined3d: Use surface_blt_to_drawable() in IWineD3DSurfaceImpl_BltOverride().
2010-10-21 16:15:31 +02:00
Henri Verbeet
574169174e
wined3d: Check if we can do the blit before messing with surface flags in IWineD3DSurfaceImpl_BltOverride().
...
As an added benefit blit_supported() will now get the rectangles in the
correct coordinate system.
2010-10-21 16:15:25 +02:00
Henri Verbeet
b0c8b4dd95
wined3d: Flip destination coordinates when blitting to an offscreen target in arbfp_blit_surface().
2010-10-21 16:15:20 +02:00
Henri Verbeet
d508a855c1
wined3d: Recognize the SM4 sqrt opcode.
2010-10-20 18:37:07 +02:00
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