[Bf-blender-cvs] [05b2016499f] tmp-eevee-aov: EEVEE AOV: Validate AOV Names
Jeroen Bakker
noreply at git.blender.org
Mon Sep 28 11:43:58 CEST 2020
Commit: 05b2016499f9e0ec81da09f3686067103c4a9e80
Author: Jeroen Bakker
Date: Mon Sep 28 08:32:12 2020 +0200
Branches: tmp-eevee-aov
https://developer.blender.org/rB05b2016499f9e0ec81da09f3686067103c4a9e80
EEVEE AOV: Validate AOV Names
===================================================================
M source/blender/blenkernel/intern/layer.c
M source/blender/draw/engines/eevee/eevee_render.c
M source/blender/makesrna/intern/rna_scene.c
===================================================================
diff --git a/source/blender/blenkernel/intern/layer.c b/source/blender/blenkernel/intern/layer.c
index f45ad4b04c8..7bd9d8a28a6 100644
--- a/source/blender/blenkernel/intern/layer.c
+++ b/source/blender/blenkernel/intern/layer.c
@@ -1877,6 +1877,7 @@ struct ViewLayerAOV *BKE_view_layer_add_aov(struct ViewLayer *view_layer)
{
ViewLayerAOV *aov;
aov = MEM_callocN(sizeof(ViewLayerAOV), __func__);
+ aov->type = AOV_TYPE_COLOR;
BLI_addtail(&view_layer->aovs, aov);
BLI_strncpy(aov->name, "AOV", 64);
viewlayer_aov_active_set(view_layer, aov);
diff --git a/source/blender/draw/engines/eevee/eevee_render.c b/source/blender/draw/engines/eevee/eevee_render.c
index edb337cf0c1..61dac88dbed 100644
--- a/source/blender/draw/engines/eevee/eevee_render.c
+++ b/source/blender/draw/engines/eevee/eevee_render.c
@@ -702,6 +702,19 @@ void EEVEE_render_update_passes(RenderEngine *engine, Scene *scene, ViewLayer *v
CHECK_PASS_EEVEE(VOLUME_TRANSMITTANCE, SOCK_RGBA, 3, "RGB");
CHECK_PASS_EEVEE(BLOOM, SOCK_RGBA, 3, "RGB");
+ LISTBASE_FOREACH (ViewLayerAOV *, aov, &view_layer->aovs) {
+ switch (aov->type) {
+ case AOV_TYPE_COLOR:
+ RE_engine_register_pass(engine, scene, view_layer, aov->name, 3, "RGB", SOCK_RGBA);
+ break;
+ case AOV_TYPE_VALUE:
+ RE_engine_register_pass(engine, scene, view_layer, aov->name, 1, "R", SOCK_FLOAT);
+ break;
+ default:
+ break;
+ }
+ }
+
#undef CHECK_PASS_LEGACY
#undef CHECK_PASS_EEVEE
}
diff --git a/source/blender/makesrna/intern/rna_scene.c b/source/blender/makesrna/intern/rna_scene.c
index 0f84fa9cf62..34f81186d99 100644
--- a/source/blender/makesrna/intern/rna_scene.c
+++ b/source/blender/makesrna/intern/rna_scene.c
@@ -4018,6 +4018,7 @@ static void rna_def_view_layer_aov(BlenderRNA *brna)
prop = RNA_def_property(srna, "type", PROP_ENUM, PROP_NONE);
RNA_def_property_enum_sdna(prop, NULL, "type");
RNA_def_property_enum_items(prop, rna_enum_view_layer_aov_type_items);
+ RNA_def_property_enum_default(prop, AOV_TYPE_COLOR);
RNA_def_property_ui_text(prop, "Type", "Data type of the AOV");
RNA_def_property_update(prop, NC_SCENE | ND_RENDER_OPTIONS, "rna_ViewLayer_pass_update");
}
More information about the Bf-blender-cvs
mailing list