The geometry node evaluator now has access to the entire socket path from the node that produces a value to the node that uses it. This allows the evaluator to make decisions about at which points in the path the value should be converted. Multiple conversions may be necessary under some circumstances with nested node groups.
Details
Details
Diff Detail
Diff Detail
- Repository
- rB Blender
- Branch
- multi-type-conversion (branched from master)
- Build Status
Buildable 18386 Build 18386: arc lint + arc unit
Event Timeline
Comment Actions
It took a little bit, but I read through the changes and understand everything, so it looks good to me.
Out of curiosity, is there a reason to use Vector instead of Stack here?
| source/blender/modifiers/intern/MOD_nodes_evaluator.cc | ||
|---|---|---|
| 1282–1289 | It might be simpler/easier to read if there was another function that abstracted this "convert and re-allocate value if necessary" behavior. Only if you think it's actually an improvement though. | |
| source/blender/nodes/NOD_derived_node_tree.hh | ||
| 161–164 | Unused struct here. | |
| source/blender/modifiers/intern/MOD_nodes_evaluator.cc | ||
|---|---|---|
| 1282–1289 | Feels like the "destruct if necessary" behavior is fairly specific to this function, not sure if it can be abstracted away in a meaningful way. Will leave it as is for now. | |