Geometry Nodes: Easing Node #109405
|
@ -587,6 +587,7 @@ class NODE_MT_category_GEO_UTILITIES_MATH(Menu):
|
|||
node_add_menu.add_node_type(layout, "FunctionNodeBooleanMath")
|
||||
node_add_menu.add_node_type(layout, "ShaderNodeClamp")
|
||||
node_add_menu.add_node_type(layout, "FunctionNodeCompare")
|
||||
node_add_menu.add_node_type(layout, "FunctionNodeEasing")
|
||||
node_add_menu.add_node_type(layout, "ShaderNodeFloatCurve")
|
||||
node_add_menu.add_node_type(layout, "FunctionNodeFloatToInt")
|
||||
node_add_menu.add_node_type(layout, "ShaderNodeMapRange")
|
||||
|
|
|
@ -1344,6 +1344,7 @@ void BKE_nodetree_remove_layer_n(struct bNodeTree *ntree, struct Scene *scene, i
|
|||
#define FN_NODE_ROTATE_VECTOR 1229
|
||||
#define FN_NODE_ROTATE_ROTATION 1230
|
||||
#define FN_NODE_INVERT_ROTATION 1231
|
||||
#define FN_NODE_EASING 1232
|
||||
|
||||
/** \} */
|
||||
|
||||
|
|
|
@ -1865,6 +1865,13 @@ typedef struct NodeFunctionCompare {
|
|||
char _pad[1];
|
||||
} NodeFunctionCompare;
|
||||
|
||||
typedef struct NodeEasing {
|
||||
/* NodeEasingOperation. */
|
||||
int8_t operation;
|
||||
/* NodeEasingDirection. */
|
||||
int8_t direction;
|
||||
} NodeEasing;
|
||||
|
||||
typedef struct NodeCombSepColor {
|
||||
/** #NodeCombSepColorMode */
|
||||
int8_t mode;
|
||||
|
@ -2262,6 +2269,31 @@ typedef enum NodeCompareOperation {
|
|||
NODE_COMPARE_COLOR_DARKER = 7,
|
||||
} NodeCompareOperation;
|
||||
|
||||
/** Easing operations. */
|
||||
typedef enum NodeEasingOperation {
|
||||
NODE_EASING_LINEAR = 0,
|
||||
NODE_EASING_BACK = 1,
|
||||
NODE_EASING_BOUNCE = 2,
|
||||
NODE_EASING_CIRC = 3,
|
||||
NODE_EASING_CUBIC = 4,
|
||||
NODE_EASING_ELASTIC = 5,
|
||||
NODE_EASING_EXPO = 6,
|
||||
NODE_EASING_QUAD = 7,
|
||||
NODE_EASING_QUART = 8,
|
||||
NODE_EASING_QUINT = 9,
|
||||
NODE_EASING_SINE = 10,
|
||||
NODE_EASING_VARIABLE = 11,
|
||||
NODE_EASING_STEPS = 12,
|
||||
NODE_EASING_CUBIC_BEZIER = 13,
|
||||
NODE_EASING_BIAS = 14,
|
||||
NODE_EASING_SPRING = 15,
|
||||
NODE_EASING_SINEWAVE = 16,
|
||||
NODE_EASING_SAWTOOTH = 17,
|
||||
NODE_EASING_TRIANGLE = 18,
|
||||
NODE_EASING_SQUARE = 19,
|
||||
NODE_EASING_SNAKE = 20
|
||||
} NodeEasingOperation;
|
||||
|
||||
typedef enum FloatToIntRoundingMode {
|
||||
FN_NODE_FLOAT_TO_INT_ROUND = 0,
|
||||
FN_NODE_FLOAT_TO_INT_FLOOR = 1,
|
||||
|
|
|
@ -270,6 +270,7 @@ DefNode(FunctionNode, FN_NODE_COMBINE_COLOR, 0, "COMBINE_COLOR", CombineColor, "
|
|||
DefNode(FunctionNode, FN_NODE_QUATERNION_TO_ROTATION, 0, "QUATERNION_TO_ROTATION", QuaternionToRotation, "Quaternion to Rotation", "")
|
||||
DefNode(FunctionNode, FN_NODE_COMPARE, 0, "COMPARE", Compare, "Compare", "")
|
||||
DefNode(FunctionNode, FN_NODE_EULER_TO_ROTATION, 0, "EULER_TO_ROTATION", EulerToRotation, "Euler to Rotation", "")
|
||||
DefNode(FunctionNode, FN_NODE_EASING, 0, "EASING", Easing, "Easing", "")
|
||||
DefNode(FunctionNode, FN_NODE_FLOAT_TO_INT, def_float_to_int, "FLOAT_TO_INT", FloatToInt, "Float to Integer", "")
|
||||
DefNode(FunctionNode, FN_NODE_INPUT_BOOL, def_fn_input_bool, "INPUT_BOOL", InputBool, "Boolean", "")
|
||||
DefNode(FunctionNode, FN_NODE_INPUT_COLOR, def_fn_input_color, "INPUT_COLOR", InputColor, "Color", "")
|
||||
|
|
|
@ -23,6 +23,7 @@ set(SRC
|
|||
nodes/node_fn_boolean_math.cc
|
||||
nodes/node_fn_combine_color.cc
|
||||
nodes/node_fn_compare.cc
|
||||
nodes/node_fn_easing.cc
|
||||
nodes/node_fn_euler_to_rotation.cc
|
||||
nodes/node_fn_float_to_int.cc
|
||||
nodes/node_fn_input_bool.cc
|
||||
|
|
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue