Module: wine Branch: master Commit: d6010edee074437335b1b75ce0c89e49a8458299 URL: http://source.winehq.org/git/wine.git/?a=commit;h=d6010edee074437335b1b75ce0...
Author: H. Verbeet hverbeet@gmail.com Date: Mon Dec 25 17:12:45 2006 +0100
wined3d: Copy the depth buffer after all dirty states are applied.
---
dlls/wined3d/drawprim.c | 18 +++++++++--------- 1 files changed, 9 insertions(+), 9 deletions(-)
diff --git a/dlls/wined3d/drawprim.c b/dlls/wined3d/drawprim.c index a050bb2..a1992c4 100644 --- a/dlls/wined3d/drawprim.c +++ b/dlls/wined3d/drawprim.c @@ -1949,15 +1949,6 @@ void drawPrimitive(IWineD3DDevice *iface
BOOL lighting_changed, lighting_original = FALSE;
- if (TRACE_ON(d3d_draw) && wined3d_settings.offscreen_rendering_mode == ORM_FBO) { - check_fbo_status(iface); - } - - if (This->depth_copy_state == WINED3D_DCS_COPY) { - depth_copy(iface); - } - This->depth_copy_state = WINED3D_DCS_INITIAL; - /* Shaders can be implemented using ARB_PROGRAM, GLSL, or software - * here simply check whether a shader was set, or the user disabled shaders */ if (This->vs_selected_mode != SHADER_NONE && This->stateBlock->vertexShader && @@ -1990,6 +1981,15 @@ void drawPrimitive(IWineD3DDevice *iface } This->numDirtyEntries = 0; /* This makes the whole list clean */
+ if (TRACE_ON(d3d_draw) && wined3d_settings.offscreen_rendering_mode == ORM_FBO) { + check_fbo_status(iface); + } + + if (This->depth_copy_state == WINED3D_DCS_COPY) { + depth_copy(iface); + } + This->depth_copy_state = WINED3D_DCS_INITIAL; + if(DrawPrimStrideData) {
/* Note: this is a ddraw fixed-function code path */