Depsgraph: Use operation code for armature evaluation
authorSergey Sharybin <sergey.vfx@gmail.com>
Fri, 1 Feb 2019 09:56:01 +0000 (10:56 +0100)
committerSergey Sharybin <sergey.vfx@gmail.com>
Fri, 1 Feb 2019 14:40:19 +0000 (15:40 +0100)
source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
source/blender/depsgraph/intern/builder/deg_builder_relations_rig.cc
source/blender/depsgraph/intern/node/deg_node_operation.cc
source/blender/depsgraph/intern/node/deg_node_operation.h

index 01ce2f823355a90114a628570a0692e54eff6eb8..2c213c7ec80916985af3cc65a7fd22aaad8a75b6 100644 (file)
@@ -1415,8 +1415,7 @@ void DepsgraphNodeBuilder::build_armature(bArmature *armature)
        add_operation_node(&armature->id,
                           NodeType::PARAMETERS,
                           NULL,
-                          OperationCode::PLACEHOLDER,
-                          "Armature Eval");
+                          OperationCode::ARMATURE_EVAL);
 }
 
 void DepsgraphNodeBuilder::build_camera(Camera *camera)
index ec8a24707abee80e2ee8cf48bf3f66e229bf7fc3..1b0057d78fd8d0ad292a914c2736145839474a40 100644 (file)
@@ -343,8 +343,7 @@ void DepsgraphRelationBuilder::build_rig(Object *object)
        build_armature(armature);
        OperationKey armature_key(&armature->id,
                                  NodeType::PARAMETERS,
-                                 OperationCode::PLACEHOLDER,
-                                 "Armature Eval");
+                                 OperationCode::ARMATURE_EVAL);
        add_relation(armature_key, pose_init_key, "Data dependency");
        /* IK Solvers.
         *
index cf4671bf72be6ec424acdf31e23bf0ae914177d9..b222253f555493fe30e30d723696ca9bce4c42c0 100644 (file)
@@ -71,6 +71,7 @@ const char *operationCodeAsString(OperationCode opcode)
                /* Object data. */
                case OperationCode::LIGHT_PROBE_EVAL: return "LIGHT_PROBE_EVAL";
                case OperationCode::SPEAKER_EVAL: return "SPEAKER_EVAL";
+               case OperationCode::ARMATURE_EVAL: return "ARMATURE_EVAL";
                /* Pose. */
                case OperationCode::POSE_INIT: return "POSE_INIT";
                case OperationCode::POSE_INIT_IK: return "POSE_INIT_IK";
index 7a6df7cf1615de96361f0de84d546e7290a4994f..545290d9399d9037cf0c6e05ce9281fbae2064d6 100644 (file)
@@ -98,6 +98,7 @@ enum class OperationCode {
        /* Object data. --------------------------------------------------------- */
        LIGHT_PROBE_EVAL,
        SPEAKER_EVAL,
+       ARMATURE_EVAL,
 
        /* Pose. ---------------------------------------------------------------- */
        /* Init pose, clear flags, etc. */