Commit d6010ede authored by H. Verbeet's avatar H. Verbeet Committed by Alexandre Julliard

wined3d: Copy the depth buffer after all dirty states are applied.

parent d6245409
......@@ -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 */
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment