Merge branch 'blender-v4.1-release'

This commit is contained in:
Brecht Van Lommel 2024-03-16 19:45:51 +01:00
commit b8ea467475
4 changed files with 17 additions and 12 deletions

@ -1594,14 +1594,15 @@ class CyclesPreferences(bpy.types.AddonPreferences):
compute_device_type = self.get_compute_device_type()
# We need non-CPU devices, used for rendering and supporting OIDN GPU denoising
for device in _cycles.available_devices(compute_device_type):
device_type = device[1]
if device_type == 'CPU':
continue
if compute_device_type != 'NONE':
for device in _cycles.available_devices(compute_device_type):
device_type = device[1]
if device_type == 'CPU':
continue
has_device_oidn_support = device[5]
if has_device_oidn_support and self.find_existing_device_entry(device).use:
return True
has_device_oidn_support = device[5]
if has_device_oidn_support and self.find_existing_device_entry(device).use:
return True
return False

@ -1 +1 @@
Subproject commit c676bcef741d7867f1c313773069fffb272dcf0a
Subproject commit d983ed32a1e760130ba31ad8a98a94ea943267a2

@ -11,7 +11,9 @@ static void node_declare(NodeDeclarationBuilder &b)
b.add_input<decl::Geometry>("Geometry");
b.add_output<decl::Geometry>("Mesh").propagate_all();
b.add_output<decl::Geometry>("Curve").propagate_all();
b.add_output<decl::Geometry>("Grease Pencil").propagate_all();
if (U.experimental.use_grease_pencil_version3) {
b.add_output<decl::Geometry>("Grease Pencil").propagate_all();
}
b.add_output<decl::Geometry>("Point Cloud").propagate_all();
b.add_output<decl::Geometry>("Volume")
.translation_context(BLT_I18NCONTEXT_ID_ID)
@ -36,7 +38,7 @@ static void node_geo_exec(GeoNodeExecParams params)
if (geometry_set.has<CurveComponent>()) {
curves.add(*geometry_set.get_component<CurveComponent>());
}
if (geometry_set.has<GreasePencilComponent>()) {
if (geometry_set.has<GreasePencilComponent>() && U.experimental.use_grease_pencil_version3) {
grease_pencil.add(*geometry_set.get_component<GreasePencilComponent>());
}
if (geometry_set.has<PointCloudComponent>()) {
@ -51,7 +53,9 @@ static void node_geo_exec(GeoNodeExecParams params)
params.set_output("Mesh", meshes);
params.set_output("Curve", curves);
params.set_output("Grease Pencil", grease_pencil);
if (U.experimental.use_grease_pencil_version3) {
params.set_output("Grease Pencil", grease_pencil);
}
params.set_output("Point Cloud", point_clouds);
params.set_output("Volume", volumes);
params.set_output("Instances", instances);

@ -786,7 +786,7 @@ void WM_operator_properties_reset(wmOperator *op)
RNA_PROP_BEGIN (op->ptr, itemptr, iterprop) {
PropertyRNA *prop = static_cast<PropertyRNA *>(itemptr.data);
if ((RNA_property_flag(prop) & PROP_SKIP_SAVE) == 0) {
if ((RNA_property_flag(prop) & (PROP_SKIP_SAVE | PROP_SKIP_PRESET)) == 0) {
const char *identifier = RNA_property_identifier(prop);
RNA_struct_idprops_unset(op->ptr, identifier);
}