Depsgrapgh: Use more distinctive opcode for texture and image evaluation
This commit is contained in:
@@ -1534,23 +1534,20 @@ void DepsgraphNodeBuilder::build_texture(Tex *texture)
|
||||
build_image(texture->ima);
|
||||
}
|
||||
}
|
||||
/* Placeholder so we can add relations and tag ID node for update. */
|
||||
add_operation_node(&texture->id,
|
||||
DEG_NODE_TYPE_PARAMETERS,
|
||||
DEG_NODE_TYPE_GENERIC_DATABLOCK,
|
||||
NULL,
|
||||
DEG_OPCODE_PLACEHOLDER);
|
||||
DEG_OPCODE_GENERIC_DATABLOCK_UPDATE);
|
||||
}
|
||||
|
||||
void DepsgraphNodeBuilder::build_image(Image *image) {
|
||||
if (built_map_.checkIsBuiltAndTag(image)) {
|
||||
return;
|
||||
}
|
||||
/* Placeholder so we can add relations and tag ID node for update. */
|
||||
add_operation_node(&image->id,
|
||||
DEG_NODE_TYPE_PARAMETERS,
|
||||
DEG_NODE_TYPE_GENERIC_DATABLOCK,
|
||||
NULL,
|
||||
DEG_OPCODE_PLACEHOLDER,
|
||||
"Image Eval");
|
||||
DEG_OPCODE_GENERIC_DATABLOCK_UPDATE);
|
||||
}
|
||||
|
||||
void DepsgraphNodeBuilder::build_compositor(Scene *scene)
|
||||
|
||||
@@ -422,6 +422,7 @@ static void deg_debug_graphviz_node(const DebugContext &ctx,
|
||||
case DEG_NODE_TYPE_BATCH_CACHE:
|
||||
case DEG_NODE_TYPE_DUPLI:
|
||||
case DEG_NODE_TYPE_SYNCHRONIZE:
|
||||
case DEG_NODE_TYPE_GENERIC_DATABLOCK:
|
||||
{
|
||||
ComponentDepsNode *comp_node = (ComponentDepsNode *)node;
|
||||
if (!comp_node->operations.empty()) {
|
||||
|
||||
@@ -106,6 +106,8 @@ const char *nodeTypeAsString(eDepsNode_Type type)
|
||||
STRINGIFY_TYPE(DUPLI);
|
||||
/* Synchronization. */
|
||||
STRINGIFY_TYPE(SYNCHRONIZE);
|
||||
/* Generic datablock. */
|
||||
STRINGIFY_TYPE(GENERIC_DATABLOCK);
|
||||
|
||||
/* Total number of meaningful node types. */
|
||||
case NUM_DEG_NODE_TYPES: return "SpecialCase";
|
||||
@@ -184,6 +186,8 @@ const char *operationCodeAsString(eDepsOperation_Code opcode)
|
||||
STRINGIFY_OPCODE(MOVIECLIP_SELECT_UPDATE);
|
||||
/* Synchronization. */
|
||||
STRINGIFY_OPCODE(SYNCHRONIZE_TO_ORIGINAL);
|
||||
/* Generic datablock. */
|
||||
STRINGIFY_OPCODE(GENERIC_DATABLOCK_UPDATE);
|
||||
|
||||
case DEG_NUM_OPCODES: return "SpecialCase";
|
||||
#undef STRINGIFY_OPCODE
|
||||
|
||||
@@ -138,6 +138,9 @@ typedef enum eDepsNode_Type {
|
||||
* changed in view layer.
|
||||
*/
|
||||
DEG_NODE_TYPE_OBJECT_FROM_LAYER,
|
||||
/* Un-interestying datablock, which is a part of dependency graph, but does
|
||||
* not have very distinctive update procedure. */
|
||||
DEG_NODE_TYPE_GENERIC_DATABLOCK,
|
||||
|
||||
/* **** Evaluation-Related Outer Types (with Subdata) **** */
|
||||
|
||||
@@ -292,6 +295,9 @@ typedef enum eDepsOperation_Code {
|
||||
/* Synchronization clips. ----------------------------------------------- */
|
||||
DEG_OPCODE_SYNCHRONIZE_TO_ORIGINAL,
|
||||
|
||||
/* Generic datablock ---------------------------------------------------- */
|
||||
DEG_OPCODE_GENERIC_DATABLOCK_UPDATE,
|
||||
|
||||
DEG_NUM_OPCODES,
|
||||
} eDepsOperation_Code;
|
||||
const char *operationCodeAsString(eDepsOperation_Code opcode);
|
||||
|
||||
@@ -402,6 +402,7 @@ DEG_COMPONENT_NODE_DEFINE(Transform, TRANSFORM, ID_RECALC_TRANS
|
||||
DEG_COMPONENT_NODE_DEFINE(ObjectFromLayer, OBJECT_FROM_LAYER, ID_RECALC);
|
||||
DEG_COMPONENT_NODE_DEFINE(Dupli, DUPLI, 0);
|
||||
DEG_COMPONENT_NODE_DEFINE(Synchronize, SYNCHRONIZE, 0);
|
||||
DEG_COMPONENT_NODE_DEFINE(GenericDatablock, GENERIC_DATABLOCK, 0);
|
||||
|
||||
/* Node Types Register =================================== */
|
||||
|
||||
@@ -426,6 +427,7 @@ void deg_register_component_depsnodes()
|
||||
deg_register_node_typeinfo(&DNTI_OBJECT_FROM_LAYER);
|
||||
deg_register_node_typeinfo(&DNTI_DUPLI);
|
||||
deg_register_node_typeinfo(&DNTI_SYNCHRONIZE);
|
||||
deg_register_node_typeinfo(&DNTI_GENERIC_DATABLOCK);
|
||||
}
|
||||
|
||||
} // namespace DEG
|
||||
|
||||
@@ -201,6 +201,7 @@ DEG_COMPONENT_NODE_DECLARE_GENERIC(Transform);
|
||||
DEG_COMPONENT_NODE_DECLARE_NO_COW_TAG_ON_UPDATE(ObjectFromLayer);
|
||||
DEG_COMPONENT_NODE_DECLARE_GENERIC(Dupli);
|
||||
DEG_COMPONENT_NODE_DECLARE_GENERIC(Synchronize);
|
||||
DEG_COMPONENT_NODE_DECLARE_GENERIC(GenericDatablock);
|
||||
|
||||
/* Bone Component */
|
||||
struct BoneComponentDepsNode : public ComponentDepsNode {
|
||||
|
||||
Reference in New Issue
Block a user