Commit Graph

8212 Commits

Author SHA1 Message Date
Józef Kucia 2ac254a0ff wined3d: Add support for samplers in geometry 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>
2017-03-14 17:14:41 +01:00
Józef Kucia 761d59f9c0 wined3d: Use layout qualifiers to bind GLSL 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>
2017-03-14 17:14:40 +01:00
Józef Kucia 12edaf9ad0 wined3d: Introduce context_get_tex_unit_mapping() helper function.
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>
2017-03-14 17:14:38 +01:00
Józef Kucia 1865352e3f wined3d: Allow using more than MAX_COMBINED_SAMPLERS texture image units.
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>
2017-03-14 17:14:36 +01:00
Józef Kucia ea6c61a534 wined3d: Do not use texture unit mapping 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>
2017-03-14 17:14:34 +01:00
Józef Kucia 9d3b2958ca wined3d: Use layout qualifiers to bind GLSL uniform blocks.
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>
2017-03-14 17:14:32 +01:00
Józef Kucia 3567544ade wined3d: Use layout qualifiers to bind GLSL images.
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>
2017-03-14 17:14:30 +01:00
Matteo Bruni 630ba97900 wined3d: Fix the TRACE in wined3d_texture_remove_buffer_object().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-14 17:14:13 +01:00
Bruno Jesus 992dcc4db5 wined3d: Recognize GeForce 940M.
Signed-off-by: Bruno Jesus <bjesus@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-14 17:14:01 +01:00
Józef Kucia 23d28c451b wined3d: Introduce shader_glsl_load_program_resources() helper function.
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>
2017-03-13 19:28:45 +01:00
Józef Kucia d89ee7aaaa wined3d: Move legacy texture image unit range allocation to wined3d_gl_limits_get_texture_unit_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>
2017-03-13 19:28:43 +01:00
Józef Kucia 806479e432 wined3d: Get rid of incorrect usage of "tex_unit_map".
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>
2017-03-13 19:28:41 +01:00
Józef Kucia f2af535c05 wined3d: Simplify computation of "num_textures_used" in ATI fragment pipeline.
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>
2017-03-13 19:28:39 +01:00
Józef Kucia a0f2b5b932 wined3d: Recognize SM4 dcl_index_range 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>
2017-03-10 23:21:25 +01:00
Józef Kucia 2059beda57 wined3d: Implement SM4 umul 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>
2017-03-10 23:21:24 +01:00
Józef Kucia 5f4e49dea6 wined3d: Recognize SM4 umul 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>
2017-03-10 23:21:24 +01:00
Matteo Bruni 72deec5295 wined3d: Use the MAX_TEXTURES define in a few more places.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 23:21:24 +01:00
Matteo Bruni 09483c6801 wined3d: Don't advertise unsupported shader versions.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-10 23:21:24 +01:00
Henri Verbeet 11fb78d9bd wined3d: Don't read modifiers for opcodes with "read_opcode_func" set (AFL).
Otherwise "len" would be inconsistent with "p". This assumes opcodes with
"read_opcode_func" either don't have modifiers or handle them themselves.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 11:05:14 +01:00
Henri Verbeet a9e5a02a20 wined3d: Validate instruction lengths in shader_sm4_read_instruction() (AFL).
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-09 11:05:12 +01:00
Józef Kucia c7f3308db7 wined3d: Add support for seamless cube map filtering.
Seamless cube map filtering should always be enabled in D3D10+.

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>
2017-03-08 16:37:35 +01:00
Józef Kucia 9cb650a3b8 wined3d: Avoid FIXME() message for unhandled cube map arrays.
There are no GLSL functions with the type part for cube map 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>
2017-03-08 16:37:31 +01:00
Józef Kucia 646cb95942 wined3d: Create dummy cube 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>
2017-03-08 16:37:29 +01:00
Józef Kucia f8723d096a wined3d: Add FIXME() messages for unhandled shader bytecode UAV flags.
The new definition of WINED3D_SM5_UAV_FLAGS_MASK doesn't overlap with
WINED3D_SM4_RESOURCE_TYPE_MASK.

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>
2017-03-08 16:37:27 +01:00
Józef Kucia c4d4959e1c wined3d: Fix parsing of SM5 "_opc" flag.
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>
2017-03-08 16:37:25 +01:00
Henri Verbeet dfe8b7798a wined3d: Abort on invalid instructions in shader_get_registers_used().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:35 +01:00
Henri Verbeet df6540edf0 wined3d: Abort on invalid instructions in shader_generate_main().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:33 +01:00
Henri Verbeet 0cdae56864 wined3d: Send resource copy calls through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:30 +01:00
Henri Verbeet 95abd3c924 wined3d: Send sub-resource copy calls through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:29 +01:00
Henri Verbeet 87192548ed wined3d: Send blits through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-08 15:30:27 +01:00
Józef Kucia d4443bdc29 wined3d: Make sure that "tgsm_count" is not decreased while adding TGSM declarations.
Suggested by Sebastian Lackner.

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>
2017-03-07 16:33:40 +01:00
Józef Kucia 287c185173 wined3d: Introduce wined3d_device_get_sampler() helper function.
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>
2017-03-07 16:33:40 +01:00
Józef Kucia 3b42d47164 wined3d: Introduce wined3d_device_get_shader_resource_view() helper function.
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>
2017-03-07 16:33:40 +01:00
Józef Kucia 9265d55151 wined3d: Introduce wined3d_device_get_constant_buffer() helper function.
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>
2017-03-07 16:33:40 +01:00
Józef Kucia 5faccd82ba wined3d: Introduce wined3d_device_get_cs_sampler().
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>
2017-03-07 16:33:40 +01:00
Józef Kucia e093774c2a wined3d: Introduce wined3d_device_get_cs_resource_view().
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>
2017-03-07 16:33:39 +01:00
Józef Kucia e527b1035a wined3d: Introduce wined3d_device_get_cs_cb().
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>
2017-03-07 16:33:39 +01:00
Józef Kucia 76a4efe1ed wined3d: Introduce wined3d_device_get_compute_shader().
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>
2017-03-07 16:33:39 +01:00
Henri Verbeet 54c3f5c0bc wined3d: Validate blit parameters in wined3d_texture_blt().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:54 +01:00
Henri Verbeet aaa431d8a8 wined3d: Use wined3d_texture_blt() in surface_upload_from_surface().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 09:00:52 +01:00
Józef Kucia 097e8355c6 wined3d: Implement SM5 bufinfo 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>
2017-03-06 19:49:16 +01:00
Józef Kucia a19e6265d7 wined3d: Bind unordered access views even if they are not used by current shaders.
An alternative would be to invalidate unordered access view bindings
when a shader is set.

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>
2017-03-06 19:49:16 +01:00
Henri Verbeet c51537ba9f wined3d: Merge wined3d_texture_check_block_align() into wined3d_texture_check_box_dimensions().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:44:03 +01:00
Henri Verbeet d118788917 wined3d: Check rectangle alignment in wined3d_surface_blt().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:44:01 +01:00
Henri Verbeet fbff59ae4a wined3d: Send sub-resource update calls through the command stream.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:59 +01:00
Henri Verbeet 2338060142 wined3d: Explicitly pass d3d_info and gl_info to context_stream_info_from_declaration().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:50 +01:00
Henri Verbeet 8bdbbf4fcf wined3d: Map buffers in wined3d_device_process_vertices().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-06 19:43:48 +01:00
Józef Kucia 6256956a41 wined3d: Implement UAV counters.
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>
2017-03-03 13:23:56 +01:00
Józef Kucia 35de12fcd5 wined3d: Implement SM5 imm_atomic_consume 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>
2017-03-03 13:23:54 +01:00
Józef Kucia 87ef57aff1 wined3d: Implement SM5 imm_atomic_alloc 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>
2017-03-03 13:23:52 +01:00