[Bf-blender-cvs] [ab5f86a04e1] blender2.8: Eevee: Render: Add Transparent Background option.
Clément Foucault
noreply at git.blender.org
Thu Feb 1 20:49:09 CET 2018
Commit: ab5f86a04e1cbc7105ae50836abb74524516e976
Author: Clément Foucault
Date: Thu Feb 1 18:54:17 2018 +0100
Branches: blender2.8
https://developer.blender.org/rBab5f86a04e1cbc7105ae50836abb74524516e976
Eevee: Render: Add Transparent Background option.
... under a new "Film" tab in the render properties panel.
===================================================================
M release/scripts/startup/bl_ui/properties_render.py
M source/blender/draw/engines/eevee/eevee_render.c
M source/blender/draw/intern/draw_manager.c
===================================================================
diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index 94eedec98e1..3ec1dbf85a7 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -877,6 +877,25 @@ class RENDER_PT_eevee_indirect_lighting(RenderButtonsPanel, Panel):
col.prop(props, "gi_visibility_resolution")
+class RENDER_PT_eevee_film(RenderButtonsPanel, Panel):
+ bl_label = "Film"
+ bl_options = {'DEFAULT_CLOSED'}
+ COMPAT_ENGINES = {'BLENDER_EEVEE'}
+
+ @classmethod
+ def poll(cls, context):
+ scene = context.scene
+ return scene and (scene.view_render.engine in cls.COMPAT_ENGINES)
+
+ def draw(self, context):
+ layout = self.layout
+ scene = context.scene
+ rd = scene.render
+
+ col = layout.column()
+ col.prop(rd, "alpha_mode", text="Alpha")
+
+
classes = (
RENDER_MT_presets,
RENDER_MT_ffmpeg_presets,
@@ -896,6 +915,7 @@ classes = (
RENDER_PT_clay_layer_settings,
RENDER_PT_clay_collection_settings,
RENDER_PT_eevee_sampling,
+ RENDER_PT_eevee_film,
RENDER_PT_eevee_shadows,
RENDER_PT_eevee_indirect_lighting,
RENDER_PT_eevee_subsurface_scattering,
diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c
index b4a0986b56c..92ea737906c 100644
--- a/source/blender/draw/engines/eevee/eevee_render.c
+++ b/source/blender/draw/engines/eevee/eevee_render.c
@@ -75,7 +75,7 @@ void EEVEE_render_init(EEVEE_Data *ved, RenderEngine *engine, struct Depsgraph *
stl->g_data = MEM_callocN(sizeof(*stl->g_data), __func__);
}
EEVEE_PrivateData *g_data = stl->g_data;
- g_data->background_alpha = 1.0f; /* TODO option */
+ g_data->background_alpha = DRW_state_draw_background() ? 1.0f : 0.0f;
g_data->valid_double_buffer = 0;
/* Alloc common ubo data. */
@@ -348,7 +348,7 @@ void EEVEE_render_draw(EEVEE_Data *vedata, struct RenderEngine *engine, struct D
unsigned int render_samples = BKE_collection_engine_property_value_get_int(props, "taa_render_samples");
while (render_samples-- > 0) {
- float clear_col[4] = {0.0f, 0.0f, 0.0f, 0.6f};
+ float clear_col[4] = {0.0f, 0.0f, 0.0f, 0.0f};
unsigned int primes[3] = {2, 3, 7};
double offset[3] = {0.0, 0.0, 0.0};
double r[3];
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 0e8861b48bb..baa2f46a87a 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -3607,6 +3607,7 @@ void DRW_render_to_image(RenderEngine *re, struct Depsgraph *depsgraph)
/* Reset before using it. */
memset(&DST, 0x0, sizeof(DST));
DST.options.is_image_render = true;
+ DST.options.draw_background = scene->r.alphamode == R_ADDSKY;
DST.draw_ctx = (DRWContextState){
NULL, NULL, NULL, scene, view_layer, OBACT(view_layer), engine_type, depsgraph, NULL
More information about the Bf-blender-cvs
mailing list