From 1e0e76b9ae05fc4ca31917ef41dd3a659af3c327 Mon Sep 17 00:00:00 2001 From: Cody Winchester Date: Mon, 1 Dec 2025 18:48:42 -0600 Subject: [PATCH] GOOENGINE: Add override ignore option for active camera Simple boolean to not use the override camera scene setting --- .../geometry/nodes/node_geo_input_active_camera.cc | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/source/blender/nodes/geometry/nodes/node_geo_input_active_camera.cc b/source/blender/nodes/geometry/nodes/node_geo_input_active_camera.cc index 4e323d878f5..ccebb68ad12 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_input_active_camera.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_input_active_camera.cc @@ -12,16 +12,21 @@ static void node_declare(NodeDeclarationBuilder &b) { b.add_output("Active Camera") .description("The camera used for rendering the scene"); + b.add_input("Ignore Scene Override") + .field_on({0}) + .description( + "Ignores the Goo Engine geometry nodes override scene setting and uses the original active camera"); } static void node_exec(GeoNodeExecParams params) { const Scene *scene = DEG_get_evaluated_scene(params.depsgraph()); - if (scene->gn_camera_override == nullptr) { - Object *camera = DEG_get_evaluated_object(params.depsgraph(), scene->camera); + + if (!(scene->gn_camera_override == nullptr) && !(params.get_input("Ignore Scene Override"))) { + Object *camera = DEG_get_evaluated_object(params.depsgraph(), scene->gn_camera_override); params.set_output("Active Camera", camera); } else { - Object *camera = DEG_get_evaluated_object(params.depsgraph(), scene->gn_camera_override); + Object *camera = DEG_get_evaluated_object(params.depsgraph(), scene->camera); params.set_output("Active Camera", camera); } }