Commit Graph

1035 Commits

Author SHA1 Message Date
Józef Kucia 0dc4c3afb2 wined3d: Recognize SM5 bfrev opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:25 +09:00
Józef Kucia eb5c8d71fb wined3d: Do not limit temporary register count to 32 in SM4+.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:27:36 +09:00
Józef Kucia 57732599e5 wined3d: Implement SM4 continue instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:27:36 +09:00
Józef Kucia eab16f1310 wined3d: Recognize SM5 swapc opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:27:36 +09:00
Józef Kucia bd405f6bd6 wined3d: Recognize SM5 cut_stream opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-05 23:27:35 +09:00
Józef Kucia b18f2f5deb wined3d: Implement SM4 indexable temporary registers in GLSL backend.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 23:06:59 +09:00
Józef Kucia 2460d6f3cb wined3d: Recognize SM5 dcl_stream opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 23:06:57 +09:00
Józef Kucia 5c5a8256e8 wined3d: Recognize SM5 emit_stream opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 23:06:55 +09:00
Józef Kucia 0afcd1aeb3 wined3d: Fix sample_d for array textures.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:04:28 +09:00
Józef Kucia 944ebf3dd8 wined3d: Recognize SM4 dcl_indexableTemp opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-23 22:04:26 +09:00
Józef Kucia f6bd191385 wined3d: Introduce wined3d_gl_limits_get_uniform_block_range().
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:34 +09:00
Józef Kucia e2384387e0 wined3d: Recognize SM5 dcl_tgsm_structured opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:34 +09:00
Józef Kucia 6778ceca2c wined3d: Recognize SM5 dcl_tgsm_raw opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 22:16:33 +09:00
Józef Kucia 0c83f4d5be wined3d: Recognize SM5 dcl_thread_group opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 00:58:57 +09:00
Józef Kucia b30f59c567 wined3d: Add compute shader type.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-22 00:58:56 +09:00
Józef Kucia 36dcae193d wined3d: Recognize SM5 ld_uav_typed opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:53:02 +09:00
Józef Kucia 7d5be69365 wined3d: Recognize SM5 imm_atomic_alloc opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-17 22:52:59 +09:00
Józef Kucia 688fc5f6d8 wined3d: Recognize SM5 bufinfo opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:30 +09:00
Józef Kucia 17b599a442 wined3d: Recognize SM5 store_structured opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:28 +09:00
Józef Kucia 8d14307f00 wined3d: Recognize SM5 bfi opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:26 +09:00
Józef Kucia 62af9f6f1f wined3d: Recognize SM5 imm_atomic_consume opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:23 +09:00
Józef Kucia c08dfc6836 wined3d: Recognize SM5 ld_raw opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:21 +09:00
Józef Kucia 41b296eea7 wined3d: Recognize SM5 store_raw opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:19 +09:00
Francois Gouget 0652bf7eca wined3d: Make glsl_vertex_pipe_clip_plane() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-15 20:43:03 +09:00
Józef Kucia 5c39053791 wined3d: Recognize SM 5 gather4_c opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-10 20:34:05 +09:00
Józef Kucia e0c4b23e94 wined3d: Recognize SM 4.1 gather4 opcode.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-10 20:34:05 +09:00
Józef Kucia 7cc36e71b2 wined3d: Implement SM4 endswitch instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:24:52 +09:00
Józef Kucia 9aa587af9e wined3d: Implement SM4 default instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:24:50 +09:00
Józef Kucia 7929895029 wined3d: Implement SM4 case instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:24:47 +09:00
Józef Kucia ba60b0f59a wined3d: Implement SM4 switch instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:24:45 +09:00
Józef Kucia 25dfbbafb3 wined3d: Implement SM4 umax instruction.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 22:24:42 +09:00
Guillaume Charifi 5840ea47e6 wined3d: Add support for the ishr opcode.
Signed-off-by: Guillaume Charifi <guillaume.charifi@sfr.fr>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 00:10:52 +09:00
Matteo Bruni d9f8c853ac wined3d: User clip planes emulation for core profile contexts.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 00:10:48 +09:00
Matteo Bruni 785baaa94b wined3d: Fix FFP vertex shaders with ARB_explicit_attrib_location.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-03 00:10:47 +09:00
Józef Kucia 519d459b72 wined3d: Use ARB_explicit_attrib_location to pre-assign vertex attribute locations.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:12:47 +09:00
Józef Kucia 4dfd79d336 wined3d: Use pure integer vertex attributes for SM4+ shaders.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:12:27 +09:00
Józef Kucia 56b22347d2 wined3d: Handle SM4 breakc instruction modifiers.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-25 22:05:09 +09:00
Józef Kucia 422bf938cd wined3d: Handle SM4 if instruction modifiers.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-25 22:05:06 +09:00
Henri Verbeet 8ae3a9b624 wined3d: Introduce a helper function to allocate arrays.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-24 16:19:01 +09:00
Matteo Bruni 54d8f57cc5 wined3d: Reselect the current GLSL geometry shader when possible even if the VS changed.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:46 +09:00
Matteo Bruni 91537b9f1f wined3d: Add support for core OpenGL geometry shaders.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:44 +09:00
Matteo Bruni f5dc7a43b0 wined3d: Fixup vertex position in geometry shaders.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:41 +09:00
Matteo Bruni 9a14d78de9 wined3d: Handle GS inputs and outputs.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:38 +09:00
Matteo Bruni 0f062f5108 wined3d: Get rid of the "reorder shaders" for SM4+.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:36 +09:00
Matteo Bruni cf52d1635c wined3d: Simplify shader interface matching for SM4+ vertex shaders.
After some testing it looks like, with SM4+ on Windows:
1. Output registers have to match with input registers from the
following shader stage (register index and mask). There is no "smart"
matching of semantics like in SM3.
2. Using uninitialized varyings in SM4+ shaders doesn't give consistent
results.
That means we can simplify the relevant code quite a bit. Applications
shouldn't be able to depend on particular values for uninitialized
varyings so we can avoid explicitly initializing them.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:29 +09:00
Matteo Bruni 2c90b9aee0 wined3d: Clean up VS-PS interface matching in GLSL.
It makes easier to add similar handling for GS inputs and outputs.
Functionally this should be a NOP.

Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:26 +09:00
Matteo Bruni f5aee34d98 wined3d: Alpha test emulation for core profile contexts.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:07:23 +09:00
Henri Verbeet aa666adfed wined3d: Send shader constant updates through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-23 14:06:41 +09:00
Józef Kucia e36a7e5da4 wined3d: Match position output register by sysval semantic value.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-21 00:53:52 +09:00
Józef Kucia b997719485 wined3d: Add support for 2D array texture samplers.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-19 20:26:29 +09:00