diff options
author | Jacques Lucke <jacques@blender.org> | 2020-12-11 19:47:58 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-12-11 19:47:58 +0300 |
commit | 5ced167336d49ef42e96e205c72d3935ff302a7e (patch) | |
tree | 5ebae8b17842037cdbf0052fe1ae3cebe81e88b1 /source/blender/nodes | |
parent | 4885fbc07b50af0f7b93c0df41d6f64cc79b2fa7 (diff) |
Geometry Nodes: support collection sockets
Part of D9739.
Diffstat (limited to 'source/blender/nodes')
-rw-r--r-- | source/blender/nodes/intern/node_socket.cc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/nodes/intern/node_socket.cc b/source/blender/nodes/intern/node_socket.cc index fda44b3d4f2..06dd4b8c188 100644 --- a/source/blender/nodes/intern/node_socket.cc +++ b/source/blender/nodes/intern/node_socket.cc @@ -664,6 +664,7 @@ class ObjectSocketMultiFunction : public blender::fn::MultiFunction { }; MAKE_CPP_TYPE(PersistentObjectHandle, blender::bke::PersistentObjectHandle); +MAKE_CPP_TYPE(PersistentCollectionHandle, blender::bke::PersistentCollectionHandle); static bNodeSocketType *make_socket_type_object() { @@ -692,6 +693,10 @@ static bNodeSocketType *make_socket_type_geometry() static bNodeSocketType *make_socket_type_collection() { bNodeSocketType *socktype = make_standard_socket_type(SOCK_COLLECTION, PROP_NONE); + socktype->get_cpp_type = []() { + /* Objects are not passed along as raw pointers, but as handles. */ + return &blender::fn::CPPType::get<blender::bke::PersistentCollectionHandle>(); + }; return socktype; } |