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-09-28 23:21:36 +0300
committerHans Goudey <h.goudey@me.com>2021-09-28 23:21:36 +0300
commit9f0a3a99ab664bc0f6378c5a4d6ac9e16f1f59f7 (patch)
tree6b9a5ac3b19cb1169f5712e150e8ad1cc02c3d50 /source/blender/makesdna/DNA_node_types.h
parent283d76a70dba69665d08039a0a7c675c9efc7110 (diff)
Geometry Nodes: Fields version of attribute proximity node
Add a fields-aware implementation of the attribute proximity node. The Source position is an implicit position field, but can be connected with a position input node with alterations before use. The target input and mode function the same as the original node. Patch by Johnny Matthews with edits from Hans Goudey (@HooglyBoogly). Differential Revision: https://developer.blender.org/D12635
Diffstat (limited to 'source/blender/makesdna/DNA_node_types.h')
-rw-r--r--source/blender/makesdna/DNA_node_types.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index 538a80ce3e1..ffa6cb307b8 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -1362,6 +1362,11 @@ typedef struct NodeGeometryAttributeProximity {
uint8_t target_geometry_element;
} NodeGeometryAttributeProximity;
+typedef struct NodeGeometryProximity {
+ /* GeometryNodeProximityTargetType. */
+ uint8_t target_element;
+} NodeGeometryProximity;
+
typedef struct NodeGeometryVolumeToMesh {
/* VolumeToMeshResolutionMode */
uint8_t resolution_mode;
@@ -1946,6 +1951,12 @@ typedef enum GeometryNodeAttributeProximityTargetType {
GEO_NODE_PROXIMITY_TARGET_FACES = 2,
} GeometryNodeAttributeProximityTargetType;
+typedef enum GeometryNodeProximityTargetType {
+ GEO_NODE_PROX_TARGET_POINTS = 0,
+ GEO_NODE_PROX_TARGET_EDGES = 1,
+ GEO_NODE_PROX_TARGET_FACES = 2,
+} GeometryNodeProximityTargetType;
+
typedef enum GeometryNodeBooleanOperation {
GEO_NODE_BOOLEAN_INTERSECT = 0,
GEO_NODE_BOOLEAN_UNION = 1,