Henri Verbeet
ceb9994669
wined3d: Use wined3d_uint32_compare() in compare_sig().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Jan Sikorski
b49062303e
wined3d: Acquire references to mip-map generation shader resource views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Jan Sikorski
a33ed42ffe
wined3d: Acquire references to unordered-access view counter buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Jan Sikorski
51c10cbc33
wined3d: Acquire references to blitted resources for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Jan Sikorski
06a5337f7b
wined3d: Acquire references to updated resources for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Zebediah Figura
ff94b838fd
wined3d: Handle structured buffers in wined3d_unordered_access_view_vk_clear().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:56 +01:00
Alexandre Julliard
3527230c46
include: Remove the wine_ prefix on rbtree functions.
...
Add defines for frequently-used functions.
For compatibility with vkd3d.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-26 21:53:55 +01:00
Henri Verbeet
c8c79a9043
wined3d: Use wined3d_mask_from_size() in set_glsl_shader_program().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Henri Verbeet
8c7dce6949
wined3d: Use wined3d_mask_from_size() in shader_glsl_generate_stream_output_setup().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Henri Verbeet
02106b0195
wined3d: Use wined3d_mask_from_size() in shader_glsl_gather4().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Henri Verbeet
e804eebe0b
wined3d: Use wined3d_mask_from_size() in shader_glsl_store_uav().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Jan Sikorski
6e0e2bef5d
wined3d: Acquire references to vertex buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Jan Sikorski
c36351be1e
wined3d: Acquire references to stream output buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Jan Sikorski
8641353442
wined3d: Acquire references to index buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Jan Sikorski
5f417adf18
wined3d: Acquire references to indirect draw buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Jan Sikorski
3fb9a8ea51
wined3d: Acquire references to indirect dispatch buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-25 20:50:49 +01:00
Zebediah Figura
9206277105
d3d11: Report D3D11_FORMAT_SUPPORT_IA_INDEX_BUFFER.
...
This fixes a black screen in The Unfinished Swan.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Zebediah Figura
59636714e7
d3d11: Report D3D11_FORMAT_SUPPORT_IA_VERTEX_BUFFER.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Henri Verbeet
98d3624f23
wined3d: Use wined3d_mask_from_size() in stateblock_savedstates_set_all().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Henri Verbeet
5a8ffed774
wined3d: Use wined3d_mask_from_size() in find_ps_compile_args().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Henri Verbeet
e9a109835f
wined3d: Use wined3d_mask_from_size() in geometry_shader_init_stream_output().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Henri Verbeet
b0a961eaca
wined3d: Properly compare integers in wined3d_graphics_pipeline_vk_compare().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Henri Verbeet
162fc7bd46
wined3d: Properly compare integers in wined3d_bo_slab_vk_compare().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
18a6d9ab0e
wined3d: Acquire references to cleared render-target views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
4f7837a584
wined3d: Acquire references to cleared unordered-access views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
d5e13912b2
wined3d: Acquire references to constant buffers for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
e7810388e2
wined3d: Acquire references to depth/stencil views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
e6b61128e5
wined3d: Acquire references to unordered-access views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-24 21:44:51 +01:00
Jan Sikorski
06ce7001bd
wined3d: Acquire references to shader resource views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 18:40:23 +01:00
Jan Sikorski
2991180e47
wined3d: Acquire references to render-target views for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 18:40:21 +01:00
Jan Sikorski
c976f8fb95
wined3d: Acquire blend state references for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 18:40:19 +01:00
Jan Sikorski
7c0d1595e0
wined3d: Acquire rasterizer state references for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 18:40:16 +01:00
Jan Sikorski
cb853ec2cd
wined3d: Acquire depth/stencil state references for command lists by inspecting CS packets.
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-21 18:40:14 +01:00
Henri Verbeet
d878158675
wined3d: Properly compare integers in wined3d_so_desc_compare().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:18:41 +01:00
Henri Verbeet
9b98d86f29
wined3d: Properly compare integers in wined3d_pipeline_layout_vk_compare().
...
As pointed out by Giovanni, modular subtraction doesn't produce a total order;
in particular, it's not transitive. For the values likely to be encountered by
wined3d_pipeline_layout_vk_compare(), this is perhaps unlikely to be an issue
in practice. However, that's not necessarily the case for e.g. handles or
masks.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:18:38 +01:00
Henri Verbeet
0a1b3fc136
wined3d: Use wined3d_mask_from_size() in wined3d_ffp_get_fs_settings().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:18:35 +01:00
Henri Verbeet
074dd54536
wined3d: Use wined3d_mask_from_size() in wined3d_ffp_get_vs_settings().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:18:31 +01:00
Henri Verbeet
8b4ae5951d
wined3d: Discard texture resources before unloading them in wined3d_texture_destroy_object().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-20 18:18:29 +01:00
Zebediah Figura
35e08b90b3
wined3d: Do not iterate over multiple layers when clearing 3D UAVs.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52390
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-13 17:05:00 +01:00
Andrey Gusev
76c9fc8a76
wined3d: Handle WINED3DSPSM_NONE in shader_sm4_read_param().
...
Next titles call for it Dying Light, Mortal Shell, Deus Ex: Mankind Divided, Thief (2014).
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-11 21:59:51 +01:00
Henri Verbeet
1908cb9501
wined3d: Use GL_MAP_PERSISTENT_BIT even for non-persistent bo maps.
...
While the reason for doing this is to allow draws referencing mapped buffer
resources to succeed, the behaviour of the application in the referenced bug
report (FlatOut) appears to be slightly different; it does end up drawing
while buffer objects are mapped due to reordering of map operations inside the
command stream, but as far as I can tell those buffer objects are not
referenced by the draw. The driver in question (fglrx/Catalyst) appears to
simply be a bit overzealous with throwing errors, and unfortunately doesn't
provide much more information than "glDrawElementsBaseVertex has generated an
error (GL_INVALID_OPERATION)". The issue is not reproducible with Mesa
radeonsi.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46118
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-07 16:49:53 +01:00
Alex Henrie
29c9cf6429
wined3d: Fix memory leak on error path in wined3d_buffer_vk_create_buffer_object (Coverity).
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-03 14:50:29 +01:00
Conor McCarthy
586b52204e
wined3d: Also check the internal format when determining GL raw blit compatibility.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51935
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-28 17:23:24 +01:00
Andrey Gusev
b006a4c5ac
wined3d: Add WINED3DFMT_R11G11B10_FLOAT vertex format.
...
Used by Dark Souls: Remastered.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-17 18:33:57 +01:00
Henri Verbeet
44cb2ba942
wined3d: Release the allocator lock on error in wined3d_allocator_chunk_vk_map().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-17 17:57:04 +01:00
Conor McCarthy
d61c9998d9
wined3d: Do not bind buffers in state_cb() if the shader is not set.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52020
Signed-off-by: Conor McCarthy <cmccarthy@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-15 18:55:25 +01:00
Zebediah Figura
f69d4a865f
wined3d: Trace CS packet pointers.
...
This makes it easier to "unwind" through the CS thread when debugging.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 21:23:24 +01:00
Jan Sikorski
87b5d91412
Revert "wined3d: Acquire references to shaders in deferred contexts.".
...
This reverts commit 908fb50728
.
Moved to wined3d_cs_packet_{in/de}cref_objects().
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-12-09 21:23:18 +01:00
Jan Sikorski
5d450c0a4b
wined3d: Acquire shader references for command lists by inspecting CS packets.
...
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-12-09 21:23:14 +01:00
Jan Sikorski
9340ed6067
Revert "wined3d: Acquire references to samplers in deferred contexts.".
...
This reverts commit 0056ebf91e
.
Sampler references in deferred contexts are now managed by inspecting CS
packets.
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-12-09 21:23:11 +01:00
Jan Sikorski
ffa37997be
wined3d: Acquire sampler references for command lists by inspecting CS packets.
...
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-12-09 21:23:05 +01:00
Henri Verbeet
2802328cf6
wined3d: Move the command list reference counting functions to the end of cs.c.
...
These are part of the public API, so there's not need for them to be at
the start of the file.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 21:23:00 +01:00
Jan Sikorski
e418b1f59d
wined3d: Use wined3d_next_cs_packet() in wined3d_cs_exec_execute_command_list().
...
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-12-09 21:22:50 +01:00
Jan Sikorski
6ebbc4a882
wined3d: Introduce a helper function to extract a packet from a command stream.
...
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-12-09 21:22:47 +01:00
Zebediah Figura
0cd8c95e67
wined3d: Use wined3d_context_copy_bo_address() in wined3d_buffer_gl_upload_ranges().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 21:22:18 +01:00
Henri Verbeet
0eb686f20d
wined3d: Pass a wined3d_device_gl pointer to wined3d_device_delete_opengl_contexts_cs().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 21:22:15 +01:00
Henri Verbeet
194b47b4fd
wined3d: Use the access flags used to create the bo for persistent maps in wined3d_bo_gl_map().
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 18:43:51 +01:00
Henri Verbeet
c22970af57
wined3d: Pass a wined3d_device_gl pointer to wined3d_device_create_primary_opengl_context_cs().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 17:14:59 +01:00
Jan Sikorski
996728315a
wined3d: Decrement reference count and take the lock atomically for cached objects.
...
Samplers, blend states, rasterizer states and depth stencil states can
be retrieved from the cache in struct d3d_device even after the
reference count reaches zero, causing memory corruption.
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-12-09 17:14:59 +01:00
Jacek Caban
9596e7f2a4
win32u: Use user driver for wine_get_vulkan_driver.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 09:57:56 +01:00
Henri Verbeet
537e20e041
wined3d: Map OpenGL adapter BOs persistently on 64-bit architectures.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 09:50:59 +01:00
Alexandre Julliard
8d6c33c3bf
include: Remove wine/port.h.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Alexandre Julliard
143bd63b27
include: Remove some no longer used Unicode functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Henri Verbeet
c590681e71
wined3d: Respect the BO memory offset in wined3d_context_gl_map_bo_address().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Henri Verbeet
45fc3cbf12
wined3d: Do not pass an offset and size to wined3d_bo_gl_map().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Henri Verbeet
793ac83d5b
wined3d: Always map the whole OpenGL buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Henri Verbeet
4ff480b2a2
wined3d: Don't return the BO address offset if glMapBuffer() fails.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Zebediah Figura
669360152e
wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding in glsl_blitter_upload_palette().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Zebediah Figura
21481acaf3
wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding in wined3d_texture_gl_allocate_mutable_storage().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Zebediah Figura
d3d9785483
wined3d: Always set GL_PIXEL_PACK_BUFFER binding in texture2d_read_from_framebuffer().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-30 22:07:21 +01:00
Zebediah Figura
f4cbd110d9
wined3d: Always set GL_PIXEL_PACK_BUFFER binding before downloading texture data.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-30 22:07:21 +01:00
Jan Sikorski
d2ceed3904
wined3d: Always set GL_PIXEL_UNPACK_BUFFER binding before calling wined3d_texture_gl_upload_bo().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52116
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-11-29 23:25:46 +01:00
Henri Verbeet
052dbb427d
wined3d: Do not add the BO address offset when calling glFlushMappedBufferRange().
...
Fixes: c2f0ae50b4
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 15:33:29 +01:00
Henri Verbeet
0e501c00c4
wined3d: Respect the BO buffer offset in wined3d_context_gl_copy_bo_address().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 15:33:27 +01:00
Zebediah Figura
d4c3bf9d79
wined3d: Respect the BO buffer offset in wined3d_buffer_gl_download_ranges().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:50 +01:00
Henri Verbeet
2961640bcb
wined3d: Respect the BO buffer offset in wined3d_buffer_gl_upload_ranges().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:48 +01:00
Henri Verbeet
7816809395
wined3d: Respect the BO buffer offset in wined3d_unordered_access_view_gl_clear().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:44 +01:00
Henri Verbeet
0b9002de96
wined3d: Respect the BO buffer offset in create_buffer_texture().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:40 +01:00
Zebediah Figura
d7ba208569
wined3d: Allow OpenGL pixel pack buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:29 +01:00
Zebediah Figura
f059a25af1
wined3d: Respect the BO address offset when flipping the framebuffer in software.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:41:26 +01:00
Zebediah Figura
2e67ea199c
wined3d: Allow OpenGL indirect draw buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Zebediah Figura
3220ea2431
wined3d: Allow OpenGL indirect dispatch buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Zebediah Figura
9c9b576820
wined3d: Allow OpenGL pixel unpack buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Zebediah Figura
0b9a475324
wined3d: Respect the BO address offset when uploading data from the CPU in wined3d_texture_gl_download_data_slow_path().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Zebediah Figura
5c13b060ca
wined3d: Move the "buffer_offset" field to struct wined3d_bo.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Matteo Bruni
884b7c50cf
wined3d: Declare gl_Position as invariant.
...
All D3D versions seem to basically guarantee invariance for the vertex
position at the very least. In practice, desktop GL implementations
also do the same.
That's not necessarily the case for tile based renderers, where the
cost of providing invariance might be non negligible. We want this
behavior though, so let's ask for it explicitly.
Based on a patch by Stefan Dösinger.
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-11-22 22:20:50 +01:00
Andrey Gusev
4f3d189f53
wined3d: Add WINED3DFMT_R16_FLOAT vertex format.
...
Fixes rendering glitches in Batman: Arkham Knight.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Henri Verbeet
ba5f90b29a
wined3d: Allow OpenGL atomic counter buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Henri Verbeet
8f0c9e490b
wined3d: Allow OpenGL uniform buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Zebediah Figura
3057929d54
wined3d: Allow OpenGL transform feedback buffer objects to be suballocated from a larger buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Henri Verbeet
6c6fcff96e
wined3d: Allow OpenGL index buffer objects to be suballocated from a larger BO.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Henri Verbeet
a9584bf521
wined3d: Allow OpenGL vertex buffer objects to be suballocated from a larger BO.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Zebediah Figura
6f0d15e0e3
wined3d: Add a helper to calculate the vertex attribute address for a stream element.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Nikolay Sivov
0d9fdd02e5
wined3d: Add R8G8_UINT to vertex formats list.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52051
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-17 16:04:49 +01:00
Zebediah Figura
4b678c1e9a
wined3d: Make the "counter_bo" field of struct wined3d_unordered_access_view a wined3d_bo pointer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 17:44:42 +01:00
Zebediah Figura
f3647c4b4f
wined3d: Make the "buffer_object" field of struct wined3d_const_bo_addr a wined3d_bo pointer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 17:44:42 +01:00
Zebediah Figura
7148f3939a
wined3d: Make the "buffer_object" field of struct wined3d_bo_address a wined3d_bo pointer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-16 17:44:42 +01:00
Jan Sikorski
0056ebf91e
wined3d: Acquire references to samplers in deferred contexts.
...
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-11-15 19:54:17 +01:00
Jan Sikorski
908fb50728
wined3d: Acquire references to shaders in deferred contexts.
...
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-11-15 19:54:17 +01:00
Jan Sikorski
6057507be4
wined3d: Acquire references to depth stencil states in deferred contexts.
...
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-11-15 19:54:17 +01:00
Jan Sikorski
a313f6bc5c
wined3d: Acquire references to rasterizer states in deferred contexts.
...
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-11-15 19:54:17 +01:00
Jan Sikorski
2228c356e3
wined3d: Acquire references to blend states in deferred contexts.
...
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-11-15 19:54:17 +01:00
Zebediah Figura
b72053868a
wined3d: Try to allocate new Vulkan BOs from the client thread for DISCARD maps.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 18:56:24 +01:00
Zebediah Figura
83d60c5206
wined3d: Allocate all OpenGL buffer BOs from heap.
...
That is, no longer allocate a wined3d_bo_gl as part of the wined3d_buffer_gl
structure.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 18:56:20 +01:00
Zebediah Figura
c465f339a7
wined3d: Avoid accessing the "bo" member of struct wined3d_buffer_gl.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 18:56:00 +01:00
Zebediah Figura
4b22faa94e
wined3d: Introduce wined3d_context_gl_reference_buffer().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 18:55:58 +01:00
Zebediah Figura
8a34f089e0
wined3d: Parse ISG1, PSG1 and OSG1 signatures.
...
These signatures extend the OSG5 format by a minimum precision hint, which gets
ignored for now but could be implemented using 16-bit floats in the future.
Fixes some shader parsing errors in Resident Evil 2.
Based on a vkd3d patch by Philip Rebohle.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:54 +01:00
Zebediah Figura
1b16a606f7
wined3d: Introduce a wined3d_buffer_update_sub_resource() helper.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:54 +01:00
Zebediah Figura
d630aa20bf
wined3d: Make the "buffer_object" field of struct wined3d_buffer a wined3d_bo pointer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:54 +01:00
Zebediah Figura
613e163877
wined3d: Reference vertex buffer objects only after calling context_update_stream_info().
...
It may load buffers into a different location.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:54 +01:00
Zebediah Figura
8600568883
wined3d: Allocate all Vulkan buffer BOs from heap.
...
That is, no longer allocate a wined3d_bo_vk as part of the wined3d_buffer_vk
structure.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-05 22:45:18 +01:00
Zebediah Figura
a5efc1d5e0
wined3d: Protect wined3d_chunk_vk map fields with a mutex.
...
So as to allow chunks to be mapped from the client thread.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-05 22:45:15 +01:00
Zebediah Figura
6f292cf37b
wined3d: Avoid accessing the "bo" member of struct wined3d_buffer_vk.
...
So as to allow the "buffer_object" field to point to other another
wined3d_bo_vk; namely, one allocated and still in use by the client thread.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-05 22:45:12 +01:00
Stefan Dösinger
26a53f674c
wined3d: Emulate fractional viewports if GL doesn't support them.
...
This allows test_fractional_viewports to pass regardless of GL capabilies.
I don't think we can get rid of WINED3D_PIXEL_CENTER_INTEGER (and add +0.5
in the client libs) due to vpos in d3d9 shaders.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:29 +01:00
Stefan Dösinger
044f5e109f
wined3d: Test if an offset is needed to get the correct filling convention.
...
This fixes stray lines in GameFace GUIs, e.g. in World of Tanks.
Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:28 +01:00
Zebediah Figura
b1ae6fd3f4
wined3d: Protect wined3d_bo_slab_vk map fields with a mutex.
...
So as to allow slabs to be mapped from the client thread.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:28 +01:00
Zebediah Figura
580fdb494c
wined3d: Separate a vk_memory_type_from_access_flags() helper.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:28 +01:00
Zebediah Figura
a7dcbf3ede
wined3d: Separate a vk_buffer_usage_from_bind_flags() helper.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:28 +01:00
Zebediah Figura
ce0f12acc9
wined3d: Protect access to the Vulkan wined3d_allocator with a mutex.
...
So that it can be accessed from the client thread.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-04 22:36:28 +01:00
Paul Gofman
7ba8943e72
wined3d: Validate pitch against the new format in wined3d_texture_update_desc().
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51907
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 20:52:19 +01:00
Francois Gouget
facd463f0e
wined3d: Add a trailing linefeed to an ERR().
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 20:47:48 +01:00
Zebediah Figura
d4f8d13b09
wined3d: Move the bo_user field to struct wined3d_buffer.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 20:47:39 +01:00
Zebediah Figura
cdf01b2f59
wined3d: Make wined3d_buffer_gl_binding_from_bind_flags() static.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-01 20:47:36 +01:00
Jan Sikorski
803274ac14
wined3d: Reduce locking of device context operations.
...
Only actually take the lock for the immediate context. According to the
d3d11 documentation, operations on device contexts are not thread safe,
and testing on Windows confirms this.
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-11-01 20:46:21 +01:00
Matteo Bruni
e2abbf9c58
wined3d: End transform feedback on SO buffer destruction even if the D3D buffer isn't bound.
...
It might still be bound in GL.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-19 20:53:18 +02:00
Zebediah Figura
b344d1d091
wined3d: Fully initialize the allocator structure in wined3d_allocator_init().
...
Allows the allocator to be uninitialized and reinitialized.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-18 18:34:11 +02:00
Jan Sikorski
3f4e6673dc
wined3d: Set render targets and UAVs atomically in wined3d.
...
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-10-15 18:32:08 +02:00
Jan Sikorski
90cd8b0764
wined3d: Make reference count decrementing functions thread safe.
...
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-10-15 18:32:03 +02:00
Zebediah Figura
9acf66b795
wined3d: Handle NOOVERWRITE maps on persistently mapped Vulkan buffers from the client thread.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:30:53 +02:00
Zebediah Figura
6e7779ace9
wined3d: Move the "map_ptr" field from struct wined3d_bo_vk to struct wined3d_bo.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:30:49 +02:00
Zebediah Figura
2d05178b28
wined3d: Move the "coherent" field from struct wined3d_bo_gl to struct wined3d_bo.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:30:44 +02:00
Zebediah Figura
86e4d3aa8c
wined3d: Omit GL_MAP_FLUSH_EXPLICIT_BIT for incoherent maps when ARB_MAP_BUFFER_RANGE is used.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-15 18:30:38 +02:00
Zebediah Figura
c53736d12f
wined3d: Move the "memory_offset" field from struct wined3d_bo_vk to struct wined3d_bo.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-14 09:14:15 +02:00
Zebediah Figura
59f16dd564
wined3d: Move the "users" field to a common wined3d_bo structure.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-14 09:14:13 +02:00
Zebediah Figura
3a8a9a678d
wined3d: Return the map pitch from the map_upload_bo() callbacks.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-14 09:14:11 +02:00
Zebediah Figura
4b7beecbeb
wined3d: Return the map pitch from wined3d_device_context_emit_map().
...
Partially undoes 61024aa12f
.
We may want to be able to return an existing BO from
context->ops->map_upload_bo(), in which case it is structurally awkward to
request a specific memory layout. We may also want to give map_upload_bo() the
freedom to allocate either a new (smaller) BO, or use an existing (larger) one,
for partial uploads.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-14 09:14:07 +02:00
Jan Sikorski
b70a7f37bc
wined3d: Count all bo's towards retired bo size.
...
Some memory may be counted more than once, as suballocations and as
backing memory for these suballocations. It doesn't seem worth worrying
about, since the threshold and the mechanism itself are heuristic.
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-10-14 09:14:01 +02:00
Jan Sikorski
dfeded6460
wined3d: Use atomic instructions for resource view bind counts.
...
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-10-11 21:33:38 +02:00
Jan Sikorski
33449ed625
wined3d: Do not call wined3d_device_destroy_default_samplers() in the CS thread.
...
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-10-11 21:33:38 +02:00
Jan Sikorski
6d2d43bb05
wined3d: Make wined3d_device_context procedures thread safe.
...
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-10-11 21:33:38 +02:00
Jacek Caban
c166e9694e
gdi32: Don't export Wine extensions.
...
Link directly to win32u instead.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-08 16:54:48 +02:00
Matteo Bruni
dc3408b1f4
wined3d: Get rid of a WARN() in init_format_filter_info().
...
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-10-06 20:29:35 +02:00
Jan Sikorski
fa410970d9
wined3d: Implement UAV clears on the Vulkan backend.
...
Based on the vkd3d implementation.
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-10-06 20:29:35 +02:00
Jan Sikorski
bacd0301ef
wined3d: Set VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT for unordered access images.
...
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-10-06 20:29:35 +02:00
Jan Sikorski
89d61c28e4
wined3d: Use a single allocation for command list data.
...
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-10-06 20:29:35 +02:00
Jan Sikorski
1554fc44c7
wined3d: Don't pass wined3d_shader to shader_spirv_compile().
...
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-10-05 20:09:21 +02:00
Jan Sikorski
b0f1634b06
wined3d: Introduce wined3d_view_load_location() helper.
...
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-10-05 20:09:21 +02:00
Zebediah Figura
7bc0d3edc4
wined3d: Do not return a struct upload_bo from the map_upload_bo callback.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 20:09:21 +02:00
Zebediah Figura
f0cc2ef2bd
wined3d: Call the unmap_upload_bo callback in wined3d_device_context_emit_update_sub_resource().
...
We will need to mark the resource as no longer mapped, from the client's
perspective.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 20:09:21 +02:00
Zebediah Figura
a8ff9865b9
wined3d: Rename {prepare, get}_upload_bo() to {map, unmap}_upload_bo().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 20:09:21 +02:00