[Bf-blender-cvs] [a207c1560ff] refactor-idprop-ui-data: Merge branch 'master' into refactor-idprop-ui-data
Hans Goudey
noreply at git.blender.org
Mon Aug 2 16:22:07 CEST 2021
Commit: a207c1560ffa787556138600c7cab1398a76f0b3
Author: Hans Goudey
Date: Mon Aug 2 09:41:39 2021 -0400
Branches: refactor-idprop-ui-data
https://developer.blender.org/rBa207c1560ffa787556138600c7cab1398a76f0b3
Merge branch 'master' into refactor-idprop-ui-data
===================================================================
===================================================================
diff --cc source/blender/modifiers/intern/MOD_nodes.cc
index 7b432330940,3853b345c14..9707cf01fa4
--- a/source/blender/modifiers/intern/MOD_nodes.cc
+++ b/source/blender/modifiers/intern/MOD_nodes.cc
@@@ -554,25 -712,29 +554,25 @@@ void MOD_nodes_init(Main *bmain, NodesM
static void initialize_group_input(NodesModifierData &nmd,
const bNodeSocket &socket,
- const CPPType &cpp_type,
void *r_value)
{
- const SocketPropertyType *property_type = get_socket_property_type(socket);
- if (property_type == nullptr) {
- cpp_type.copy_construct(cpp_type.default_value(), r_value);
- return;
- }
if (nmd.settings.properties == nullptr) {
- blender::nodes::socket_cpp_value_get(socket, r_value);
+ socket.typeinfo->get_geometry_nodes_cpp_value(socket, r_value);
return;
}
const IDProperty *property = IDP_GetPropertyFromGroup(nmd.settings.properties,
socket.identifier);
if (property == nullptr) {
- blender::nodes::socket_cpp_value_get(socket, r_value);
+ socket.typeinfo->get_geometry_nodes_cpp_value(socket, r_value);
return;
}
- if (!property_type->is_correct_type(*property)) {
+ if (!id_property_type_matches_socket(socket, *property)) {
- blender::nodes::socket_cpp_value_get(socket, r_value);
+ socket.typeinfo->get_geometry_nodes_cpp_value(socket, r_value);
return;
}
- property_type->init_cpp_value(*property, r_value);
+
+ init_socket_cpp_value_from_property(
+ *property, static_cast<eNodeSocketDatatype>(socket.type), r_value);
}
static Vector<SpaceSpreadsheet *> find_spreadsheet_editors(Main *bmain)
@@@ -721,9 -883,9 +721,9 @@@ static GeometrySet compute_geometry(con
/* Initialize remaining group inputs. */
for (const OutputSocketRef *socket : remaining_input_sockets) {
- const CPPType &cpp_type = *blender::nodes::socket_cpp_type_get(*socket->typeinfo());
+ const CPPType &cpp_type = *socket->typeinfo()->get_geometry_nodes_cpp_type();
void *value_in = allocator.allocate(cpp_type.size(), cpp_type.alignment());
- initialize_group_input(*nmd, *socket->bsocket(), cpp_type, value_in);
+ initialize_group_input(*nmd, *socket->bsocket(), value_in);
group_inputs.add_new({root_context, socket}, {cpp_type, value_in});
}
}
More information about the Bf-blender-cvs
mailing list