[Bf-blender-cvs] [b674ffb] fracture_modifier: Merge remote-tracking branch 'refs/remotes/origin/blender-v2.78-release' into fracture_modifier
Martin Felke
noreply at git.blender.org
Wed Oct 26 19:32:16 CEST 2016
Commit: b674ffb6dadbc34e6c53a2a95f428a481613e061
Author: Martin Felke
Date: Wed Oct 26 19:30:29 2016 +0200
Branches: fracture_modifier
https://developer.blender.org/rBb674ffb6dadbc34e6c53a2a95f428a481613e061
Merge remote-tracking branch 'refs/remotes/origin/blender-v2.78-release' into fracture_modifier
Conflicts:
source/blender/makesrna/intern/rna_modifier.c
===================================================================
===================================================================
diff --cc source/blender/makesrna/intern/rna_modifier.c
index 8ae0b26,34ca6a1..8a65954
--- a/source/blender/makesrna/intern/rna_modifier.c
+++ b/source/blender/makesrna/intern/rna_modifier.c
@@@ -860,1211 -777,1171 +860,1215 @@@ static int rna_LaplacianDeformModifier_
return ((lmd->flag & MOD_LAPLACIANDEFORM_BIND) && (lmd->cache_system != NULL));
}
-/* NOTE: Curve and array modifiers requires curve path to be evaluated,
- * dependency graph will make sure that curve eval would create such a path,
- * but if curve was already evaluated we might miss path.
- *
- * So what we do here is: if path was not calculated for target curve we
- * tag it for update.
- */
-
-static void rna_CurveModifier_dependency_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_FractureModifier_thresh_defgrp_name_set(PointerRNA *ptr, const char *value)
{
- CurveModifierData *cmd = (CurveModifierData *)ptr->data;
- rna_Modifier_update(bmain, scene, ptr);
- DAG_relations_tag_update(bmain);
- if (cmd->object != NULL) {
- Curve *curve = cmd->object->data;
- if ((curve->flag & CU_PATH) == 0) {
- DAG_id_tag_update(&curve->id, OB_RECALC_DATA);
- }
- }
+ FractureModifierData *tmd = (FractureModifierData *)ptr->data;
+ rna_object_vgroup_name_set(ptr, value, tmd->thresh_defgrp_name, sizeof(tmd->thresh_defgrp_name));
+ tmd->refresh_constraints = true;
+ tmd->reset_shards = true;
}
-static void rna_ArrayModifier_dependency_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_FractureModifier_ground_defgrp_name_set(PointerRNA *ptr, const char *value)
{
- ArrayModifierData *amd = (ArrayModifierData *)ptr->data;
- rna_Modifier_update(bmain, scene, ptr);
- DAG_relations_tag_update(bmain);
- if (amd->curve_ob != NULL) {
- Curve *curve = amd->curve_ob->data;
- if ((curve->flag & CU_PATH) == 0) {
- DAG_id_tag_update(&curve->id, OB_RECALC_DATA);
- }
- }
+ FractureModifierData *tmd = (FractureModifierData *)ptr->data;
+ rna_object_vgroup_name_set(ptr, value, tmd->ground_defgrp_name, sizeof(tmd->ground_defgrp_name));
+ tmd->refresh_constraints = true;
+ tmd->reset_shards = true;
}
+static void rna_FractureModifier_inner_defgrp_name_set(PointerRNA *ptr, const char *value)
+{
+ FractureModifierData *tmd = (FractureModifierData *)ptr->data;
+ rna_object_vgroup_name_set(ptr, value, tmd->inner_defgrp_name, sizeof(tmd->inner_defgrp_name));
+ tmd->refresh_constraints = true;
+ tmd->reset_shards = true;
+}
-static void rna_DataTransferModifier_use_data_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_RigidBodyModifier_threshold_set(PointerRNA *ptr, float value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->breaking_threshold = value;
+ rmd->refresh_constraints = true;
+}
- if (!(dtmd->flags & MOD_DATATRANSFER_USE_VERT)) {
- dtmd->data_types &= ~DT_TYPE_VERT_ALL;
- }
- if (!(dtmd->flags & MOD_DATATRANSFER_USE_EDGE)) {
- dtmd->data_types &= ~DT_TYPE_EDGE_ALL;
- }
- if (!(dtmd->flags & MOD_DATATRANSFER_USE_LOOP)) {
- dtmd->data_types &= ~DT_TYPE_LOOP_ALL;
- }
- if (!(dtmd->flags & MOD_DATATRANSFER_USE_POLY)) {
- dtmd->data_types &= ~DT_TYPE_POLY_ALL;
- }
+static void rna_RigidBodyModifier_contact_dist_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->contact_dist = value;
+ rmd->refresh_constraints = true;
+}
- rna_Modifier_update(bmain, scene, ptr);
+static void rna_RigidBodyModifier_use_constraints_set(PointerRNA* ptr, int value)
+{
+ FractureModifierData *rmd = (FractureModifierData *)ptr->data;
+ rmd->use_constraints = value;
+ rmd->refresh_constraints = true;
}
-static void rna_DataTransferModifier_data_types_update(Main *bmain, Scene *scene, PointerRNA *ptr)
+static void rna_RigidBodyModifier_use_compounds_set(PointerRNA* ptr, int value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
- const int item_types = BKE_object_data_transfer_get_dttypes_item_types(dtmd->data_types);
+ FractureModifierData *rmd = (FractureModifierData *)ptr->data;
+ rmd->use_compounds = value;
+ rmd->refresh_constraints = true;
+}
- if (item_types & ME_VERT) {
- dtmd->flags |= MOD_DATATRANSFER_USE_VERT;
- }
- if (item_types & ME_EDGE) {
- dtmd->flags |= MOD_DATATRANSFER_USE_EDGE;
- }
- if (item_types & ME_LOOP) {
- dtmd->flags |= MOD_DATATRANSFER_USE_LOOP;
- }
- if (item_types & ME_POLY) {
- dtmd->flags |= MOD_DATATRANSFER_USE_POLY;
- }
+static void rna_RigidBodyModifier_mass_dependent_thresholds_set(PointerRNA* ptr, int value)
+{
+ FractureModifierData *rmd = (FractureModifierData *)ptr->data;
+ rmd->use_mass_dependent_thresholds = value;
+ rmd->refresh_constraints = true;
+}
- rna_Modifier_update(bmain, scene, ptr);
+static void rna_RigidBodyModifier_constraint_limit_set(PointerRNA *ptr, int value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->constraint_limit = value;
+ rmd->refresh_constraints = true;
}
-static void rna_DataTransferModifier_verts_data_types_set(struct PointerRNA *ptr, int value)
+static void rna_RigidBodyModifier_breaking_percentage_set(PointerRNA *ptr, int value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->breaking_percentage = value;
+ rmd->refresh_constraints = true;
+}
- dtmd->data_types &= ~DT_TYPE_VERT_ALL;
- dtmd->data_types |= value;
+static void rna_RigidBodyModifier_breaking_angle_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->breaking_angle = value;
+ rmd->refresh_constraints = true;
}
-static void rna_DataTransferModifier_edges_data_types_set(struct PointerRNA *ptr, int value)
+static void rna_RigidBodyModifier_breaking_distance_set(PointerRNA *ptr, float value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->breaking_distance = value;
+ rmd->refresh_constraints = true;
+}
- dtmd->data_types &= ~DT_TYPE_EDGE_ALL;
- dtmd->data_types |= value;
+static void rna_RigidBodyModifier_cluster_threshold_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->cluster_breaking_threshold = value;
+ rmd->refresh_constraints = true;
}
-static void rna_DataTransferModifier_loops_data_types_set(struct PointerRNA *ptr, int value)
+static void rna_RigidBodyModifier_solver_iterations_override_set(PointerRNA *ptr, float value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->solver_iterations_override = value;
+ rmd->refresh_constraints = true;
+}
- dtmd->data_types &= ~DT_TYPE_LOOP_ALL;
- dtmd->data_types |= value;
+static void rna_RigidBodyModifier_cluster_solver_iterations_override_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->cluster_solver_iterations_override = value;
+ rmd->refresh_constraints = true;
}
-static void rna_DataTransferModifier_polys_data_types_set(struct PointerRNA *ptr, int value)
+static void rna_RigidBodyModifier_autohide_dist_set(PointerRNA *ptr, float value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->autohide_dist = value;
+ rmd->refresh_autohide = true;
+}
- dtmd->data_types &= ~DT_TYPE_POLY_ALL;
- dtmd->data_types |= value;
+static void rna_RigidBodyModifier_automerge_dist_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->automerge_dist = value;
+ rmd->refresh_autohide = true;
}
-static EnumPropertyItem *rna_DataTransferModifier_layers_select_src_itemf(bContext *C, PointerRNA *ptr, PropertyRNA *prop, bool *r_free)
+static void rna_RigidBodyModifier_cluster_breaking_angle_set(PointerRNA *ptr, float value)
{
- DataTransferModifierData *dtmd = (DataTransferModifierData *)ptr->data;
- EnumPropertyItem *item = NULL, tmp_item = {0};
- int totitem = 0;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->cluster_breaking_angle = value;
+ rmd->refresh_constraints = true;
+}
- if (!C) { /* needed for docs and i18n tools */
- return rna_enum_dt_layers_select_src_items;
- }
+static void rna_RigidBodyModifier_cluster_breaking_distance_set(PointerRNA *ptr, float value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->cluster_breaking_distance = value;
+ rmd->refresh_constraints = true;
+}
- /* No active here! */
- RNA_enum_items_add_value(&item, &totitem, rna_enum_dt_layers_select_src_items, DT_LAYERS_ALL_SRC);
+static void rna_RigidBodyModifier_cluster_breaking_percentage_set(PointerRNA *ptr, int value)
+{
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->cluster_breaking_percentage = value;
+ rmd->refresh_constraints = true;
+}
- if (STREQ(RNA_property_identifier(prop), "layers_vgroup_select_src")) {
- Object *ob_src = dtmd->ob_source;
+static void rna_RigidBodyModifier_use_breaking_set(PointerRNA *ptr, bool value)
+{
+ RigidBodyShardCon* rbsc;
+ FractureModifierData *rmd = (FractureModifierData*)ptr->data;
+ rmd->use_breaking = value;
+ //rmd->refresh_constraints = true;
-#if 0 /* XXX Don't think we want this in modifier version... */
- if (BKE_object_pose_armature_get(ob_src)) {
- RNA_enum_items_add_value(&item, &totitem, rna_enum_dt_layers_select_src_items, DT_LAYERS_VGROUP_SRC_BONE_SELECT);
- RNA_enum_items_add_value(&item, &totitem, rna_enum_dt_layers_select_src_items, DT_LAYERS_VGROUP_SRC_BONE_DEFORM);
+ for (rbsc = rmd->meshConstraints.first; rbsc; rbsc = rbsc->next)
+ {
+ if (value == true){
+ rbsc->flag |= RBC_FLAG_USE_BREAKING;
+ }
+ else {
+ rbsc->flag &= ~RBC_FLAG_USE_BREAKING;
}
-#endif
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list