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:
authorJacques Lucke <jacques@blender.org>2021-11-11 20:27:31 +0300
committerJacques Lucke <jacques@blender.org>2021-11-11 20:27:31 +0300
commit50f32025ac5cad8808dd31ce74a30ff3a31af6de (patch)
treeaeeb7db5074e1fdf2e5b5a052d16ea05347f8c1e
parentc9c7658926f8decc9593797363f0e19ae3218f6d (diff)
parent393879f30cc093a826f693a903155f95bcbfd34c (diff)
Merge branch 'blender-v3.0-release'
-rw-r--r--intern/cycles/blender/object.cpp2
-rw-r--r--source/blender/blenkernel/intern/node.cc6
2 files changed, 7 insertions, 1 deletions
diff --git a/intern/cycles/blender/object.cpp b/intern/cycles/blender/object.cpp
index 0ad3e551b8d..d6c52f7faf9 100644
--- a/intern/cycles/blender/object.cpp
+++ b/intern/cycles/blender/object.cpp
@@ -294,7 +294,7 @@ Object *BlenderSync::sync_object(BL::Depsgraph &b_depsgraph,
object->set_visibility(visibility);
- object->set_is_shadow_catcher(b_ob.is_shadow_catcher());
+ object->set_is_shadow_catcher(b_ob.is_shadow_catcher() || b_parent.is_shadow_catcher());
float shadow_terminator_shading_offset = get_float(cobject, "shadow_terminator_offset");
object->set_shadow_terminator_shading_offset(shadow_terminator_shading_offset);
diff --git a/source/blender/blenkernel/intern/node.cc b/source/blender/blenkernel/intern/node.cc
index eb2b125e7e6..984029a58b4 100644
--- a/source/blender/blenkernel/intern/node.cc
+++ b/source/blender/blenkernel/intern/node.cc
@@ -4778,6 +4778,9 @@ static OutputFieldDependency find_group_output_dependencies(
/* Propagate search further to the left. */
for (const InputSocketRef *origin_input_socket :
gather_input_socket_dependencies(field_dependency, origin_node)) {
+ if (!origin_input_socket->is_available()) {
+ continue;
+ }
if (!field_state_by_socket_id[origin_input_socket->id()].is_single) {
if (handled_sockets.add(origin_input_socket)) {
sockets_to_check.push(origin_input_socket);
@@ -4826,6 +4829,9 @@ static void propagate_data_requirements_from_right_to_left(
const Vector<const InputSocketRef *> connected_inputs = gather_input_socket_dependencies(
field_dependency, *node);
for (const InputSocketRef *input_socket : connected_inputs) {
+ if (!input_socket->is_available()) {
+ continue;
+ }
if (inferencing_interface.inputs[input_socket->index()] ==
InputSocketFieldType::Implicit) {
if (!input_socket->is_logically_linked()) {