Module: wine
Branch: master
Commit: b64cc15d615659200643f0094f07133ec8b028b9
URL: https://gitlab.winehq.org/wine/wine/-/commit/b64cc15d615659200643f0094f0713…
Author: Zebediah Figura <zfigura(a)codeweavers.com>
Date: Sat Nov 11 21:32:17 2023 -0600
wined3d: Introduce a separate fp_disable() method.
Analogous to shader_disable().
We'd like to pass a wined3d_state pointer to fp_enable() to let it handle
actually compiling the fragment pipeline, which doesn't mesh well conceptually
with its use in shader_disable().
---
dlls/wined3d/arb_program_shader.c | 29 ++++++++++++-------
dlls/wined3d/ati_fragment_shader.c | 27 ++++++++++++------
dlls/wined3d/ffp_gl.c | 37 ++++++++++++------------
dlls/wined3d/glsl_shader.c | 25 +++++++++-------
dlls/wined3d/nvidia_texture_shader.c | 55 ++++++++++++++++++++++++------------
dlls/wined3d/shader.c | 2 +-
dlls/wined3d/shader_spirv.c | 8 +++++-
dlls/wined3d/wined3d_private.h | 1 +
8 files changed, 117 insertions(+), 67 deletions(-)
Module: wine
Branch: master
Commit: c8a98e03c8f13664c6d3c43897da5e2443b79ab1
URL: https://gitlab.winehq.org/wine/wine/-/commit/c8a98e03c8f13664c6d3c43897da5e…
Author: Zebediah Figura <zfigura(a)codeweavers.com>
Date: Sat Nov 11 13:57:55 2023 -0600
wined3d: Merge shader_load_constants() into shader_select().
Arguably there is a benefit here in that it reduces shader backend state
application down to a single method, although whether that is an improvement may
be up for debate.
More saliently, we would like to move FFP state application out of the state
table and into a linear state function. In practice that function will probably
be vp_enable / fp_enable. In that case we will need those functions, and hence
also shader_select(), to be called when more states are dirty.
This does not in itself mean that shader_load_constants() needs to be merged
with shader_select(), but it does remove the primary impetus for keeping them
separate.
Rename to shader_apply_draw_state() to reflect the adjusted purpose, as
suggested by Henri Verbeet.
---
dlls/wined3d/arb_program_shader.c | 40 +++++++++++++++++++--------------------
dlls/wined3d/context_gl.c | 16 +++++-----------
dlls/wined3d/context_vk.c | 2 +-
dlls/wined3d/glsl_shader.c | 38 ++++++++++++++++++++++---------------
dlls/wined3d/shader.c | 7 ++-----
dlls/wined3d/shader_spirv.c | 11 ++---------
dlls/wined3d/wined3d_private.h | 4 +---
7 files changed, 54 insertions(+), 64 deletions(-)