Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClément Foucault <foucault.clem@gmail.com>2019-09-25 16:37:13 +0300
committerClément Foucault <foucault.clem@gmail.com>2019-09-25 16:37:42 +0300
commitf9ef0e1bdece674e40e219b896540fb8096c25a2 (patch)
tree8889b565851eda2f7f0ea4290147dd7d8f41174d
parent7d09c943f6453ad626c5938da6e0b3082b4b4abe (diff)
Fix T67342 EEVEE: Uninitialized buffer when changing screen size
Was caused by some drawcall not being done if the volumetric resolve pass was drawn (using dual source blending seems to be the cause). Not sure why this is needed since it is still reset before the next drawcall.
-rw-r--r--source/blender/draw/intern/draw_manager_exec.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/draw/intern/draw_manager_exec.c b/source/blender/draw/intern/draw_manager_exec.c
index 78da744abf8..3de9ce74dbc 100644
--- a/source/blender/draw/intern/draw_manager_exec.c
+++ b/source/blender/draw/intern/draw_manager_exec.c
@@ -1408,6 +1408,12 @@ static void drw_draw_pass_ex(DRWPass *pass,
DST.batch = NULL;
}
+ /* Fix T67342 for some reason. AMD Pro driver bug. */
+ if ((DST.state & DRW_STATE_BLEND_CUSTOM) != 0 &&
+ GPU_type_matches(GPU_DEVICE_ATI, GPU_OS_ANY, GPU_DRIVER_OFFICIAL)) {
+ drw_state_set(DST.state & ~DRW_STATE_BLEND_CUSTOM);
+ }
+
/* HACK: Rasterized discard can affect clear commands which are not
* part of a DRWPass (as of now). So disable rasterized discard here
* if it has been enabled. */