diff --git a/scripts/startup/bl_operators/anim.py b/scripts/startup/bl_operators/anim.py index 44ce27ecf96..7b24bc8b363 100644 --- a/scripts/startup/bl_operators/anim.py +++ b/scripts/startup/bl_operators/anim.py @@ -223,7 +223,7 @@ class NLA_OT_bake(Operator): ) clear_constraints: BoolProperty( name="Clear Constraints", - description="Remove all constraints from keyed object/bones, and do 'visual' keying", + description="Remove all constraints from keyed object/bones. To get a correct bake with this setting Visual Keying should be enabled", default=False, ) clear_parents: BoolProperty( diff --git a/source/blender/editors/space_nla/nla_draw.cc b/source/blender/editors/space_nla/nla_draw.cc index ee74f7bcc7c..b52c9fb8479 100644 --- a/source/blender/editors/space_nla/nla_draw.cc +++ b/source/blender/editors/space_nla/nla_draw.cc @@ -882,6 +882,11 @@ void draw_nla_main_data(bAnimContext *ac, SpaceNla *snla, ARegion *region) break; } case NLASTRIP_EXTEND_HOLD_FORWARD: { + if (ale->data == nullptr) { + /* This can happen if the object itself has no action attached anymore (e.g. after + * using "push down"). */ + break; + } const animrig::Action &action = static_cast(ale->data)->wrap(); float2 frame_range = action.get_frame_range(); BKE_nla_clip_length_ensure_nonzero(&frame_range[0], &frame_range[1]); diff --git a/source/blender/nodes/geometry/nodes/node_geo_sample_index.cc b/source/blender/nodes/geometry/nodes/node_geo_sample_index.cc index 678ce14a7c6..bb7af605dca 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_sample_index.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_sample_index.cc @@ -28,7 +28,8 @@ static void node_declare(NodeDeclarationBuilder &b) .supported_type({GeometryComponent::Type::Mesh, GeometryComponent::Type::PointCloud, GeometryComponent::Type::Curve, - GeometryComponent::Type::Instance}); + GeometryComponent::Type::Instance, + GeometryComponent::Type::GreasePencil}); if (node != nullptr) { const eCustomDataType data_type = eCustomDataType(node_storage(*node).data_type); b.add_input(data_type, "Value").hide_value().field_on_all(); @@ -95,7 +96,8 @@ static const GeometryComponent *find_source_component(const GeometrySet &geometr GeometryComponent::Type::Mesh, GeometryComponent::Type::PointCloud, GeometryComponent::Type::Curve, - GeometryComponent::Type::Instance}; + GeometryComponent::Type::Instance, + GeometryComponent::Type::GreasePencil}; for (const GeometryComponent::Type src_type : supported_types) { if (component_is_available(geometry, src_type, domain)) { return geometry.get_component(src_type);