wine/dlls/wined3d
Zebediah Figura 5b60f4649b wined3d: Set d3d 1-9 textures in the state as SRVs.
The idea is to reuse the existing code to handle SRVs, which simplifies the GL
code and essentially allows the Vulkan code to work "for free" (which is to say,
by writing this patch, rather than by adding support for flat textures to the
Vulkan renderer.)

This is a large patch; it consists the following parts:

* Create identity SRVs for d3d 1-9 textures. Store those in
  state->shader_resource_view instead of in state->texture.

* (Re)use wined3d_context_gl_bind_shader_resources() instead of state_sampler()
  to bind them.

  - Introduce code to that function to handle FFP textures.

  - Bind the sRGB texture if necessary in wined3d_shader_resource_view_gl_bind.

* (Re)use context_gl_load_shader_resources() instead of
  context_preload_textures() to load them.

  - Introduce code to that function to handle FFP textures.

  - Load the sRGB texture if necessary.

  - Port the SRV/RTV feedback loop check from context_preload_textures().

* Invalidate STATE_GRAPHICS_SHADER_RESOURCE_BINDING in places that now need to
  account for texture binding being guarded by that state instead of
  STATE_SAMPLER.

  Transitioning the remaining users of STATE_SAMPLER to
  STATE_GRAPHICS_SHADER_RESOURCE_BINDING, and removing STATE_SAMPLER, is left
  for future patches.
2023-12-01 18:46:23 +01:00
..
adapter_gl.c wined3d: Release the view's resource after destroying the view. 2023-12-01 18:45:20 +01:00
adapter_vk.c wined3d: Release the view's resource after destroying the view. 2023-12-01 18:45:20 +01:00
arb_program_shader.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
ati_fragment_shader.c wined3d: Introduce a wined3d_state_get_ffp_texture() helper. 2023-11-17 19:53:45 +01:00
buffer.c wined3d: Do not track dirty ranges for buffers without WINED3D_BUFFER_USE_BO. 2023-10-18 14:01:57 +02:00
context.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
context_gl.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
context_vk.c wined3d: Provide a null counter BO for slots with no corresponding XFB buffer bound. 2023-11-16 13:43:49 +01:00
cs.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
device.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
directx.c wined3d: Add entry info for NVidia RTX 3070. 2023-11-07 11:04:27 +01:00
gl_compat.c wined3d: Move the wined3d_gl.h include to individual files. 2023-08-25 22:52:45 +02:00
glsl_shader.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
Makefile.in makefiles: Always use the global SOURCES variable for .rc files. 2023-11-01 22:43:56 +01:00
nvidia_texture_shader.c wined3d: Set the active texture in nvts_texdim(). 2023-11-17 19:53:51 +01:00
palette.c
query.c wined3d: Move the wined3d_gl.h include to individual files. 2023-08-25 22:52:45 +02:00
resource.c wined3d: Move the wined3d_gl.h include to individual files. 2023-08-25 22:52:45 +02:00
sampler.c wined3d: Translate sampler states to sampler objects in wined3d_device_apply_stateblock(). 2023-11-07 20:55:09 +01:00
shader.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
shader_sm1.c
shader_sm4.c wined3d: Use return type to return result from read_dword. 2023-10-24 06:30:23 -05:00
shader_spirv.c wined3d: Store the "wined3d_caps" field of struct fragment_caps as separate bool flags. 2023-10-06 20:48:21 +02:00
state.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
stateblock.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
surface.c wined3d: Skip acquiring a context for an offscreen resource in texture2d_read_from_framebuffer(). 2023-09-15 18:34:12 +02:00
swapchain.c wined3d: Fix a use after free (Coverity). 2023-11-27 22:39:51 +01:00
texture.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
utils.c wined3d: Introduce an API for creating an identity SRV on a texture. 2023-12-01 18:45:44 +01:00
version.rc
vertexdeclaration.c
view.c wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
wined3d.spec wined3d: Introduce an API for creating an identity SRV on a texture. 2023-12-01 18:45:44 +01:00
wined3d_gl.h wined3d/glsl: Clamp ftou upper bound to UINT_MAX. 2023-11-07 22:05:35 +01:00
wined3d_main.c wined3d: Don't override the default renderer in wined3d_dll_init(). 2023-10-26 15:28:00 -05:00
wined3d_private.h wined3d: Set d3d 1-9 textures in the state as SRVs. 2023-12-01 18:46:23 +01:00
wined3d_shaders.h
wined3d_vk.h wined3d: Remove DECLSPEC_HIDDEN usage. 2023-11-28 22:58:42 +01:00