Merge branch 'master' into blender2.8
authorBastien Montagne <montagne29@wanadoo.fr>
Tue, 12 Jun 2018 10:58:31 +0000 (12:58 +0200)
committerBastien Montagne <montagne29@wanadoo.fr>
Tue, 12 Jun 2018 10:58:31 +0000 (12:58 +0200)
Conflicts:
source/blender/collada/DocumentImporter.cpp
source/blender/editors/include/ED_object.h
source/blender/editors/object/object_modifier.c

1  2 
source/blender/blenkernel/BKE_object.h
source/blender/blenkernel/intern/object.c
source/blender/collada/ArmatureImporter.cpp
source/blender/collada/ArmatureImporter.h
source/blender/collada/DocumentImporter.cpp
source/blender/editors/include/ED_object.h
source/blender/editors/mesh/meshtools.c
source/blender/editors/object/object_modifier.c
source/blender/editors/object/object_shapekey.c
source/blender/makesrna/intern/rna_object_api.c

index 482d39b5e683e31b7b8ffd0d9b2738d899f73da2,51cfc5b008757a64f1009b2b05c328761299481c..ab8327d354a3cf9296ab558a2d3a80abbd2b9f7f
@@@ -272,14 -243,9 +272,14 @@@ void BKE_object_sculpt_modifiers_change
  
  int BKE_object_obdata_texspace_get(struct Object *ob, short **r_texflag, float **r_loc, float **r_size, float **r_rot);
  
 +struct Mesh *BKE_object_get_evaluated_mesh(const struct Depsgraph *depsgraph, struct Object *ob);
 +struct Mesh *BKE_object_get_final_mesh(struct Object *object);
 +struct Mesh *BKE_object_get_pre_modified_mesh(struct Object *object);
 +struct Mesh *BKE_object_get_original_mesh(struct Object *object);
 +
  int BKE_object_insert_ptcache(struct Object *ob);
  void BKE_object_delete_ptcache(struct Object *ob, int index);
- struct KeyBlock *BKE_object_shapekey_insert(struct Object *ob, const char *name, const bool from_mix);
+ struct KeyBlock *BKE_object_shapekey_insert(struct Main *bmain, struct Object *ob, const char *name, const bool from_mix);
  bool BKE_object_shapekey_remove(struct Main *bmain, struct Object *ob, struct KeyBlock *kb);
  bool BKE_object_shapekey_free(struct Main *bmain, struct Object *ob);
  
index aab5a4ecfa9997436c31515e1e4d1bdd6b865eec,5cbffbe45265a362a31704e6733bb39d00e1f838..d80f7c20139b8168ff45719e2089a413ec11b016
@@@ -244,8 -240,8 +244,8 @@@ void DocumentImporter::finish(
  
        armature_importer.set_tags_map(this->uid_tags_map);
        armature_importer.make_armatures(mContext, *objects_to_scale);
-       armature_importer.make_shape_keys();
+       armature_importer.make_shape_keys(mContext);
 -      DAG_relations_tag_update(bmain);
 +      DEG_relations_tag_update(bmain);
  
  #if 0
        armature_importer.fix_animation();
index f1311233f23e2a3b083f72969cad510157be941b,a8536e6f71cd6d3e91acfd3a3357785eb4762241..a5155b5b945b08789c85c3a7a1083175e8787c1c
@@@ -243,10 -215,9 +243,10 @@@ int ED_object_modifier_move_down(struc
  int ED_object_modifier_move_up(struct ReportList *reports, struct Object *ob, struct ModifierData *md);
  int ED_object_modifier_convert(
          struct ReportList *reports, struct Main *bmain, struct Scene *scene,
 -        struct Object *ob, struct ModifierData *md);
 -int ED_object_modifier_apply(struct Main *bmain, struct ReportList *reports, struct Scene *scene,
 -                             struct Object *ob, struct ModifierData *md, int mode);
 +        struct ViewLayer *view_layer, struct Object *ob, struct ModifierData *md);
 +int ED_object_modifier_apply(
-         struct ReportList *reports, struct Depsgraph *depsgraph, struct Scene *scene,
++        struct Main *bmain, struct ReportList *reports, struct Depsgraph *depsgraph, struct Scene *scene,
 +        struct Object *ob, struct ModifierData *md, int mode);
  int ED_object_modifier_copy(struct ReportList *reports, struct Object *ob, struct ModifierData *md);
  
  bool ED_object_iter_other(
index 41e1ca13b7915782685a10fe7f5303b26cb92b9f,8980e1830cf08a73021475861cc06ed40281b573..146bcc742e55d7ef9565c34600f341a16076f798
@@@ -605,9 -598,9 +605,10 @@@ int join_mesh_exec(bContext *C, wmOpera
  
  int join_mesh_shapes_exec(bContext *C, wmOperator *op)
  {
+       Main *bmain = CTX_data_main(C);
        Scene *scene = CTX_data_scene(C);
        Object *ob = CTX_data_active_object(C);
 +      Depsgraph *depsgraph = CTX_data_depsgraph(C);
        Mesh *me = (Mesh *)ob->data;
        Mesh *selme = NULL;
        DerivedMesh *dm = NULL;
index 1b9af3725ca6c7c922814a49c2b7656b48232601,824a26fe60e0e74151fdbf7c43f3db1b1b1cd65f..8395eea336c4df0322c1430fcf23329eb285efa3
@@@ -524,7 -520,7 +524,8 @@@ int ED_object_modifier_convert(ReportLi
        return 1;
  }
  
- static int modifier_apply_shape(ReportList *reports, Depsgraph *depsgraph, Scene *scene, Object *ob, ModifierData *md)
 -static int modifier_apply_shape(Main *bmain, ReportList *reports, Scene *scene, Object *ob, ModifierData *md)
++static int modifier_apply_shape(
++        Main *bmain, ReportList *reports, Depsgraph *depsgraph, Scene *scene, Object *ob, ModifierData *md)
  {
        const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
  
@@@ -672,9 -667,7 +673,9 @@@ static int modifier_apply_obdata(Report
        return 1;
  }
  
 -int ED_object_modifier_apply(Main *bmain, ReportList *reports, Scene *scene, Object *ob, ModifierData *md, int mode)
 +int ED_object_modifier_apply(
-         ReportList *reports, Depsgraph *depsgraph,
++        Main *bmain, ReportList *reports, Depsgraph *depsgraph,
 +        Scene *scene, Object *ob, ModifierData *md, int mode)
  {
        int prev_mode;
  
        md->mode |= eModifierMode_Realtime;
  
        if (mode == MODIFIER_APPLY_SHAPE) {
-               if (!modifier_apply_shape(reports, depsgraph, scene, ob, md)) {
 -              if (!modifier_apply_shape(bmain, reports, scene, ob, md)) {
++              if (!modifier_apply_shape(bmain, reports, depsgraph, scene, ob, md)) {
                        md->mode = prev_mode;
                        return 0;
                }
@@@ -1017,13 -998,13 +1018,14 @@@ void OBJECT_OT_modifier_move_down(wmOpe
  
  static int modifier_apply_exec(bContext *C, wmOperator *op)
  {
+       Main *bmain = CTX_data_main(C);
 +      Depsgraph *depsgraph = CTX_data_depsgraph(C);
        Scene *scene = CTX_data_scene(C);
        Object *ob = ED_object_active_context(C);
        ModifierData *md = edit_modifier_property_get(op, ob, 0);
        int apply_as = RNA_enum_get(op->ptr, "apply_as");
  
-       if (!md || !ED_object_modifier_apply(op->reports, depsgraph, scene, ob, md, apply_as)) {
 -      if (!md || !ED_object_modifier_apply(bmain, op->reports, scene, ob, md, apply_as)) {
++      if (!md || !ED_object_modifier_apply(bmain, op->reports, depsgraph, scene, ob, md, apply_as)) {
                return OPERATOR_CANCELLED;
        }