Commit: 41cc366010e1d4b7b225e7c65df5a947bd5cbf70
Author: Lukas Tönne
Date:   Tue Jul 19 10:53:34 2016 +0200
Branches: object_nodes
https://developer.blender.org/rB41cc366010e1d4b7b225e7c65df5a947bd5cbf70

Merge branch 'master' into object_nodes

===================================================================



===================================================================

diff --cc source/blender/blenkernel/BKE_particle.h
index aef7526,b22facd..dd7068c
--- a/source/blender/blenkernel/BKE_particle.h
+++ b/source/blender/blenkernel/BKE_particle.h
@@@ -328,13 -328,13 +329,13 @@@ void BKE_particlesettings_make_local(st
  
  void psys_reset(struct ParticleSystem *psys, int mode);
  
- void psys_find_parents(struct ParticleSimulationData *sim);
+ void psys_find_parents(struct ParticleSimulationData *sim, const bool 
use_render_params);
  
- void psys_cache_paths(struct ParticleSimulationData *sim, float cfra);
- void psys_cache_edit_paths(struct Scene *scene, struct Object *ob, struct 
PTCacheEdit *edit, float cfra);
- void psys_cache_child_paths(struct ParticleSimulationData *sim, float cfra, 
int editupdate);
+ void psys_cache_paths(struct ParticleSimulationData *sim, float cfra, const 
bool use_render_params);
+ void psys_cache_edit_paths(struct Scene *scene, struct Object *ob, struct 
PTCacheEdit *edit, float cfra, const bool use_render_params);
+ void psys_cache_child_paths(struct ParticleSimulationData *sim, float cfra, 
const bool editupdate, const bool use_render_params);
 -int do_guides(struct ParticleSettings *part, struct ListBase *effectors, 
ParticleKey *state, int pa_num, float time);
 -void precalc_guides(struct ParticleSimulationData *sim, struct ListBase 
*effectors);
 +int do_guides(struct ParticleSettings *part, struct EffectorContext 
*effectors, ParticleKey *state, int pa_num, float time);
 +void precalc_guides(struct ParticleSimulationData *sim, struct 
EffectorContext *effectors);
  float psys_get_timestep(struct ParticleSimulationData *sim);
  float psys_get_child_time(struct ParticleSystem *psys, struct ChildParticle 
*cpa, float cfra, float *birthtime, float *dietime);
  float psys_get_child_size(struct ParticleSystem *psys, struct ChildParticle 
*cpa, float cfra, float *pa_time);
diff --cc source/blender/blenloader/intern/writefile.c
index 45f4e59,ba783e0..379e52c
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@@ -887,62 -971,91 +971,86 @@@ static void write_nodetree(WriteData *w
        bNode *node;
        bNodeSocket *sock;
        bNodeLink *link;
-       
+ 
        /* for link_list() speed, we write per list */
-       
-       if (ntree->adt) write_animdata(wd, ntree->adt);
-       
+ 
+       if (ntree->adt) {
+               write_animdata(wd, ntree->adt);
+       }
+ 
        for (node = ntree->nodes.first; node; node = node->next) {
-               writestruct(wd, DATA, "bNode", 1, node);
+               writestruct(wd, DATA, bNode, 1, node);
  
-               if (node->prop)
+               if (node->prop) {
                        IDP_WriteProperty(node->prop, wd);
+               }
  
-               for (sock= node->inputs.first; sock; sock= sock->next)
+               for (sock = node->inputs.first; sock; sock = sock->next) {
                        write_node_socket(wd, ntree, node, sock);
-               for (sock= node->outputs.first; sock; sock= sock->next)
+               }
+               for (sock = node->outputs.first; sock; sock = sock->next) {
                        write_node_socket(wd, ntree, node, sock);
-               
-               for (link = node->internal_links.first; link; link = link->next)
-                       writestruct(wd, DATA, "bNodeLink", 1, link);
+               }
+ 
+               for (link = node->internal_links.first; link; link = 
link->next) {
+                       writestruct(wd, DATA, bNodeLink, 1, link);
+               }
+ 
                if (node->storage) {
                        /* could be handlerized at some point, now only 1 
exception still */
-                       if (ntree->type==NTREE_SHADER && 
(node->type==SH_NODE_CURVE_VEC || node->type==SH_NODE_CURVE_RGB))
+                       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_SHADER && 
node->type==SH_NODE_SCRIPT) {
+                       }
+                       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);
-                               writestruct(wd, DATA, 
node->typeinfo->storagename, 1, 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 (ntree->type==NTREE_COMPOSIT && 
ELEM(node->type, CMP_NODE_TIME, CMP_NODE_CURVE_VEC, CMP_NODE_CURVE_RGB, 
CMP_NODE_HUECORRECT))
+                       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_COMPOSIT && 
node->type==CMP_NODE_MOVIEDISTORTION) {
+                       }
 -                      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(wd, DATA, 
node->typeinfo->storagename, 1, node->storage);
+                       else {
+                               writestruct_id(wd, DATA, 
node->typeinfo->storagename, 1, node->storage);
+                       }
                }
-               
-               if (node->type==CMP_NODE_OUTPUT_FILE) {
+ 
+               if (node->type == CMP_NODE_OUTPUT_FILE) {
                        /* inputs have own storage data */
-                       for (sock = node->inputs.first; sock; sock = sock->next)
-                               writestruct(wd, DATA, 
"NodeImageMultiFileSocket", 1, sock->storage);
+                       for (sock = node->inputs.first; sock; sock = 
sock->next) {
+                               writestruct(wd, DATA, NodeImageMultiFileSocket, 
1, sock->storage);
+                       }
                }
-               if (node->type==CMP_NODE_IMAGE) {
+               if (node->type == CMP_NODE_IMAGE) {
                        /* write extra socket info */
-                       for (sock = node->outputs.first; sock; sock = 
sock->next)
-                               writestruct(wd, DATA, "NodeImageLayer", 1, 
sock->storage);
+                       for (sock = node->outputs.first; sock; sock = 
sock->next) {
+                               writestruct(wd, DATA, NodeImageLayer, 1, 
sock->storage);
+                       }
                }
        }
-       
-       for (link= ntree->links.first; link; link= link->next)
-               writestruct(wd, DATA, "bNodeLink", 1, link);
-       
-       for (sock = ntree->inputs.first; sock; sock = sock->next)
+ 
+       for (link = ntree->links.first; link; link = link->next) {
+               writestruct(wd, DATA, bNodeLink, 1, link);
+       }
+ 
+       for (sock = ntree->inputs.first; sock; sock = sock->next) {
                write_node_socket_interface(wd, ntree, sock);
-       for (sock = ntree->outputs.first; sock; sock = sock->next)
+       }
+       for (sock = ntree->outputs.first; sock; sock = sock->next) {
                write_node_socket_interface(wd, ntree, sock);
+       }
  }
  
  /**
diff --cc source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index c383cae,a397b48..9c0f88a
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@@ -331,18 -296,19 +331,19 @@@ void DepsgraphNodeBuilder::build_scene(
        for (Base *base = (Base *)scene->base.first; base; base = base->next) {
                Object *ob = base->object;
  
+               /* object itself */
 -              build_object(scene, base, ob);
++              build_object(bmain, scene, base, ob);
+ 
                /* object that this is a proxy for */
                // XXX: the way that proxies work needs to be completely 
reviewed!
                if (ob->proxy) {
                        ob->proxy->proxy_from = ob;
 -                      build_object(scene, base, ob->proxy);
++                      build_object(bmain, scene, base, ob->proxy);
                }
  
-               /* object itself */
-               build_object(bmain, scene, base, ob);
- 
                /* Object dupligroup. */
                if (ob->dup_group) {
 -                      build_group(scene, base, ob->dup_group);
 +                      build_group(bmain, scene, base, ob->dup_group);
                }
        }
  
diff --cc source/blender/modifiers/intern/MOD_weightvgmix.c
index 6df9de8,170fbbe..ef988b9
--- a/source/blender/modifiers/intern/MOD_weightvgmix.c
+++ b/source/blender/modifiers/intern/MOD_weightvgmix.c
@@@ -220,10 -220,12 +220,12 @@@ static void updateDepsgraph(ModifierDat
  {
        WeightVGMixModifierData *wmd = (WeightVGMixModifierData *) md;
        if (wmd->mask_tex_map_obj != NULL && wmd->mask_tex_mapping == 
MOD_DISP_MAP_OBJECT) {
 -              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_OB_COMP_TRANSFORM, "WeightVGMix Modifier");
 -              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_OB_COMP_GEOMETRY, "WeightVGMix Modifier");
 +              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_COMPONENT_TRANSFORM, "WeightVGMix Modifier");
++              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_COMPONENT_GEOMETRY, "WeightVGMix Modifier");
        }
        if (wmd->mask_tex_mapping == MOD_DISP_MAP_GLOBAL) {
 -              DEG_add_object_relation(node, ob, DEG_OB_COMP_TRANSFORM, 
"WeightVGMix Modifier");
 -              DEG_add_object_relation(node, ob, DEG_OB_COMP_GEOMETRY, 
"WeightVGMix Modifier");
 +              DEG_add_object_relation(node, ob, DEG_COMPONENT_TRANSFORM, 
"WeightVGMix Modifier");
++              DEG_add_object_relation(node, ob, DEG_COMPONENT_GEOMETRY, 
"WeightVGMix Modifier");
        }
  }
  
diff --cc source/blender/modifiers/intern/MOD_weightvgproximity.c
index 71ac5a7,af59f11..aeb01d3
--- a/source/blender/modifiers/intern/MOD_weightvgproximity.c
+++ b/source/blender/modifiers/intern/MOD_weightvgproximity.c
@@@ -377,13 -377,16 +377,16 @@@ static void updateDepsgraph(ModifierDat
  {
        WeightVGProximityModifierData *wmd = (WeightVGProximityModifierData 
*)md;
        if (wmd->proximity_ob_target != NULL) {
 -              DEG_add_object_relation(node, wmd->proximity_ob_target, 
DEG_OB_COMP_TRANSFORM, "WeightVGProximity Modifier");
 -              DEG_add_object_relation(node, wmd->proximity_ob_target, 
DEG_OB_COMP_GEOMETRY, "WeightVGProximity Modifier");
 +              DEG_add_object_relation(node, wmd->proximity_ob_target, 
DEG_COMPONENT_TRANSFORM, "WeightVGProximity Modifier");
++              DEG_add_object_relation(node, wmd->proximity_ob_target, 
DEG_COMPONENT_GEOMETRY, "WeightVGProximity Modifier");
        }
        if (wmd->mask_tex_map_obj != NULL && wmd->mask_tex_mapping == 
MOD_DISP_MAP_OBJECT) {
 -              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_OB_COMP_TRANSFORM, "WeightVGProximity Modifier");
 -              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_OB_COMP_GEOMETRY, "WeightVGProximity Modifier");
 +              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_COMPONENT_TRANSFORM, "WeightVGProximity Modifier");
++              DEG_add_object_relation(node, wmd->mask_tex_map_obj, 
DEG_COMPONENT_GEOMETRY, "Weight

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to