You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Added patch to implement some more wined3d blend modes.
This commit is contained in:
@@ -6184,7 +6184,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
{
|
||||
TRACE("No Z buffer - disabling depth test\n");
|
||||
zenable = WINED3D_ZB_FALSE;
|
||||
@@ -466,11 +470,19 @@ static void state_blend(struct wined3d_context *context, const struct wined3d_st
|
||||
@@ -474,11 +478,19 @@ static void state_blend(struct wined3d_context *context, const struct wined3d_st
|
||||
checkGLcall("glDisable(GL_LINE_SMOOTH)");
|
||||
}
|
||||
|
||||
@@ -6204,7 +6204,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
|
||||
/* Disable blending in all cases even without pixelshaders.
|
||||
* With blending on we could face a big performance penalty.
|
||||
@@ -861,7 +873,11 @@ static void state_stencil(struct wined3d_context *context, const struct wined3d_
|
||||
@@ -869,7 +881,11 @@ static void state_stencil(struct wined3d_context *context, const struct wined3d_
|
||||
GLint depthFail_back;
|
||||
|
||||
/* No stencil test without a stencil buffer. */
|
||||
@@ -6216,7 +6216,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
{
|
||||
gl_info->gl_ops.gl.p_glDisable(GL_STENCIL_TEST);
|
||||
checkGLcall("glDisable GL_STENCIL_TEST");
|
||||
@@ -957,7 +973,11 @@ static void state_stencil(struct wined3d_context *context, const struct wined3d_
|
||||
@@ -965,7 +981,11 @@ static void state_stencil(struct wined3d_context *context, const struct wined3d_
|
||||
|
||||
static void state_stencilwrite2s(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -6228,7 +6228,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
|
||||
GL_EXTCALL(glActiveStencilFaceEXT(GL_BACK));
|
||||
@@ -971,7 +991,11 @@ static void state_stencilwrite2s(struct wined3d_context *context, const struct w
|
||||
@@ -979,7 +999,11 @@ static void state_stencilwrite2s(struct wined3d_context *context, const struct w
|
||||
|
||||
static void state_stencilwrite(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -6240,7 +6240,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
|
||||
gl_info->gl_ops.gl.p_glStencilMask(mask);
|
||||
@@ -1709,7 +1733,11 @@ static void state_depthbias(struct wined3d_context *context, const struct wined3
|
||||
@@ -1717,7 +1741,11 @@ static void state_depthbias(struct wined3d_context *context, const struct wined3
|
||||
if (state->render_states[WINED3D_RS_SLOPESCALEDEPTHBIAS]
|
||||
|| state->render_states[WINED3D_RS_DEPTHBIAS])
|
||||
{
|
||||
@@ -6252,7 +6252,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
float scale;
|
||||
|
||||
union
|
||||
@@ -3642,7 +3670,11 @@ static void sampler(struct wined3d_context *context, const struct wined3d_state
|
||||
@@ -3650,7 +3678,11 @@ static void sampler(struct wined3d_context *context, const struct wined3d_state
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -6264,7 +6264,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
{
|
||||
ERR("Failed to create sampler.\n");
|
||||
sampler = NULL;
|
||||
@@ -4623,8 +4655,13 @@ static void vertexdeclaration(struct wined3d_context *context, const struct wine
|
||||
@@ -4631,8 +4663,13 @@ static void vertexdeclaration(struct wined3d_context *context, const struct wine
|
||||
|
||||
static void viewport_miscpart(struct wined3d_context *context, const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -6278,7 +6278,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
struct wined3d_viewport vp = state->viewport;
|
||||
unsigned int width, height;
|
||||
@@ -4636,7 +4673,11 @@ static void viewport_miscpart(struct wined3d_context *context, const struct wine
|
||||
@@ -4644,7 +4681,11 @@ static void viewport_miscpart(struct wined3d_context *context, const struct wine
|
||||
if (vp.height > target->height)
|
||||
vp.height = target->height;
|
||||
|
||||
@@ -6290,7 +6290,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
}
|
||||
else if (depth_stencil)
|
||||
{
|
||||
@@ -4663,8 +4704,13 @@ static void viewport_miscpart(struct wined3d_context *context, const struct wine
|
||||
@@ -4671,8 +4712,13 @@ static void viewport_miscpart(struct wined3d_context *context, const struct wine
|
||||
static void viewport_miscpart_cc(struct wined3d_context *context,
|
||||
const struct wined3d_state *state, DWORD state_id)
|
||||
{
|
||||
@@ -6304,7 +6304,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
float pixel_center_offset = context->d3d_info->wined3d_creation_flags
|
||||
& WINED3D_PIXEL_CENTER_INTEGER ? 0.5f : 0.0f;
|
||||
const struct wined3d_gl_info *gl_info = context->gl_info;
|
||||
@@ -4678,7 +4724,11 @@ static void viewport_miscpart_cc(struct wined3d_context *context,
|
||||
@@ -4686,7 +4732,11 @@ static void viewport_miscpart_cc(struct wined3d_context *context,
|
||||
if (vp.height > target->height)
|
||||
vp.height = target->height;
|
||||
|
||||
@@ -6316,7 +6316,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
}
|
||||
else if (depth_stencil)
|
||||
{
|
||||
@@ -4859,13 +4909,21 @@ static void scissorrect(struct wined3d_context *context, const struct wined3d_st
|
||||
@@ -4867,13 +4917,21 @@ static void scissorrect(struct wined3d_context *context, const struct wined3d_st
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -6338,7 +6338,7 @@ diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
|
||||
gl_info->gl_ops.gl.p_glScissor(r->left, height - r->bottom, r->right - r->left, r->bottom - r->top);
|
||||
}
|
||||
else
|
||||
@@ -4943,7 +5001,11 @@ void state_srgbwrite(struct wined3d_context *context, const struct wined3d_state
|
||||
@@ -4951,7 +5009,11 @@ void state_srgbwrite(struct wined3d_context *context, const struct wined3d_state
|
||||
|
||||
TRACE("context %p, state %p, state_id %#x.\n", context, state, state_id);
|
||||
|
||||
@@ -9540,7 +9540,7 @@ diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
|
||||
diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
|
||||
--- a/include/wine/wined3d.h
|
||||
+++ b/include/wine/wined3d.h
|
||||
@@ -886,6 +886,7 @@ enum wined3d_format_support
|
||||
@@ -890,6 +890,7 @@ enum wined3d_format_support
|
||||
|
||||
#define WINED3DDP_MAXTEXCOORD 8
|
||||
|
||||
@@ -9548,7 +9548,7 @@ diff --git a/include/wine/wined3d.h b/include/wine/wined3d.h
|
||||
#define WINED3D_BIND_VERTEX_BUFFER 0x00000001
|
||||
#define WINED3D_BIND_INDEX_BUFFER 0x00000002
|
||||
#define WINED3D_BIND_CONSTANT_BUFFER 0x00000004
|
||||
@@ -895,6 +896,7 @@ enum wined3d_format_support
|
||||
@@ -899,6 +900,7 @@ enum wined3d_format_support
|
||||
#define WINED3D_BIND_DEPTH_STENCIL 0x00000040
|
||||
#define WINED3D_BIND_UNORDERED_ACCESS 0x00000080
|
||||
|
||||
|
||||
Reference in New Issue
Block a user