diff options
Diffstat (limited to 'source/blender/makesdna/DNA_node_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_node_types.h | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h index 47f2c221279..58c94b6f369 100644 --- a/source/blender/makesdna/DNA_node_types.h +++ b/source/blender/makesdna/DNA_node_types.h @@ -45,6 +45,8 @@ struct bNodePreview; struct bNodeTreeExec; struct bNodeType; struct uiBlock; +struct Tex; +struct Material; #define NODE_MAXSTR 64 @@ -165,6 +167,8 @@ typedef enum eNodeSocketDatatype { SOCK_IMAGE = 9, SOCK_GEOMETRY = 10, SOCK_COLLECTION = 11, + SOCK_TEXTURE = 12, + SOCK_MATERIAL = 13, } eNodeSocketDatatype; /* socket shape */ @@ -593,6 +597,14 @@ typedef struct bNodeSocketValueCollection { struct Collection *value; } bNodeSocketValueCollection; +typedef struct bNodeSocketValueTexture { + struct Tex *value; +} bNodeSocketValueTexture; + +typedef struct bNodeSocketValueMaterial { + struct Material *value; +} bNodeSocketValueMaterial; + /* data structs, for node->storage */ enum { CMP_NODE_MASKTYPE_ADD = 0, @@ -1184,10 +1196,31 @@ typedef struct NodeAttributeVectorMath { uint8_t input_type_c; } NodeAttributeVectorMath; +typedef struct NodeAttributeVectorRotate { + /* GeometryNodeAttributeVectorRotateMode */ + uint8_t mode; + + /* GeometryNodeAttributeInputMode */ + uint8_t input_type_vector; + uint8_t input_type_center; + uint8_t input_type_axis; + uint8_t input_type_angle; + uint8_t input_type_rotation; + char _pad[2]; +} NodeAttributeVectorRotate; + typedef struct NodeAttributeColorRamp { ColorBand color_ramp; } NodeAttributeColorRamp; +typedef struct NodeAttributeCurveMap { + /* CustomDataType. */ + uint8_t data_type; + char _pad[7]; + CurveMapping *curve_vec; + CurveMapping *curve_rgb; +} NodeAttributeCurveMap; + typedef struct NodeInputVector { float vector[3]; } NodeInputVector; @@ -1312,6 +1345,11 @@ typedef struct NodeSwitch { uint8_t input_type; } NodeSwitch; +typedef struct NodeGeometryCurveResample { + /* GeometryNodeCurveSampleMode. */ + uint8_t mode; +} NodeGeometryCurveResample; + typedef struct NodeGeometryAttributeTransfer { /* AttributeDomain. */ int8_t domain; @@ -1762,6 +1800,14 @@ typedef enum GeometryNodeRotatePointsType { GEO_NODE_POINT_ROTATE_TYPE_AXIS_ANGLE = 1, } GeometryNodeRotatePointsType; +typedef enum GeometryNodeAttributeVectorRotateMode { + GEO_NODE_VECTOR_ROTATE_TYPE_AXIS = 0, + GEO_NODE_VECTOR_ROTATE_TYPE_AXIS_X = 1, + GEO_NODE_VECTOR_ROTATE_TYPE_AXIS_Y = 2, + GEO_NODE_VECTOR_ROTATE_TYPE_AXIS_Z = 3, + GEO_NODE_VECTOR_ROTATE_TYPE_EULER_XYZ = 4, +} GeometryNodeAttributeVectorRotateMode; + typedef enum GeometryNodeAttributeRandomizeMode { GEO_NODE_ATTRIBUTE_RANDOMIZE_REPLACE_CREATE = 0, GEO_NODE_ATTRIBUTE_RANDOMIZE_ADD = 1, @@ -1813,6 +1859,11 @@ typedef enum GeometryNodeMeshLineCountMode { GEO_NODE_MESH_LINE_COUNT_RESOLUTION = 1, } GeometryNodeMeshLineCountMode; +typedef enum GeometryNodeCurveSampleMode { + GEO_NODE_CURVE_SAMPLE_COUNT = 0, + GEO_NODE_CURVE_SAMPLE_LENGTH = 1, +} GeometryNodeCurveSampleMode; + typedef enum GeometryNodeAttributeTransferMapMode { GEO_NODE_ATTRIBUTE_TRANSFER_NEAREST_FACE_INTERPOLATED = 0, GEO_NODE_ATTRIBUTE_TRANSFER_NEAREST = 1, |