Commit Graph

6254 Commits

Author SHA1 Message Date
Henri Verbeet c1a7323fac wined3d: Avoid some redundant state_pscale() calls. 2013-08-19 12:53:21 +02:00
Henri Verbeet ad147d638c wined3d: Just update a range of constants in walk_constant_heap().
The call overhead from separate calls typically ends up being more expensive
than just updating a few more constants.
2013-08-16 11:55:24 +02:00
Henri Verbeet 37d1e8b79c wined3d: Try to avoid redundant constant updates.
This gives a minor performance improvement. For example, in 3DMark03 Game Test
1 this gives about a 4% improvement, in the Counter Strike: Source stress test
it's about 1%. (NVIDIA GF9600M, Intel T9550, 1024x768).
2013-08-16 11:55:24 +02:00
Henri Verbeet c1af405054 wined3d: Only set fragment pipe uniforms if they're needed by the shader.
In principle the GL driver also checks the location, but it turns out to be
slightly faster to do it ourselves.
2013-08-16 11:55:24 +02:00
Henri Verbeet cbaa17d3cf wined3d: Assume the buffer has a buffer object in buffer_add_dirty_area(). 2013-08-15 16:24:09 +02:00
Henri Verbeet 4eb39ec5f4 wined3d: Make buffer_add_dirty_area() never fail. 2013-08-15 16:24:07 +02:00
Henri Verbeet 5e64fd7049 wined3d: Don't bother downloading buffer contents on destruction. 2013-08-15 16:24:04 +02:00
Stefan Dösinger ba61730daa wined3d: Avoid calculating 1 / (fog_end - fog_start) in the shader. 2013-08-01 20:43:42 +02:00
Rico Schüller 55c190d396 wined3d: Fix typo. 2013-07-24 11:12:45 -05:00
Matteo Bruni 42cfbb825c wined3d: Add a missing destroy_dummy_textures() call. 2013-07-24 11:09:39 -05:00
Matteo Bruni e2cf98eb76 wined3d: Implement special fog behavior for orthogonal projection matrices. 2013-07-24 11:09:31 -05:00
Matteo Bruni c9458882a0 wined3d: Fix handling of cnd instruction with coissue flag. 2013-06-26 18:45:37 +02:00
Stefan Dösinger 248f4b7415 wined3d: Fix the TMP_COLOR optimization with custom fog. 2013-06-21 17:35:07 +02:00
Matteo Bruni 5649746b60 wined3d: Fix NP2 surface repacking in surface_download_data. 2013-06-20 22:14:35 +02:00
Stefan Dösinger 22319c7f9e wined3d: Work around broken FFP fog with ARB shaders. 2013-06-19 20:09:53 +02:00
Stefan Dösinger b648b74191 wined3d: Pass fogstart==fogend to GL in fog table mode. 2013-06-19 20:09:53 +02:00
Henri Verbeet 4272d92f93 wined3d: Avoid the position_float4() fixup if the vertex pipe can handle pre-transformed vertices itself. 2013-06-17 13:34:40 +02:00
Karol Herbst 627aebf774 wined3d: Add Nvidia GeForce GTX 770M. 2013-06-14 13:51:37 +02:00
Maxime Lombard 214d6ed0ba wined3d: Add Nvidia GeForce GTX 670MX. 2013-06-14 13:51:35 +02:00
Henri Verbeet ffc9f535eb wined3d: Handle pre-transformed vertices in the GLSL vertex pipe.
This also avoids a fallback to drawStridedSlow().
2013-06-14 11:46:31 +02:00
Henri Verbeet 8a7ddfbb53 wined3d: Don't use state_colormat() with the GLSL vertex pipe.
None of the code in there should be needed for the GLSL vertex pipe, and the
"untracked materials" counter in particular will trigger an unnecessary
fallback to drawStridedSlow().
2013-06-14 11:46:27 +02:00
Henri Verbeet 4de77fa23f wined3d: Allow a custom pitch to be specified in wined3d_surface_set_mem(). 2013-06-14 11:46:20 +02:00
Henri Verbeet e0494afa00 wined3d: Introduce a helper function for printing floats in GLSL shaders. 2013-06-11 11:33:15 +02:00
Henri Verbeet e8905e360f wined3d: Don't modify the texcoord mask for "projected" cube textures in shader_glsl_tex(). 2013-06-07 11:58:22 +02:00
Henri Verbeet f52d4044eb wined3d: Fix a typo in shader_glsl_generate_ffp_fragment_shader(). 2013-06-07 11:58:20 +02:00
Henri Verbeet d6bc4fe71a wined3d: Allow surface flags to be passed to texture creation functions. 2013-06-06 11:47:19 +02:00
Henri Verbeet 91096dd7ad wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_3d(). 2013-06-06 11:47:07 +02:00
Francois Gouget 145c417e98 wined3d: Make state_fog_vertexpart() static. 2013-06-06 11:47:02 +02:00
Henri Verbeet b23739316c wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_cube(). 2013-06-05 17:31:39 +02:00
Henri Verbeet 9d4cbd6195 wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_create_2d(). 2013-06-05 17:31:39 +02:00
Henri Verbeet 1366e3a5bf wined3d: Pass a wined3d_resource_desc structure to wined3d_texture_init(). 2013-06-05 17:31:39 +02:00
Henri Verbeet 13a38e8d5e wined3d: Pass a wined3d_resource_desc structure to device_parent_create_swapchain_surface(). 2013-06-04 10:14:28 +02:00
Henri Verbeet a4d2660c9b wined3d: Pass a wined3d_resource_desc structure to device_parent_create_texture_surface(). 2013-06-04 10:14:26 +02:00
Henri Verbeet 1276a3db04 wined3d: Properly set resource dimensions in wined3d_texture_init(). 2013-06-04 10:14:24 +02:00
Henri Verbeet a3f59cf618 wined3d: Allow textures as swapchain surfaces. 2013-06-03 11:30:43 +02:00
Henri Verbeet 48d470f60c wined3d: Add base format info for some typeless formats. 2013-06-03 11:30:34 +02:00
Henri Verbeet 51bbfa5ced wined3d: Allow 32 bpc UINT formats in vertex declarations. 2013-06-03 11:30:31 +02:00
Kyle Luna 7f5f166a19 wined3d: Add Mobility Radeon HD 4200. 2013-05-31 18:25:01 +02:00
Henri Verbeet e4f50de336 wined3d: Get rid of the unused "half" GLSL variable in shader_glsl_ffp_vertex_lighting(). 2013-05-31 11:57:40 +02:00
Francois Gouget 49dbf2464f wined3d: Add a trailing '\n' to a shader_addline() call. 2013-05-30 20:19:33 +02:00
Henri Verbeet 8352d45da5 wined3d: Rename "fogmode" to "wined3d_ffp_ps_fog_mode".
This is mostly for consistency with wined3d_ffp_vs_fog_mode.
2013-05-30 10:57:15 +02:00
Henri Verbeet e4816996c3 ddraw: Handle the "DirectDrawRenderer" registry key in wined3d. 2013-05-30 10:57:08 +02:00
Henri Verbeet 74c5a22daa wined3d: Only invalidate the current ffp vertex shader if the light type changed.
As opposed to any time a light parameter changed.
2013-05-29 12:12:33 +02:00
Henri Verbeet bdd97858bf wined3d: Only write gl_ClipVertex if clipping is enabled in shader_glsl_generate_ffp_vertex_shader(). 2013-05-29 12:12:32 +02:00
Henri Verbeet 1c2392ddb0 wined3d: Only write gl_PointSize for point primitives in shader_glsl_generate_ffp_vertex_shader(). 2013-05-29 12:12:32 +02:00
Henri Verbeet 2014141a25 wined3d: Add support for GLSL based fixed function vertex shaders. 2013-05-29 12:12:32 +02:00
Henri Verbeet 50a3864515 wined3d: Just remove the D3DCMP_NOTEQUAL / D3DCMP_EQUAL FIXME in state_zfunc().
As far as I'm aware this just works, I'm not aware of any open issues related
to it.
2013-05-28 14:55:08 +02:00
Henri Verbeet 97b6299eaf wined3d: Expose WINED3DVTXPCAPS_TEXGEN_SPHEREMAP.
Since we already implement it. Tweening will likely never work with fixed
function GL.
2013-05-28 14:55:00 +02:00
Henri Verbeet b5df8bd4f5 wined3d: Use debug_d3dstate() in compile_state_table() as well. 2013-05-28 14:54:54 +02:00
Henri Verbeet 273dcbf564 wined3d: Get rid of the unused "streams" field from struct wined3d_vertex_declaration. 2013-05-27 19:28:57 +02:00
Henri Verbeet b35045ba25 wined3d: Don't create FBOs in context_bind_fbo().
We can just do this in context_create_fbo_entry() now.
2013-05-27 19:28:52 +02:00
Henri Verbeet 7ca6839c94 wined3d: Also clear context->current_fbo in context_apply_blit_state().
The draw buffer handling code depends on this being current. This fixes a bug
exposed by commit 075fa6547c.
2013-05-27 19:28:47 +02:00
Marcus Meissner 589b48e495 wined3d: Remove now useless NULL check (Coverity). 2013-05-27 19:02:43 +02:00
Stefan Dösinger 10929cbe43 wined3d: Correct an ERR/FIXME. 2013-05-21 19:41:12 +02:00
Stefan Dösinger 9287bb80dc d3d: d3d9ex does not do video memory accounting for D3DPOOL_DEFAULT resources. 2013-05-20 19:08:28 +02:00
Stefan Dösinger 6621b11ad1 wined3d: Don't pass the device to atifs_free_ffpshader. 2013-05-15 19:04:19 +02:00
Stefan Dösinger 121bd9d201 wined3d: Initialize the gl_info pointer from the context. 2013-05-15 19:04:16 +02:00
Stefan Dösinger b12ec91c09 wined3d: Don't log the device pointer in shader_arb_select. 2013-05-15 19:04:04 +02:00
Stefan Dösinger 71723ad086 wined3d: Disable the fixed function vertex pipeline when ARB vertex programs are used. 2013-05-14 18:37:13 +02:00
Stefan Dösinger 6fce4d4547 wined3d: Pass the state and private data to shader_select. 2013-05-14 18:37:08 +02:00
Stefan Dösinger 47f385adf0 wined3d: Add a separate function for disabling shaders. 2013-05-14 18:37:04 +02:00
Stefan Dösinger 036a62a245 wined3d: Explicitly pass the state to shader_load_constants. 2013-05-14 18:36:59 +02:00
Stefan Dösinger 5d138799ea wined3d: Don't access the stateblock from shader_arb_load_constants_internal. 2013-05-14 18:36:53 +02:00
Alexandre Julliard 02d56bd3a2 wined3d: Don't bother to unregister classes at process exit. 2013-05-14 11:33:29 +02:00
Stefan Dösinger 260e1cb0b3 wined3d: Pass the pixel shader input signature to shader_arb_generate_vshader. 2013-05-13 19:57:11 +02:00
Stefan Dösinger e25b968499 wined3d: Fix a ~0U assignment. 2013-05-13 19:57:09 +02:00
Austin English c012b1a13c wined3d: Add NVidia GeForce GT 630. 2013-05-08 12:39:55 +02:00
Matteo Bruni 58dc0346d6 wined3d: Remove some, now unnecessary, glReadBuffer(GL_NONE) calls.
This reverts parts of e4efcea223 and
8e12b2e61e.
2013-04-26 16:28:22 +02:00
Matteo Bruni bda63dd4a9 wined3d: Set GL_NONE for glReadBuffer / glDrawBuffer on FBO initialization. 2013-04-26 16:28:19 +02:00
Stefan Dösinger 76941eff00 wined3d: Move gl_info->limits.max_texture_stages to d3d_info. 2013-04-25 20:25:10 +02:00
Stefan Dösinger ac99d53991 wined3d: Move valid_rt_mask to wined3d_d3d_info. 2013-04-25 20:25:10 +02:00
Stefan Dösinger cb01fb27b1 wined3d: Move max_ffp_textures to wined3d_d3d_info. 2013-04-25 20:25:09 +02:00
Stefan Dösinger 768e8c098c wined3d: Move shader limits to wined3d_d3d_info. 2013-04-25 20:25:09 +02:00
Stefan Dösinger f7580726b0 wined3d: Don't pass the device to gen_ffp_frag_op. 2013-04-25 20:25:08 +02:00
Stefan Dösinger 820c12c98f wined3d: Access gl_info and d3d_info from the context in find_arb_*_compile_args. 2013-04-25 20:25:08 +02:00
Stefan Dösinger 16e862ba9d wined3d: Add a new structure for d3d limits and other info. 2013-04-25 20:25:07 +02:00
Henri Verbeet 471991eb9a wined3d: Introduce a wined3d_vertex_pipe_ops structure. 2013-04-25 13:39:56 +02:00
Stefan Dösinger c371af0d5c wined3d: Get rid of device->view_ident. 2013-04-24 18:26:56 +02:00
Henri Verbeet 6fe9e0f033 wined3d: Disable occlusion query support if the implementation has 0 counter bits. 2013-04-23 15:35:08 +02:00
Stefan Dösinger f663683980 wined3d: Remove leftover texture accesses in GLSL shader generation. 2013-04-22 17:56:05 +02:00
Matteo Bruni 197cdcc9ae wined3d: Use ARB_internalformat_query2 for the other texture format caps too. 2013-04-22 17:55:38 +02:00
Matteo Bruni 6fa87980ca wined3d: Use ARB_internalformat_query2 to check for texture format rendering and blending support, where available. 2013-04-22 17:55:36 +02:00
Matteo Bruni 1d17176a0d wined3d: Add ARB_internalformat_query2 GL extension. 2013-04-22 17:55:33 +02:00
Henri Verbeet c756496326 wined3d: Rename the device "strided_streams" field to "stream_info".
The "strided" in there is mostly historic, it hasn't really been accurate for
a while now.
2013-04-22 15:26:11 +02:00
Henri Verbeet 82a06a0a36 wined3d: Get rid of the unused TRACE_STRIDED macro. 2013-04-22 15:26:04 +02:00
Henri Verbeet ee6d17cd54 wined3d: Add support for GL_ARB_debug_output. 2013-04-19 10:43:40 +02:00
Henri Verbeet 5115f55eeb wined3d: Use WGL_ARB_create_context when available. 2013-04-19 10:43:37 +02:00
Henri Verbeet 3004baeb62 wined3d: Simplify wined3d_check_device_format(). 2013-04-18 11:42:57 +02:00
Henri Verbeet ff48c3ba58 wined3d: Properly check if a format has a conversion function in wined3d_check_device_format(). 2013-04-18 11:42:50 +02:00
Henri Verbeet 0e32c9a247 wined3d: Add a performance warning for mapping a dynamic surface without WINED3D_MAP_DISCARD. 2013-04-18 11:42:47 +02:00
Henri Verbeet c0a84454c4 wined3d: Introduce a separate debug channel for performance warnings. 2013-04-17 11:36:22 +02:00
Henri Verbeet 42208d083c wined3d: Get rid of the unused WINED3DFMT_FLAG_FOURCC flag. 2013-04-17 11:36:19 +02:00
Henri Verbeet 84219f1964 wined3d: Immediate constants should always have a valid location in shader_glsl_load_constantsF(). 2013-04-17 11:36:17 +02:00
Stefan Dösinger ea69fa943f wined3d: Enable GL_ARB_texture_rectangle in GLSL ffp fragment shaders. 2013-04-16 17:49:11 +02:00
Stefan Dösinger c6ed62735d wined3d: Refuse to create NPOT textures without GL support. 2013-04-16 17:48:20 +02:00
Henri Verbeet 1a551fe5f9 wined3d: Immediate constants should always have a valid location in shader_glsl_load_constantsB(). 2013-04-16 12:14:03 +02:00
Henri Verbeet 302ad29742 wined3d: Constants in constants_set should always have a valid location in shader_glsl_load_constantsB(). 2013-04-16 12:14:01 +02:00
Henri Verbeet 00cc81dc69 wined3d: Simplify DISCARD / READONLY handling in wined3d_buffer_map() a bit. 2013-04-16 12:13:59 +02:00
Stefan Dösinger 76234750a5 wined3d: Don't hardcode the ps_1_3 sampler limit in find_ps_compile_args. 2013-04-15 17:46:00 +02:00
Stefan Dösinger 0680b1758d wined3d: Store ps 1.4 texture types in ps_compile_args. 2013-04-15 17:45:58 +02:00
Stefan Dösinger 547be26d90 wined3d: Use the np2_fixup to find out if a RECT texture is used. 2013-04-15 17:45:54 +02:00
Stefan Dösinger 196c88cfc4 wined3d: 1x1 texures have a power of two size. 2013-04-15 17:45:44 +02:00
Henri Verbeet 12a05be5b6 wined3d: Use GL_STATIC_DRAW_ARB for static buffers.
This mostly affects the initial placement of the VBO. If an application really
does use a static buffer as if it was a dynamic one the driver is likely to
migrate it out of VRAM anyway, we shouldn't penalize more well-behaved
applications for that.
2013-04-15 15:16:11 +02:00
Matteo Bruni 3e564b1e93 wined3d: Use 0 as GL internal format for WINED3DFMT_NULL. 2013-04-11 17:38:18 +02:00
Sam Edwards 33d31a3547 wined3d: Properly handle backbuffer_width/_height=0 in wined3d_device_reset. 2013-04-11 12:06:49 +02:00
Stefan Dösinger 822bcfdf74 wined3d: Remove the unused idx_data parameter from draw_primitive. 2013-04-10 16:16:44 +02:00
Matteo Bruni f6d2737e62 wined3d: Make the entire surface current after clearing a discarded depth buffer. 2013-04-10 15:46:49 +02:00
Matteo Bruni 50a91e11c6 wined3d: Update comment on top of format_texture_info[]. 2013-04-10 15:46:30 +02:00
Matteo Bruni 075fa6547c wined3d: Avoid redundant glDrawBuffer() calls. 2013-04-10 15:46:26 +02:00
Matteo Bruni 0d563a69dd wined3d: Fix typo, really check whether color fixups are supported. 2013-04-10 15:46:22 +02:00
Matteo Bruni a0c06a94aa wined3d: Reset all the dummy textures to 0 on destroy. 2013-04-10 15:46:18 +02:00
Matteo Bruni 46fa0448d9 wined3d: Remove useless glClearxxx calls. 2013-04-10 15:46:14 +02:00
Stefan Dösinger 8c2874ee99 wined3d: Put local constants into the shader code in ARB shaders. 2013-04-09 16:33:31 +02:00
Stefan Dösinger 667f4225b5 wined3d: Put local constants into the shader code again.
This is essentially a revert of cd7825c893,
with proper precision.
2013-04-09 16:33:25 +02:00
André Hentschel a2bebdcc7c wined3d: Report Win 8 when appropriate. 2013-04-04 19:30:08 +02:00
Sam Edwards 6c43f90c50 wined3d: Ignore WS_VISIBLE and WS_EX_TOPMOST when dropping out of fullscreen. 2013-04-03 11:33:52 +02:00
Sam Edwards 6ab0ff5b9d wined3d: Make fullscreen windows use HWND_TOPMOST instead of HWND_TOP. 2013-04-03 11:33:38 +02:00
Jérôme Gardou b7649efb2d wined3d: Initialize adapter device name even if opengl is not used. 2013-04-03 11:33:16 +02:00
Frédéric Delanoy 8e9af2869c wined3d: Add NVIDIA GeForce 410M. 2013-03-27 12:03:49 +01:00
Daniel Jelinski d8a86da66e wined3d: Add NVidia GeForce 315M. 2013-03-26 12:07:59 +01:00
Andrew Talbot e6f5829ae1 wined3d: Avoid signed-unsigned integer comparisons. 2013-03-05 09:50:03 +01:00
Ričardas Barkauskas cf12f51b15 wined3d: Make shader buffer dynamic. 2013-02-26 11:28:44 +01:00
Ričardas Barkauskas b5ff0a6983 wined3d: Rename bsize to content_size to reflect usage. 2013-02-26 11:27:39 +01:00
Matteo Bruni 5e28b0c974 wined3d: Add RESZ support. 2013-02-19 10:39:47 +01:00
Matteo Bruni 25d0d0876d wined3d: Make (wined3d_)surface_depth_blt_fbo handle locations other than SFLAG_INTEXTURE. 2013-02-19 10:39:42 +01:00
Stefan Dösinger 3221e7fdd0 wined3d: Reserve one vs constant on r200. 2013-02-11 11:24:35 +01:00
Stefan Dösinger 425eab4cf9 wined3d: Use the ARBfp ffp pipeline only if ARBfp is supported. 2013-02-11 11:24:20 +01:00
Henri Verbeet c37594d3a9 wined3d: Add WINED3DFMT_INST to the format table.
We need the format to exist in apply_format_fixups() in particular.
2013-02-08 19:31:18 +01:00
Michael Stefaniuc 50a9fb579c wined3d: Remove ERR() on HeapAlloc failure for small sizes known at compile time. 2013-02-06 09:04:41 +01:00
Francois Gouget 68b22623b2 wined3d: debug_{d3dbasis, d3ddegree}() are not used anymore so remove them. 2013-01-29 11:48:46 +01:00
Francois Gouget e7adf7fbf7 wined3d: Make device_stream_info_from_declaration() static. 2013-01-29 11:48:42 +01:00
Matteo Bruni 59171c06ce wined3d: Rebind texture before checking for its content in check_fbo_compat(). 2013-01-29 11:48:26 +01:00
Henri Verbeet c9ca9c5a7e wined3d: Get rid of CheckBumpMapCapability().
The color fixup being supported is implied by WINED3DFMT_FLAG_TEXTURE.
2013-01-28 14:05:41 +01:00
Henri Verbeet 4cdb03a76e wined3d: Get rid of CheckTextureCapability(). 2013-01-28 14:05:38 +01:00
Henri Verbeet 7c8dab24e6 wined3d: Introduce a format flag for texturing. 2013-01-28 14:05:34 +01:00
Michael Stefaniuc b28aff0dd7 wined3d: Use assignment instead of memcpy to copy structs. 2013-01-28 14:00:18 +01:00
Stefan Dösinger 1a3f741643 wined3d: Remove draw_primitive_strided. 2013-01-25 11:30:33 +01:00
Stefan Dösinger 149a85c2e7 d3d: Remove high level patch support.
No Windows driver ever exposed this, and no game uses this. The
only application that used this feature is a DirectX 8 SDK sample.
2013-01-25 11:29:41 +01:00
Henri Verbeet 6c6565dea0 wined3d: Get rid of a superfluous texture copy in check_fbo_compat(). 2013-01-25 11:18:19 +01:00
Henri Verbeet dc21460397 wined3d: Replace "VertexShaderMode" and "PixelShaderMode" with shader model limits. 2013-01-25 11:18:13 +01:00
Henri Verbeet 6f04922de0 wined3d: Support all fixups in shader_none_color_fixup_supported(). 2013-01-25 11:18:09 +01:00
Henri Verbeet 8347c67c69 wined3d: Get rid of CheckWrapAndMipCapability(). 2013-01-24 14:33:05 +01:00
Henri Verbeet 63902bfd5c wined3d: Get rid of CheckPostPixelShaderBlendingCapability(). 2013-01-24 14:33:02 +01:00
Henri Verbeet b882a70282 wined3d: Properly set WINED3DFMT_FLAG_VTF in init_format_texture_info(). 2013-01-24 14:32:58 +01:00
Stefan Dösinger aaa11492db wined3d: Ignore clears if count = 0 and rects != NULL. 2013-01-23 19:16:32 +01:00
Henri Verbeet d6105c5f0f wined3d: Get rid of CheckFilterCapability(). 2013-01-23 12:48:45 +01:00
Henri Verbeet 6527277a58 wined3d: Properly set WINED3DFMT_FLAG_FILTERING in init_format_texture_info(). 2013-01-23 12:48:41 +01:00
Henri Verbeet 3f21757702 wined3d: Get rid of select_shader_mode(). 2013-01-23 12:48:34 +01:00
Henri Verbeet c90a1e5e21 wined3d: Get rid of CheckSrgbReadCapability(). 2013-01-22 12:13:49 +01:00
Henri Verbeet 9307327ede wined3d: Properly set WINED3DFMT_FLAG_SRGB_WRITE in init_format_texture_info(). 2013-01-22 12:13:46 +01:00
Henri Verbeet 5ce220eb2f wined3d: Add sRGB writes to the shader backend and fragment pipe caps. 2013-01-22 12:13:42 +01:00
Henri Verbeet c525cf381d wined3d: Move "vs_clipping" to the shader caps. 2013-01-21 12:51:22 +01:00
Henri Verbeet 0e0e3b76f5 wined3d: Move "ffp_proj_control" to the fragment caps. 2013-01-21 12:51:21 +01:00
Henri Verbeet 75a38fa2fa wined3d: Get rid of the select_shader_mode() call in wined3d_get_device_caps().
The shader backend already returns the correct caps.
2013-01-21 12:51:20 +01:00
Henri Verbeet e73aa3e83d wined3d: Get rid of vs_selected_mode / ps_selected_mode from struct wined3d_device.
These are only used by wined3d_shader_create_vs() /
wined3d_shader_create_ps(), but they're redundant there since the "none"
shader backend doesn't support any shader version.
2013-01-18 13:29:04 +01:00
Henri Verbeet c10c9fba76 wined3d: Replace InitAdapters() with a function to initialize a single adapter. 2013-01-18 13:29:04 +01:00
Henri Verbeet d183f118cf wined3d: Introduce a separate function for intializing the adapter's framebuffer configs. 2013-01-18 13:29:03 +01:00
Henri Verbeet 6c7cce55a7 wined3d: Get rid of the "opengl" field in struct wined3d_adapter. 2013-01-17 12:22:05 +01:00
Henri Verbeet 1249976eb6 wined3d: Get rid of the surface_type parameter to wined3d_check_device_format(). 2013-01-17 12:22:01 +01:00
Henri Verbeet ce912d5149 wined3d: Get rid of the surface_type parameter to wined3d_surface_create(). 2013-01-17 12:21:55 +01:00
Henri Verbeet 31e8976910 wined3d: Get rid of the surface_type parameter to wined3d_swapchain_create(). 2013-01-16 12:22:57 +01:00
Henri Verbeet f3dbbba48e wined3d: Initialize the various backends in wined3d_adapter_init_nogl() as well. 2013-01-16 12:22:43 +01:00
Stefan Dösinger 151407e5bf wined3d: Shadow buffers in sysmem when software vertexprocessing is used. 2013-01-15 16:24:50 +01:00
Henri Verbeet 7595a58085 ddraw: Explicitly create a wined3d object without 3D capabilities when creating a normal wined3d object fails. 2013-01-14 11:01:53 +01:00
Henri Verbeet 3e7c800e9c wined3d: Get rid of the user_stream field from wined3d_state.
All remaining uses are equivalent to "device->up_strided". (Which should of
course eventually go away as well.)
2013-01-07 11:12:23 +01:00
Henri Verbeet 5b42297a31 wined3d: Remove a redundant condition in the indexbuffer() state handler.
Strided draws don't use VBOs.
2013-01-07 11:12:19 +01:00
Henri Verbeet 44b462c9b4 wined3d: Just restore state->user_stream in wined3d_device_draw_indexed_primitive_strided(). 2013-01-04 12:17:01 +01:00
Henri Verbeet b557f5ba3a wined3d: Don't touch state->user_stream in wined3d_device_process_vertices().
device_stream_info_from_declaration() no longer cares about
state->user_stream.
2013-01-04 12:16:56 +01:00
Henri Verbeet 76a2864a3b wined3d: state->user_stream is always FALSE in device_stream_info_from_declaration().
Since user pointer draws were removed, state->user_stream will only ever be
set for "strided" draws, and device_stream_info_from_declaration() is never
called for those.
2013-01-04 12:16:49 +01:00
Henri Verbeet 3046a2cbef wined3d: Get rid of some useless braces in draw_primitive(). 2013-01-03 16:43:45 +01:00
Henri Verbeet 85d12b320c wined3d: Recognize any "X.Org" GL vendor as Mesa. 2013-01-03 16:43:36 +01:00
Henri Verbeet cf4f09cf85 wined3d: Simplify select_card_amd_mesa() a bit.
We can use the same code for the Gallium and "classic" drivers, and the
classic drivers are no longer supported upstream anyway.
2013-01-03 16:43:32 +01:00
Caron Jensen e51bd12315 wined3d: Add new Radeon HD 6570 GL renderer string. 2012-12-28 20:32:40 +01:00
Andrew Talbot c61b14cbcc wined3d: Indentation fix. 2012-12-24 13:30:20 +01:00
Jiang Yike 44d5d3951b wined3d: Add recognition for NVIDIA GeForce GTX 660 Ti, 660, 650 Ti and 650. 2012-12-19 14:38:59 +01:00
Stefan Dösinger 8cf55497cc wined3d: Remove draw_*_primitive_up.
Note that I can't remove the state->user_stream mess yet, because of
draw_*_primitive_strided. Another patchset will deal with that.
2012-12-19 12:53:28 +01:00
Piotr Caban b71af96b9c wined3d: Recognize Nvidia GT610 card. 2012-12-18 12:37:59 +01:00
Caron Jensen 86cb15b235 wined3d: Recognize Nvidia GT520 cards. 2012-12-14 18:58:10 +01:00
Francois Gouget 130cabbca6 wined3d: Remove a stray semi-colon from the spec file. 2012-12-11 12:03:43 +01:00
Henri Verbeet 78984cf46c wined3d: Get rid of ENTER_GL / LEAVE_GL. 2012-12-11 12:03:39 +01:00
Henri Verbeet 9fbd3bbed6 d3d10core: Implement d3d10_device_PSGetSamplers(). 2012-12-10 11:25:49 +01:00
Henri Verbeet 4c4131cd78 d3d10core: Implement d3d10_device_PSSetSamplers(). 2012-12-10 11:25:46 +01:00
Henri Verbeet 2c01e11eca d3d10core: Implement d3d10_device_GSGetSamplers(). 2012-12-07 10:35:51 +01:00
Henri Verbeet 047d607e07 d3d10core: Implement d3d10_device_GSSetSamplers(). 2012-12-07 10:35:44 +01:00
Alexandre Julliard 13f126498b wined3d: Call wglSwapBuffers through the GL driver function table. 2012-12-06 14:10:04 +01:00
Henri Verbeet c98767a425 d3d10core: Implement d3d10_device_VSGetSamplers(). 2012-12-06 12:55:59 +01:00
Henri Verbeet e5805c316c d3d10core: Implement d3d10_device_VSSetSamplers(). 2012-12-06 12:55:50 +01:00
Stefan Dösinger 8e05ee6994 wined3d: Add GL_ALPHA to the atifs argument replicator debug function. 2012-12-05 12:48:11 +01:00
Stefan Dösinger 799ea13fb9 wined3d: Use sign fixup for the atifs bumpenv matrix. 2012-12-05 12:48:04 +01:00
Stefan Dösinger e53aa8c9e2 wined3d: Test the correct program for native limits. 2012-12-05 12:47:55 +01:00
Stefan Dösinger 33802da4f3 wined3d: Correctly count used stages in the atifs pipeline. 2012-12-05 12:47:39 +01:00
Stefan Dösinger 7b95df03c6 wined3d: Bind the src in a manual presentation blit. 2012-12-05 12:47:33 +01:00
Henri Verbeet 6ac3c48384 d3d10core: Implement d3d10_device_PSGetConstantBuffers(). 2012-12-05 12:44:07 +01:00
Henri Verbeet b034f49183 d3d10core: Implement d3d10_device_PSSetConstantBuffers(). 2012-12-05 12:44:01 +01:00
Henri Verbeet d906c94382 d3d10core: Implement d3d10_device_GSGetConstantBuffers(). 2012-12-04 00:02:06 +01:00
Henri Verbeet feda45279e d3d10core: Implement d3d10_device_GSSetConstantBuffers(). 2012-12-04 00:02:00 +01:00
Henri Verbeet 1835e2f5ba wined3d: Add support for ARB_instanced_arrays. 2012-12-03 12:37:49 +01:00
Henri Verbeet 52c6abb485 wined3d: Resolve the instance count for instanced arrays in load_numbered_arrays(). 2012-12-03 12:37:42 +01:00
Stefan Dösinger 483d025795 wined3d: Add an explicit break in case of unhandled BUMPENVMAP. 2012-12-03 12:37:14 +01:00
Henri Verbeet 027ef4ccdb d3d10core: Implement d3d10_device_VSGetConstantBuffers(). 2012-11-30 11:42:54 +01:00
Henri Verbeet ae5e15319e d3d10core: Implement d3d10_device_VSSetConstantBuffers(). 2012-11-30 11:42:48 +01:00
Frédéric Delanoy a6db668895 wined3d: Add some 'fall through' comments (coverity). 2012-11-30 11:42:24 +01:00
Henri Verbeet 56b3953207 wined3d: Fix a typo in wined3d_device_set_stream_output(). 2012-11-29 00:16:50 +01:00
Henri Verbeet 5d9d20ee0e wined3d: Also unbind stream outputs and the geometry shader in stateblock_unbind_resources(). 2012-11-29 00:16:44 +01:00
Henri Verbeet 7f62678c16 d3d10core: Implement d3d10_device_DrawIndexedInstanced(). 2012-11-27 16:54:57 +01:00
Henri Verbeet eefe6346a9 wined3d: Properly handle scalar destinations in shader_glsl_conditional_move().
In particular, we modify dst.write_mask in the code further down in order to
mask out unused channels, but the writemask is ignored for scalar registers.
Since all that code is redundant anyway for scalar destinations, we can just
reuse the special case for scalar src0.
2012-11-27 16:54:50 +01:00
Henri Verbeet dc67be012f d3d10core: Implement d3d10_device_SOGetTargets(). 2012-11-23 14:40:36 +01:00
Henri Verbeet 5b781d709d d3d10core: Implement d3d10_device_SOSetTargets(). 2012-11-23 14:40:30 +01:00
Henri Verbeet d0d213f7d1 d3d10core: Implement d3d10_device_IAGetIndexBuffer(). 2012-11-21 13:25:57 +01:00
Henri Verbeet 79f0b4d977 d3d9: Avoid resetting device state for d3d9ex resets. 2012-11-20 11:44:27 +01:00
Henri Verbeet 94ab9d5ef3 wined3d: Update the scissor rect and viewport even on redundant wined3d_device_set_render_target() calls. 2012-11-19 11:46:55 +01:00
Henri Verbeet ffd892f6dd wined3d: Make state_geometry_shader() static. 2012-11-16 11:39:50 +01:00
Christian Inci 83ed5efb31 wined3d: Add support for nVidia GT 640M. 2012-11-15 21:22:06 +01:00
Henri Verbeet 9a27b0ad71 wined3d: Add support for geometry shaders to the GLSL shader backend. 2012-11-15 12:19:36 +01:00
Henri Verbeet 25c449247f d3d10core: Implement d3d10_device_GSGetShader(). 2012-11-14 11:27:44 +01:00
Henri Verbeet 9081f8afb1 d3d10core: Implement d3d10_device_GSSetShader(). 2012-11-14 11:27:40 +01:00
Henri Verbeet 0a7b32e3f0 wined3d: Handle relative addresses in the common code in shader_glsl_get_register_name(). 2012-11-12 12:15:30 +01:00
Henri Verbeet 10d46bc042 wined3d: Add support for GLSL based fixed function fragment shaders. 2012-11-12 12:15:25 +01:00
Matteo Bruni a7956c4c4f wined3d: Pop control frames in disabled if branches (ARB shader backend). 2012-11-09 16:42:56 +01:00
Matteo Bruni b532284a9e wined3d: Ensure GL_FRAGMENT_PROGRAM_ARB is enabled when using ARB shaders. 2012-11-09 16:42:53 +01:00
Henri Verbeet 986f4cb9b1 wined3d: Introduce a separate function for generating the sRGB write GLSL code. 2012-11-09 11:30:25 +01:00
Henri Verbeet f6d05fbae6 wined3d: Introduce a separate function for generating the fixed function fog GLSL code. 2012-11-09 11:30:22 +01:00
Henri Verbeet 02250bb1bd wined3d: Introduce a separate function for initializing ps uniform locations. 2012-11-08 15:37:48 +01:00
Henri Verbeet c9f4cfc96a wined3d: Introduce a separate function for initializing vs uniform locations. 2012-11-08 15:37:48 +01:00
Henri Verbeet b42e02ce9b wined3d: Use the correct RGTC constant in format_texture_info. 2012-11-08 15:37:47 +01:00
Alexandre Julliard 449deda62f wined3d: Link directly to opengl32. 2012-11-08 15:37:44 +01:00
Alexandre Julliard cf2b981ce0 wined3d: Make use of the generated wgl.h header. 2012-11-07 18:12:04 +01:00
Henri Verbeet e8b0de1e14 wined3d: Use more consistent names for the various bumpenv uniforms. 2012-11-07 11:57:29 +01:00
Henri Verbeet 9b118257c4 wined3d: Introduce a separate structure for the ps specific fields in struct glsl_shader_prog_link. 2012-11-07 11:57:27 +01:00
Henri Verbeet ffd5e3eb81 wined3d: Introduce a separate structure for the vs specific fields in struct glsl_shader_prog_link. 2012-11-06 16:02:34 +01:00
Henri Verbeet b8bb2a4f85 wined3d: Use the shader object ids as program key. 2012-11-06 16:02:34 +01:00
Henri Verbeet 0e856abf6d wined3d: Enable or disable the fragment pipe in shader_select(). 2012-11-05 11:30:33 +01:00
Henri Verbeet d74cb4571b wined3d: Simplify shader selection. 2012-11-05 11:30:32 +01:00
Henri Verbeet 5059da9e32 wined3d: Don't depend on device internals in fragment_pipeline.alloc_private().
In particular, device->shader_backend and device->shader_priv aren't
initialized yet when the fragment pipe is initialized.
2012-10-29 10:47:03 +01:00
Henri Verbeet 17e33e9b27 wined3d: Make the shader backend responsible for controlling the fixed function fragment pipe. 2012-10-25 11:48:31 +02:00
Henri Verbeet 2bf46c60fb wined3d: Replace the face and level parameters to device_parent_create_texture_surface() with the sub-resource index. 2012-10-25 11:48:25 +02:00
Rico Schüller deae923cd8 wined3d: Fix return value for WINED3DFMT_ATI2N in CheckTextureCapability(). 2012-10-24 19:37:15 +02:00
Henri Verbeet 41c8f1ef8a wined3d: Remove some dead code from gen_ffp_instr(). 2012-10-24 11:24:25 +02:00
Henri Verbeet ddbe791d37 wined3d: Set texture_level in surface_set_texture_target() as well. 2012-10-24 11:24:22 +02:00
Henri Verbeet 672ad06108 wined3d: Get rid of the mostly unused "num_textures_used" field from arbfp_ffp_desc. 2012-10-23 12:11:26 +02:00
Henri Verbeet 6f025deba6 wined3d: Move shader_is_pshader_version() and shader_is_vshader_version() to the ARB program shader backend. 2012-10-23 12:11:18 +02:00
Henri Verbeet 81ae7f606b wined3d: Explicitly check the shader type in shader_generate_glsl_declarations(). 2012-10-23 12:11:13 +02:00
Henri Verbeet c490fb37cf wined3d: Implement WINED3DSIH_MOVC in the GLSL shader backend. 2012-10-22 11:44:22 +02:00
Henri Verbeet 7a437c29f3 wined3d: Merge a couple of shader type specific blocks in shader_generate_glsl_declarations(). 2012-10-22 11:44:20 +02:00
Henri Verbeet b96b4c63ee wined3d: Use shader_glsl_get_prefix() in shader_glsl_gen_sample_code(). 2012-10-22 11:44:02 +02:00
Henri Verbeet db3bdb0a76 wined3d: Also read comments in shader_sm1_is_end(). 2012-10-22 11:43:59 +02:00
Henri Verbeet 6beb7dc1a8 wined3d: Merge most of the code for shader_glsl_cmp() and shader_glsl_cnd(). 2012-10-18 22:32:19 +02:00
Henri Verbeet b72ab48ed8 wined3d: Implement WINED3DSIH_ROUND_NI in the GLSL shader backend. 2012-10-18 22:32:14 +02:00
Henri Verbeet 0c1dd7f7d1 wined3d: Explicitly check the shader type in shader_glsl_load_constantsF(). 2012-10-18 22:32:09 +02:00
Henri Verbeet 7365f9e6af wined3d: Explicitly check the shader type in shader_glsl_get_register_name(). 2012-10-18 22:32:03 +02:00