Commit Graph

1447 Commits

Author SHA1 Message Date
Henri Verbeet 39263558a2 wined3d: Make some functions static.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-15 18:03:51 +02:00
Jan Sikorski 99dc5b78a1 wined3d: Add resolve_format parameter to blitter_blit.
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-31 22:16:25 +02:00
Matteo Bruni 65b3279bae wined3d: Correctly handle modifiers on instructions with multiple destination registers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-09 11:59:20 +01:00
Zebediah Figura 387a63237d wined3d: Implement global resource memory barriers.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-29 20:53:32 +01:00
Henri Verbeet 7a54209d4b wined3d: Implement the "precise" flag in the GLSL shader backend.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-19 21:44:17 +01:00
Henri Verbeet 1efa4ec7fa wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_sprintf_cast().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet 8ef6484deb wined3d: Handle UNORM/SNORM as FLOAT in shader_glsl_append_dst_ext().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-18 22:46:37 +01:00
Henri Verbeet 3d883c640c wined3d: Only store unique stream output descriptions.
This allows us to compare them by pointer.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-07 18:40:18 +02:00
Henri Verbeet 2558f5f218 wined3d: Implement shader_spirv_compile_vk().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-09-24 15:03:51 +02:00
Matteo Bruni 901042a123 wined3d: Remove some unnecessary "inline" qualifiers.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-23 22:30:48 +02:00
Matteo Bruni 86459002f1 wined3d: Update comment about sample_c_lz translation in GLSL.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 23:16:51 +02:00
Henri Verbeet ce4b63dc88 wined3d: Use "depth_size"/"stencil_size" to check for depth/stencil formats in glsl_blitter_supported().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-03 21:48:48 +02:00
Paul Gofman c0ab55700f wined3d: Prepare/load the destination resource location in glsl_blitter_blit().
Like the other blitters. When the GLSL blitter was introduced, the idea was
that caller would be responsible for doing this, but we never ended up
updating the other blitters.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49251
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-28 20:18:32 +02:00
Henri Verbeet 51a901e34e wined3d: Store the wined3d primitive type in the wined3d state structure.
As opposed to the OpenGL primitive type.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-20 20:10:19 +02:00
Zhiyi Zhang c2a20e7f59 wined3d: Fix uninitialised variable warnings.
Signed-off-by: Zhiyi Zhang <zzhang@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 21:51:05 +02:00
Chip Davis 2d86752198 wined3d: Use GL_APPLE_rgb_422 for UYVY and YUY2 surfaces.
Theoretically, we could use it to support UYVY and YUY2 *textures* as
well, but it would still require converting from YUV to RGB after
sampling.

Signed-off-by: Chip Davis <cdavis@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 19:58:11 +02:00
Matteo Bruni e11ae91b9c wined3d: Store the framebuffer inline in struct wined3d_state.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-26 18:34:50 +01:00
Matteo Bruni ef66c4488f wined3d: Get rid of MAX_RENDER_TARGET_VIEWS.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-24 20:43:10 +01:00
Zebediah Figura df569853bf wined3d: Implement dual source blending.
Based on a patch by Michael Müller.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-18 16:52:39 +01:00
Zebediah Figura 3364348e6b wined3d: Implement casting int to uint.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-07 20:14:06 +01:00
Henri Verbeet 7e385afd83 wined3d: Store a gl_info pointer in struct shader_glsl_ctx_priv.
Since the one in struct wined3d_shader_context is going away.

Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-24 17:21:17 +01:00
Paul Gofman 3c9b843175 wined3d: Check if destination texture has GPU access in glsl_blitter_supported().
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-11 20:01:40 +01:00
Matteo Bruni 7dbdbcce46 wined3d: Introduce a separate use_legacy_fragment_output() helper.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-31 17:35:11 +01:00
Alex Henrie 6c40c2dab2 wined3d: Avoid dead assignment (scan-build).
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-20 15:31:23 +02:00
Henri Verbeet 000eab8727 wined3d: Store the sRGB constants as wined3d_vec4 structures.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 14:13:02 +02:00
Matteo Bruni fdf37d3e51 wined3d: Get rid of wined3d_max_compat_varyings().
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-14 14:30:33 +02:00
Henri Verbeet 74b9ef2c1d wined3d: Move the "gl_info" field from struct wined3d_context to struct wined3d_context_gl.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 19:56:16 +02:00
Henri Verbeet c3e2909fd3 wined3d: Store the maximum number of "compat" varyings in struct wined3d_d3d_limits.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-06 08:41:35 +02:00
Henri Verbeet 4f86e35c53 wined3d: Use d3d_info to determine whether shader outputs need interpolation qualifiers.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-05 18:45:06 +02:00
Józef Kucia 62f2cd1b47 wined3d: Add support for GL_EXT_texture_shadow_lod.
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>
2019-08-02 16:56:46 +02:00
Henri Verbeet 9cb81bfad4 wined3d: Pass a wined3d_context structure to fragment_pipeline.enable_extension().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-01 08:03:26 +02:00
Henri Verbeet fe17f2adf9 wined3d: Pass a wined3d_context_gl structure to glsl_free_blitter_program().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-01 08:03:22 +02:00
Henri Verbeet 6a89bb057b wined3d: Store a wined3d_context_gl structure in struct glsl_ffp_destroy_ctx.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-01 08:03:19 +02:00
Henri Verbeet e8d86d43a8 wined3d: Pass a wined3d_context structure to wined3d_vertex_pipe_ops.vp_enable().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-31 08:29:35 +02:00
Paul Gofman 9607a427de wined3d: Do not modify shader register maps in backends.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-05 20:39:27 +02:00
Henri Verbeet 14f1cc73e7 wined3d: Pass a wined3d_context_gl structure to glsl_blitter_get_program().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-04 21:14:54 +02:00
Henri Verbeet 48d710dce9 wined3d: Pass a wined3d_context_gl structure to set_glsl_shader_program().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-04 21:14:54 +02:00
Henri Verbeet 3d8c15dc85 wined3d: Pass a wined3d_context_gl structure to set_glsl_compute_shader_program().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 15:24:52 +02:00
Henri Verbeet 7d8ad2e8d8 wined3d: Pass a wined3d_context_gl structure to find_glsl_compute_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 15:24:42 +02:00
Henri Verbeet dbb0139e3e wined3d: Pass a wined3d_context_gl structure to shader_glsl_compile_compute_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 15:24:39 +02:00
Henri Verbeet d86f6a4ab7 wined3d: Pass a wined3d_context_gl structure to shader_glsl_find_ffp_fragment_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-03 15:24:36 +02:00
Henri Verbeet 3a2a176a7b wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_ffp_fragment_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 08:00:01 +02:00
Henri Verbeet 9d7ca718e0 wined3d: Pass a wined3d_context_gl structure to find_glsl_geometry_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 07:59:59 +02:00
Henri Verbeet 32dbfda4d5 wined3d: Pass a wined3d_context_gl structure to find_glsl_domain_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 07:59:57 +02:00
Henri Verbeet 62d6520fa6 wined3d: Pass a wined3d_context_gl structure to find_glsl_hull_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 07:59:55 +02:00
Henri Verbeet e867d986d5 wined3d: Pass a wined3d_context_gl structure to find_glsl_vshader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:40:42 +02:00
Henri Verbeet 6bf34c8366 wined3d: Pass a wined3d_context_gl structure to find_glsl_pshader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:40:40 +02:00
Henri Verbeet 3d765ae072 wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_compute_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:40:37 +02:00
Henri Verbeet 9eb34e4f74 wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_geometry_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-01 14:40:35 +02:00
Henri Verbeet 03a06f4ef2 wined3d: Pass a wined3d_context_gl structure to shader_glsl_generate_domain_shader().
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-28 08:11:24 +02:00