[PATCH 0/9] wined3d: Support non-zero colors in renderpass clears
Stefan Dösinger
stefan at codeweavers.com
Sun May 1 13:39:02 CDT 2022
This patchset implements delayed clears in the Vulkan renderer with
arbitrary colors. The Vulkan side of it is fairly simple - most of the
patches extend the CPU fallback path to support those colors.
The final patch adds a d3d9 test to exercise the fallback code. The Vk
renderer is functional enough in d3d9 to run this particular test. I
don't see a way to reliably test this codepath through d3d10/11 without
quirky assumptions about CopyResource. Dynamic and staging resources
can't be written by the GPU, and default resources can't be read by the
CPU.
Stefan Dösinger (9):
wined3d: Separate mapping from data writing in
surface_cpu_blt_colour_fill.
wined3d: Prepare wined3d_format_convert_from_float for > 32bpp
formats.
wined3d: Add support for sysmem-clearing float32 formats.
wined3d: Support CPU clear of float16 formats.
wined3d: Add 16 bit per channel UNORM formats to
wined3d_format_convert_from_float.
wined3d: Add a memory_colour_fill for clearing the entire level to
zero.
wined3d: Prepare sysmem LOCATION_CLEARED handling for non-zero colors.
wined3d: Store clear colors in subresources.
d3d9/tests: Extend color_fill_test.
dlls/d3d9/tests/visual.c | 132 ++++++++++++++++++++++------
dlls/wined3d/context_vk.c | 57 ++++++++++--
dlls/wined3d/device.c | 7 +-
dlls/wined3d/resource.c | 112 +++++++++++++++++++++++
dlls/wined3d/surface.c | 139 +----------------------------
dlls/wined3d/texture.c | 52 +++++++----
dlls/wined3d/utils.c | 156 +++++++++++++++++++++++++--------
dlls/wined3d/wined3d_private.h | 91 +++++++++++++++++--
8 files changed, 514 insertions(+), 232 deletions(-)
--
2.35.1
More information about the wine-devel
mailing list