Commit Graph

6109 Commits

Author SHA1 Message Date
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