Józef Kucia
0b1b7d7b11
wined3d: Implement atomic instructions on structured buffer memory.
...
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-02-28 20:40:02 +01:00
Henri Verbeet
cf4de1c498
wined3d: Send swapchain context destruction through the command stream.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:39:29 +01:00
Henri Verbeet
df0f07bfc5
wined3d: Get rid of an unneeded context_release() in swapchain_init().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:39:27 +01:00
Henri Verbeet
b7f0d3312e
wined3d: Use the command stream state in swapchain_gl_present().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:39:25 +01:00
Henri Verbeet
a7809706bb
wined3d: Use the command stream state in wined3d_cs_exec_dispatch().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:39:23 +01:00
Henri Verbeet
a7560cf695
wined3d: Use the command stream state in wined3d_cs_exec_draw().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-28 09:39:20 +01:00
Józef Kucia
6823abd521
wined3d: Add quirk for Nvidia viewport subpixel bits bug.
...
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-02-28 09:39:11 +01:00
Józef Kucia
0d6b6ec33d
wined3d: Pass wined3d_caps_gl_ctx to driver quirk match() 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-02-28 09:39:06 +01:00
Henri Verbeet
97266441f4
wined3d: Use the command stream state in wined3d_cs_exec_clear().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 09:57:43 +01:00
Henri Verbeet
29326406c3
wined3d: Use the command stream state in device_clear_render_targets().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 09:57:41 +01:00
Henri Verbeet
4aec7f0cc4
wined3d: Pass the primitive type to wined3d_cs_emit_draw().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 09:57:39 +01:00
Henri Verbeet
e8e4fac959
wined3d: Do not record the GL primitive type in stateblocks.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 09:57:37 +01:00
Henri Verbeet
7b18ff5abb
wined3d: Get rid of some redundant "texture" accesses in texture_resource_sub_resource_map().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-27 09:57:35 +01:00
Józef Kucia
f4f2d4052b
wined3d: Do not crash when attempting to issue draw call with no attachments.
...
The is broken since by 2641c5c28f
.
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-02-27 09:57:16 +01:00
Józef Kucia
fedabd7dd7
wined3d: Implement [imm_]atomic_{imax, imin} instructions for signed integers.
...
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-02-27 09:57:14 +01:00
Józef Kucia
0496c8c559
wined3d: Implement [imm_]atomic_{umax, umin} instructions for unsigned integers.
...
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-02-27 09:57:13 +01:00
Józef Kucia
a9fdb4a099
wined3d: Use GL_ARB_shading_language_420pack for swizzle operations on scalars.
...
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-02-27 09:57:10 +01:00
Józef Kucia
c07bfeb2b8
wined3d: Allow swizzle on vThreadIDInGroupFlattened register.
...
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-02-27 09:57:08 +01:00
Matteo Bruni
4f8c502ea7
wined3d: Fix querying texture-related limits on core profile.
...
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-02-27 09:56:23 +01:00
Matteo Bruni
ce77ef4ea0
wined3d: Don't require a separate sRGB GL texture if the format doesn't support sRGB reads.
...
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-02-27 09:56:20 +01:00
Józef Kucia
adedebf47a
wined3d: Always use correct sampler bind index for ld_raw and ld_structured.
...
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-02-24 13:54:18 +01:00
Józef Kucia
dae8785bea
wined3d: Update UAV read bitmask for ld_raw and ld_structured instructions.
...
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-02-24 13:54:18 +01:00
Józef Kucia
38e2a5ee22
wined3d: Implement ld_structured 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-02-24 13:54:18 +01:00
Józef Kucia
7cdd18f392
wined3d: Handle structured resource declarations.
...
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-02-24 13:54:18 +01:00
Józef Kucia
5392835f29
wined3d: Record sampler usage for ld_structured.
...
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-02-24 13:54:18 +01:00
Józef Kucia
bff1ecac3b
wined3d: Use string_buffer_sprintf() in shader_glsl_sprintf_cast().
...
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-02-24 13:54:18 +01:00
Józef Kucia
f0bff11738
wined3d: Extract common code to validate_shader_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-02-24 13:54:17 +01:00
Henri Verbeet
f0b6873734
wined3d: Implement depth fills in the CPU blitter.
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:39 +01:00
Henri Verbeet
e3f55717e2
wined3d: Get rid of the depth/stencil FIXME in texture_resource_sub_resource_unmap().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:37 +01:00
Henri Verbeet
cc65b90451
wined3d: Support uploading depth textures in surface_load_texture().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:35 +01:00
Henri Verbeet
5895f77474
wined3d: Support downloading depth textures in surface_load_sysmem().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-24 09:36:33 +01:00
Józef Kucia
48e1989cb9
wined3d: Implement structured buffer views.
...
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-02-23 20:13:09 +01:00
Józef Kucia
d867c6aa1e
wined3d: Pass structure byte stride to wined3d_buffer_create().
...
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-02-23 20:13:07 +01:00
Józef Kucia
39a15ee47c
wined3d: Implement SM5 store_structured 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-02-23 20:13:05 +01:00
Józef Kucia
a78afa1c71
wined3d: Handle structured UAV declarations.
...
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-02-23 20:13:03 +01:00
Józef Kucia
b1b880fc75
wined3d: Fix handling of SM4+ integer registers.
...
There should be no behavior change for immediate constants and other
registers. After this fix a correct GLSL is generated for SM4+
instructions similar to the following:
mov r0.xyz, vThreadGroupID.xyzx
mov r0.w, vThreadIDInGroupFlattened.x
Previously, it was assumed that an integer register is always in a
position in which an integer type is expected.
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-02-23 20:12:58 +01:00
Józef Kucia
80b17bef3b
wined3d: Fix return type for surface_load_texture().
...
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-02-23 20:12:56 +01:00
Henri Verbeet
4aea36184d
wined3d: Validate WINED3D_LOCATION_BUFFER on WINED3D_MAP_DISCARD buffer maps.
...
Usually when doing a WINED3D_MAP_DISCARD map on a buffer with a buffer object
WINED3D_LOCATION_BUFFER will already be current. However, if the previous map
on that buffer loaded WINED3D_LOCATION_SYSMEM, that's not necessarily true.
This also brings the code further in line with the corresponding code for
textures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-23 08:55:47 +01:00
Henri Verbeet
67007e010e
wined3d: Copy the shader byte-code before initialising the front-end.
...
This fixes a regression introduced by commit
12f5887a23
.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-23 08:55:42 +01:00
Józef Kucia
1f1efea0d3
wined3d: Implement compute shader resource binding.
...
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-02-22 17:25:30 +01:00
Józef Kucia
7d9b0a6e16
wined3d: Load sampler bindings for compute 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-02-22 17:25:27 +01:00
Józef Kucia
b3a7d3adaa
wined3d: Allocate texture binding set for compute pipeline.
...
It seems that a majority of OpenGL implementations allow to statically
partition texture bindings. For other implementations we are going to
invalidate graphics pipeline texture bindings when appplying compute
pipeline texture bindings, and vice versa.
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-02-22 17:25:19 +01:00
Józef Kucia
c9f080f4a6
wined3d: Introduce wined3d_device_set_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-02-22 17:25:11 +01:00
Józef Kucia
a16a4931b6
wined3d: Introduce wined3d_device_set_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-02-22 17:25:02 +01:00
Józef Kucia
87bf26c344
wined3d: Allocate "context->texture_type" dynamically.
...
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-02-22 17:24:54 +01:00
Józef Kucia
c808748bcf
wined3d: Do not read rev_tex_unit_mapping for texture units >= MAX_COMBINED_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-02-22 17:24:51 +01:00
Józef Kucia
f5de7186aa
wined3d: Do not try to invalidate compute states for freshly created contexts.
...
The context_invalidate_state() function doesn't handle compute states
properly.
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-02-22 17:24:48 +01:00
Józef Kucia
cab9282d10
wined3d: Load unordered access resources before binding shader resources.
...
Loading a texture might invalidate shader resource view bindings.
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-02-22 17:24:44 +01:00
Henri Verbeet
0f304806b3
wined3d: Support depth formats in wined3d_format_convert_from_float().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:58 +01:00
Henri Verbeet
34a123631d
wined3d: Merge surface_convert_depth_to_float() into wined3d_format_convert_color_to_float().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-22 11:31:56 +01:00