484 Commits

Author SHA1 Message Date
Gerald Pfeifer
07c8120b57 wined3d: Remove variable dlc_tmp which is not really used from shader_arb_generate_pshader. 2010-04-21 15:35:07 +02:00
Henri Verbeet
c7a1848656 wined3d: Store render targets as IWineD3DSurfaceImpl pointers in the device. 2010-04-20 11:14:30 +02:00
Roderick Colenbrander
bccfd7cc06 wined3d: Add BLT_OP_COLOR_FILL to blit_supported and use it in BltOverride. 2010-04-15 14:20:48 +02:00
Henri Verbeet
8eb2a2cf0c wined3d: Disable strict draw ordering by default.
While some performance hit from the extra flushes was expected and would be
acceptable, the performance hit can be over 50% on some configurations, which
clearly isn't acceptable. This patch introduces a "StrictDrawOrdering"
registry key for applications affected by this, until we have a more
structural solution.
2010-04-13 21:13:36 +02:00
Roderick Colenbrander
76a9712779 wined3d: Add an initial implementation of arbfp_blit_surface. 2010-04-09 16:50:21 +02:00
Roderick Colenbrander
e7a71e15b5 wined3d: Turn blit_shader color_fixup_supported into blit_supported. 2010-04-07 18:13:35 +02:00
Roderick Colenbrander
3b6aea5934 wined3d: Move palette uploading code over to arbfp blit_shader. 2010-04-06 13:53:15 +02:00
Henri Verbeet
57cfd613a5 wined3d: Explicitly set the state handler to NULL for states with a representative.
We should never call the handler for states that have a rep.
2010-04-01 18:12:42 +02:00
Henri Verbeet
03c472bff0 wined3d: Don't call directly into the state table. 2010-04-01 18:12:42 +02:00
Roderick Colenbrander
a7d3b616c4 wined3d: Add color_fill to blit_shader. 2010-03-30 13:54:24 +02:00
Henri Verbeet
3aaa6ee6e7 wined3d: Rename GlPixelFormatDesc to wined3d_format_desc. 2010-03-19 14:31:47 +01:00
Roderick Colenbrander
27a96e477a wined3d: Start moving paletted texture support to the blit_shader. 2010-03-19 13:15:21 +01:00
Henri Verbeet
18ec2525a4 wined3d: Store the swapchain instead of the surface in the context. 2010-03-16 11:44:44 +01:00
Roderick Colenbrander
c0ef7a1a93 wined3d: Move the 8-bit palette shader code over to the blit_shader backend. 2010-03-03 12:53:51 +01:00
Roderick Colenbrander
922ad80f42 wined3d: Rename yuv to complex in order to prepare for 8-bit palette fixups using the same code. 2010-03-03 12:53:41 +01:00
Henri Verbeet
576ea95803 wined3d: Remove the unused device type parameter from the shader backend's get_caps() function. 2010-02-04 13:39:27 +01:00
Henri Verbeet
497386dc5c wined3d: Remove the unused device type parameter from the fragment pipe's get_caps() function.
On the subject of actually supporting software devices, we should probably
implement those by creating a software or reference adapter with appropriate
gl_info and pipe implementations and creating a device based on that.
2010-02-04 13:39:26 +01:00
Henri Verbeet
42c83f0260 wined3d: Dump ARB program shaders on compile failure.
Similar to the patch for GLSL.
2010-02-02 14:10:40 +01:00
Henri Verbeet
705f96fa39 wined3d: Get rid of some unnecessary casts to specific shader types. 2010-01-26 12:08:13 +01:00
Henri Verbeet
46cefd312c wined3d: Recognize the SM4 cut opcode. 2010-01-07 09:26:54 +01:00
Henri Verbeet
3687677427 wined3d: Recognize the SM4 lt opcode. 2010-01-07 09:26:30 +01:00
Henri Verbeet
6d5aca61f3 wined3d: Recognize the SM4 iadd opcode. 2010-01-07 09:26:25 +01:00
Henri Verbeet
22939f9d29 wined3d: Recognize the SM4 emit opcode. 2010-01-07 09:26:20 +01:00
Henri Verbeet
c57c76b78e wined3d: Recognize the SM4 ige opcode. 2010-01-07 09:26:08 +01:00
Henri Verbeet
b548e387ae wined3d: Move shader input/output signatures to IWineD3DBaseShaderClass. 2009-12-31 12:12:16 +01:00
Henri Verbeet
b3defd4c80 wined3d: Rename "wineD3DDevice" to "device". 2009-12-10 11:54:47 +01:00
Henri Verbeet
d2ad2df637 wined3d: Remove a few redundant assignments. 2009-12-09 13:50:48 +01:00
Francois Gouget
060934c557 wined3d: Don't define nameless structs or unions.
Fixes compilation on systems that don't support nameless unions or structs.
2009-12-07 14:18:25 +01:00
Stefan Dösinger
0e77a381ea wined3d: Create clip coords only if they are used.
If GL vertex shader clipping is supported (GLSL or NVvp), we currently
always calculate clipping results in the shader. They're gracefully
discarded by opengl, but we need 6 constants / uniforms to calculate
unused values.
2009-11-12 15:18:00 +01:00
Henri Verbeet
111307dfba wined3d: Get rid of the GL_SUPPORT macro. 2009-10-29 13:09:33 +01:00
Henri Verbeet
48e03bc189 wined3d: Introduce a separate structure for various OpenGL implementation limits. 2009-10-29 13:09:27 +01:00
Henri Verbeet
eeb54b9922 wined3d: Keep better track of where we're using wined3d contexts.
The idea here is that we can restore the thread's current GL context on
context_release() if it doesn't correspond to the current wined3d context on
context_acquire().
2009-10-28 11:15:19 +01:00
Stefan Dösinger
0c72464abf wined3d: Use the native constant limit for fitting private constants. 2009-10-26 11:42:36 +01:00
Stefan Dösinger
9ee6508132 wined3d: Remove dead code. 2009-10-26 11:42:29 +01:00
Stefan Dösinger
f15fc8f41c wined3d: Take native constants into account when reporting ARB limits. 2009-10-26 11:42:20 +01:00
Henri Verbeet
8d2512317f wined3d: Free the blitter private data in arbfp_blit_free() (Valgrind). 2009-10-22 10:46:15 +02:00
Henri Verbeet
6be41fd59a wined3d: Get rid of GL_LIMITS. 2009-10-22 10:46:05 +02:00
Henri Verbeet
55047f811a wined3d: Fix some GLINFO_LOCATION abuse. 2009-10-22 10:45:57 +02:00
Stefan Dösinger
122ed40c2b wined3d: Use ARB constant limits in ARB. 2009-10-20 14:46:16 +02:00
Stefan Dösinger
2d802af4d9 wined3d: Make shader specific constants accessible via GL_LIMITS. 2009-10-20 14:46:08 +02:00
Stefan Dösinger
8a68f418db wined3d: Don't reserve clipping constants needlessly. 2009-10-08 12:03:50 +02:00
Stefan Dösinger
ed2860f789 wined3d: Split the clip_parameters[2] array. 2009-10-08 12:03:42 +02:00
Stefan Dösinger
7f6ae94c0a wined3d: Don't write to result.color in arb_add_sRGB_correction.
add_sRGB_correction and the generate_pshader function generate the same MOV.
There's no need to do it in two places.
2009-10-08 12:03:30 +02:00
Stefan Dösinger
dc45657f2c wined3d: Fix vs_2_0 sgn.
vs_2_0's sgn has two extra parameters - temporary registers for the
instruction. This patch fixes the crash of the d3d9:visual test on windows and
properly handles the vs_2_0 version of sgn.
2009-10-02 12:36:59 +02:00
Stefan Dösinger
404aecb8da wined3d: Test if result.clip[] works correctly.
The Mac Nvidia driver doesn't implement the result.clip part of
GL_NV_vertex_program2_option correctly. It complains about a syntax
error if "result.clip[0]" is used. "result.clip" compiles correctly, but
supports only one clipplane, and running the shader results in severe
rendering bugs.
2009-09-28 17:33:07 +02:00
Henri Verbeet
f88c6e5ce5 wined3d: Move common shader fields to IWineD3DBaseShaderClass. 2009-09-25 15:14:35 +02:00
Henri Verbeet
9880cd7504 wined3d: Make some variables static. 2009-09-15 14:32:36 -05:00
Henri Verbeet
f8a3a5fd49 wined3d: Check the correct debug channel in shader_arb_load_constantsF(). 2009-09-08 13:06:07 +02:00
Henri Verbeet
f928d6ec87 wined3d: Fix shader_arb_load_constantsF(). 2009-09-08 13:06:01 +02:00
Stefan Dösinger
d6547c535b wined3d: Only generate the clipplane emulation KIL if a clipplane is used.
The KIL is quite expensive because it forces drivers to disable early Z
discard. It is cheaper to generate and switch between two shaders.
2009-09-08 13:03:03 +02:00