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:
Diffstat (limited to 'source/blender/blenloader/intern/writefile.c')
-rw-r--r--source/blender/blenloader/intern/writefile.c57
1 files changed, 28 insertions, 29 deletions
diff --git a/source/blender/blenloader/intern/writefile.c b/source/blender/blenloader/intern/writefile.c
index afdaf7c626b..ad1999c0bc7 100644
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@ -1001,38 +1001,37 @@ static void write_nodetree(WriteData *wd, bNodeTree *ntree)
if (node->storage) {
/* could be handlerized at some point, now only 1 exception still */
- if (ntree->type==NTREE_SHADER) {
- if (ELEM(node->type, SH_NODE_CURVE_VEC, SH_NODE_CURVE_RGB)) {
- write_curvemapping(wd, node->storage);
- }
- else if (node->type==SH_NODE_SCRIPT) {
- NodeShaderScript *nss = (NodeShaderScript *)node->storage;
- if (nss->bytecode)
- writedata(wd, DATA, strlen(nss->bytecode)+1, nss->bytecode);
- writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
- }
- else if (node->type==SH_NODE_OPENVDB) {
- NodeShaderOpenVDB *vdb = (NodeShaderOpenVDB *)node->storage;
- writelist(wd, DATA, OpenVDBGridInfo, &vdb->grid_info);
- writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
- }
- else
- writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
+ if ((ntree->type == NTREE_SHADER) &&
+ ELEM(node->type, SH_NODE_CURVE_VEC, SH_NODE_CURVE_RGB))
+ {
+ write_curvemapping(wd, node->storage);
}
- else if (ntree->type==NTREE_COMPOSIT) {
- if (ELEM(node->type, CMP_NODE_TIME, CMP_NODE_CURVE_VEC, CMP_NODE_CURVE_RGB, CMP_NODE_HUECORRECT))
- write_curvemapping(wd, node->storage);
- else if (node->type==CMP_NODE_MOVIEDISTORTION) {
- /* pass */
+ else if (ntree->type == NTREE_SHADER &&
+ (node->type == SH_NODE_SCRIPT))
+ {
+ NodeShaderScript *nss = (NodeShaderScript *)node->storage;
+ if (nss->bytecode) {
+ writedata(wd, DATA, strlen(nss->bytecode) + 1, nss->bytecode);
}
- else
- writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
+ writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
}
- else if (ntree->type==NTREE_TEXTURE) {
- if (node->type==TEX_NODE_CURVE_RGB || node->type==TEX_NODE_CURVE_TIME)
- write_curvemapping(wd, node->storage);
- else
- writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
+ else if ((ntree->type == NTREE_COMPOSIT) &&
+ ELEM(node->type, CMP_NODE_TIME, CMP_NODE_CURVE_VEC, CMP_NODE_CURVE_RGB, CMP_NODE_HUECORRECT))
+ {
+ write_curvemapping(wd, node->storage);
+ }
+ else if ((ntree->type == NTREE_TEXTURE) &&
+ (node->type == TEX_NODE_CURVE_RGB || node->type == TEX_NODE_CURVE_TIME))
+ {
+ write_curvemapping(wd, node->storage);
+ }
+ else if ((ntree->type == NTREE_COMPOSIT) &&
+ (node->type == CMP_NODE_MOVIEDISTORTION))
+ {
+ /* pass */
+ }
+ else {
+ writestruct_id(wd, DATA, node->typeinfo->storagename, 1, node->storage);
}
}