[Bf-blender-cvs] [41cc366] object_nodes: Merge branch 'master' into object_nodes

Lukas Tönne noreply at git.blender.org
Tue Jul 19 10:53:58 CEST 2016


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. @@




More information about the Bf-blender-cvs mailing list