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:
authorHans Goudey <h.goudey@me.com>2021-01-25 20:48:53 +0300
committerHans Goudey <h.goudey@me.com>2021-01-25 20:48:53 +0300
commit93e3aed04145892bfec06b571da138ebf9aca7e3 (patch)
tree6961f7bdb606d12ffc2163bc5dd355364ae24dfe
parent51c433f1a52dfd0a0d51f3d8a2a954352be09b98 (diff)
parentaa030d34599387aa560da7db38b0e119c06f1530 (diff)
Merge branch 'blender-v2.92-release'
-rw-r--r--intern/cycles/render/session.cpp8
-rw-r--r--source/blender/makesrna/RNA_access.h1
-rw-r--r--source/blender/makesrna/intern/rna_modifier.c30
-rw-r--r--source/blender/modifiers/intern/MOD_nodes.cc17
4 files changed, 15 insertions, 41 deletions
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp
index d75246beaa0..3c601e18126 100644
--- a/intern/cycles/render/session.cpp
+++ b/intern/cycles/render/session.cpp
@@ -560,10 +560,12 @@ bool Session::acquire_tile(RenderTile &rtile, Device *tile_device, uint tile_typ
if (read_bake_tile_cb) {
/* This will read any passes needed as input for baking. */
if (tile_manager.state.sample == tile_manager.range_start_sample) {
- thread_scoped_lock tile_lock(tile_mutex);
- read_bake_tile_cb(rtile);
+ {
+ thread_scoped_lock tile_lock(tile_mutex);
+ read_bake_tile_cb(rtile);
+ }
+ rtile.buffers->buffer.copy_to_device();
}
- rtile.buffers->buffer.copy_to_device();
}
else {
/* This will tag tile as IN PROGRESS in blender-side render pipeline,
diff --git a/source/blender/makesrna/RNA_access.h b/source/blender/makesrna/RNA_access.h
index 6a018ab270e..35b174f0da8 100644
--- a/source/blender/makesrna/RNA_access.h
+++ b/source/blender/makesrna/RNA_access.h
@@ -574,7 +574,6 @@ extern StructRNA RNA_SimpleDeformModifier;
extern StructRNA RNA_SimplifyGpencilModifier;
extern StructRNA RNA_Simulation;
extern StructRNA RNA_NodesModifier;
-extern StructRNA RNA_NodesModifierSettings;
extern StructRNA RNA_GeometryNode;
extern StructRNA RNA_GeometryNodeTree;
extern StructRNA RNA_SkinModifier;
diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c
index 88953e8fddf..e02e47745b0 100644
--- a/source/blender/makesrna/intern/rna_modifier.c
+++ b/source/blender/makesrna/intern/rna_modifier.c
@@ -1617,21 +1617,16 @@ static void rna_NodesModifier_node_group_update(Main *bmain, Scene *scene, Point
MOD_nodes_update_interface(object, nmd);
}
-static IDProperty *rna_NodesModifierSettings_properties(PointerRNA *ptr, bool create)
+static IDProperty *rna_NodesModifier_properties(PointerRNA *ptr, bool create)
{
- NodesModifierSettings *settings = ptr->data;
+ NodesModifierData *nmd = ptr->data;
+ NodesModifierSettings *settings = &nmd->settings;
if (create && settings->properties == NULL) {
IDPropertyTemplate val = {0};
settings->properties = IDP_New(IDP_GROUP, &val, "Nodes Modifier Settings");
}
return settings->properties;
}
-
-static char *rna_NodesModifierSettings_path(PointerRNA *UNUSED(ptr))
-{
- return BLI_strdup("settings");
-}
-
#else
static void rna_def_property_subdivision_common(StructRNA *srna)
@@ -6960,18 +6955,6 @@ static void rna_def_modifier_weightednormal(BlenderRNA *brna)
RNA_define_lib_overridable(false);
}
-static void rna_def_modifier_nodes_settings(BlenderRNA *brna)
-{
- StructRNA *srna;
-
- srna = RNA_def_struct(brna, "NodesModifierSettings", NULL);
- RNA_def_struct_nested(brna, srna, "NodesModifier");
- RNA_def_struct_path_func(srna, "rna_NodesModifierSettings_path");
- RNA_def_struct_ui_text(
- srna, "Nodes Modifier Settings", "Settings that are passed into the node group");
- RNA_def_struct_idprops_func(srna, "rna_NodesModifierSettings_properties");
-}
-
static void rna_def_modifier_nodes(BlenderRNA *brna)
{
StructRNA *srna;
@@ -6980,6 +6963,7 @@ static void rna_def_modifier_nodes(BlenderRNA *brna)
srna = RNA_def_struct(brna, "NodesModifier", "Modifier");
RNA_def_struct_ui_text(srna, "Nodes Modifier", "");
RNA_def_struct_sdna(srna, "NodesModifierData");
+ RNA_def_struct_idprops_func(srna, "rna_NodesModifier_properties");
RNA_def_struct_ui_icon(srna, ICON_NODETREE);
RNA_define_lib_overridable(true);
@@ -6990,13 +6974,7 @@ static void rna_def_modifier_nodes(BlenderRNA *brna)
RNA_def_property_flag(prop, PROP_EDITABLE);
RNA_def_property_update(prop, 0, "rna_NodesModifier_node_group_update");
- prop = RNA_def_property(srna, "settings", PROP_POINTER, PROP_NONE);
- RNA_def_property_flag(prop, PROP_NEVER_NULL);
- RNA_def_property_ui_text(prop, "Settings", "Settings that are passed into the node group");
-
RNA_define_lib_overridable(false);
-
- rna_def_modifier_nodes_settings(brna);
}
static void rna_def_modifier_mesh_to_volume(BlenderRNA *brna)
diff --git a/source/blender/modifiers/intern/MOD_nodes.cc b/source/blender/modifiers/intern/MOD_nodes.cc
index 6da2ecba6a7..6ce288e8ac5 100644
--- a/source/blender/modifiers/intern/MOD_nodes.cc
+++ b/source/blender/modifiers/intern/MOD_nodes.cc
@@ -1057,7 +1057,7 @@ static void modifyGeometrySet(ModifierData *md,
* the correct label displayed in the UI. */
static void draw_property_for_socket(uiLayout *layout,
PointerRNA *bmain_ptr,
- PointerRNA *settings_ptr,
+ PointerRNA *md_ptr,
const IDProperty *modifier_props,
const bNodeSocket &socket)
{
@@ -1085,12 +1085,12 @@ static void draw_property_for_socket(uiLayout *layout,
switch (socket.type) {
case SOCK_OBJECT: {
uiItemPointerR(
- layout, settings_ptr, rna_path, bmain_ptr, "objects", socket.name, ICON_OBJECT_DATA);
+ layout, md_ptr, rna_path, bmain_ptr, "objects", socket.name, ICON_OBJECT_DATA);
break;
}
case SOCK_COLLECTION: {
uiItemPointerR(layout,
- settings_ptr,
+ md_ptr,
rna_path,
bmain_ptr,
"collections",
@@ -1099,7 +1099,7 @@ static void draw_property_for_socket(uiLayout *layout,
break;
}
default:
- uiItemR(layout, settings_ptr, rna_path, 0, socket.name, ICON_NONE);
+ uiItemR(layout, md_ptr, rna_path, 0, socket.name, ICON_NONE);
}
}
}
@@ -1113,8 +1113,7 @@ static void panel_draw(const bContext *C, Panel *panel)
NodesModifierData *nmd = static_cast<NodesModifierData *>(ptr->data);
uiLayoutSetPropSep(layout, true);
- /* This should be removed, but animation currently doesn't work with the IDProperties. */
- uiLayoutSetPropDecorate(layout, false);
+ uiLayoutSetPropDecorate(layout, true);
uiTemplateID(layout,
C,
@@ -1128,15 +1127,11 @@ static void panel_draw(const bContext *C, Panel *panel)
nullptr);
if (nmd->node_group != nullptr && nmd->settings.properties != nullptr) {
- PointerRNA settings_ptr;
- RNA_pointer_create(ptr->owner_id, &RNA_NodesModifierSettings, &nmd->settings, &settings_ptr);
-
PointerRNA bmain_ptr;
RNA_main_pointer_create(bmain, &bmain_ptr);
LISTBASE_FOREACH (bNodeSocket *, socket, &nmd->node_group->inputs) {
- draw_property_for_socket(
- layout, &bmain_ptr, &settings_ptr, nmd->settings.properties, *socket);
+ draw_property_for_socket(layout, &bmain_ptr, ptr, nmd->settings.properties, *socket);
}
}