[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