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-03-24 00:13:57 +0300
committerClément Foucault <foucault.clem@gmail.com>2019-03-24 00:13:57 +0300
commite77dc3e7ffda4ca6bcc96e6a4753fee3b04db803 (patch)
treee2e89190be4549b61dbdd1bf8e8e762370ba4967 /source/blender/draw/engines/workbench/workbench_forward.c
parent13832988add506a3c2dca4964e8a9d1216aef80c (diff)
Fix T62869 Transparent background not working in Xray Mode / Wireframe
This was due to the forward part of the engine not supporting rendered alpha channel.
Diffstat (limited to 'source/blender/draw/engines/workbench/workbench_forward.c')
-rw-r--r--source/blender/draw/engines/workbench/workbench_forward.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/draw/engines/workbench/workbench_forward.c b/source/blender/draw/engines/workbench/workbench_forward.c
index eb9164f6943..b640f306806 100644
--- a/source/blender/draw/engines/workbench/workbench_forward.c
+++ b/source/blender/draw/engines/workbench/workbench_forward.c
@@ -325,6 +325,7 @@ void workbench_forward_engine_init(WORKBENCH_Data *vedata)
const float *viewport_size = DRW_viewport_size_get();
const int size[2] = {(int)viewport_size[0], (int)viewport_size[1]};
+ const eGPUTextureFormat comp_tex_format = DRW_state_is_image_render() ? GPU_RGBA16F : GPU_R11F_G11F_B10F;
e_data.object_id_tx = DRW_texture_pool_query_2d(
size[0], size[1], GPU_R32UI, &draw_engine_workbench_transparent);
@@ -333,7 +334,7 @@ void workbench_forward_engine_init(WORKBENCH_Data *vedata)
e_data.transparent_revealage_tx = DRW_texture_pool_query_2d(
size[0], size[1], GPU_R16F, &draw_engine_workbench_transparent);
e_data.composite_buffer_tx = DRW_texture_pool_query_2d(
- size[0], size[1], GPU_R11F_G11F_B10F, &draw_engine_workbench_transparent);
+ size[0], size[1], comp_tex_format, &draw_engine_workbench_transparent);
GPU_framebuffer_ensure_config(&fbl->object_outline_fb, {
GPU_ATTACHMENT_TEXTURE(dtxl->depth),