Merge branch 'master' into blender2.8
authorSybren A. Stüvel <sybren@stuvel.eu>
Fri, 7 Apr 2017 15:28:22 +0000 (17:28 +0200)
committerSybren A. Stüvel <sybren@stuvel.eu>
Fri, 7 Apr 2017 15:28:22 +0000 (17:28 +0200)
# Conflicts:
# source/blender/alembic/intern/abc_exporter.h
# source/blender/alembic/intern/abc_util.cc

1  2 
build_files/cmake/macros.cmake
source/blender/alembic/intern/abc_exporter.cc
source/blender/alembic/intern/abc_exporter.h
source/blender/alembic/intern/abc_object.cc
source/blender/alembic/intern/abc_util.cc
source/blender/alembic/intern/abc_util.h
source/blender/alembic/intern/alembic_capi.cc
source/blender/modifiers/intern/MOD_meshsequencecache.c

index 7b47578cbc7da6d44d94d6d98f994dae7ae3b182,b7f6649e5070e5fe0b81e2756bee1365ed1b8b39..27728917af50dcce39deb714883a2dc0f06d8700
@@@ -595,10 -595,9 +595,11 @@@ function(SETUP_BLENDER_SORTED_LIBS
                bf_freestyle
                bf_ikplugin
                bf_modifiers
+               bf_alembic
                bf_bmesh
                bf_gpu
 +              bf_draw
 +              bf_intern_gawain
                bf_blenloader
                bf_blenkernel
                bf_physics
index cf2a3432da9b1c61934e78f159e98043464afe85,0f08037fd17852dbd2c77d24d25d20d74ce40ae6..f0e8e6b68152527585862f61e0eb196c500f2ea4
@@@ -110,11 -110,11 +113,11 @@@ private
  
        void createTransformWritersHierarchy(EvaluationContext *eval_ctx);
        void createTransformWritersFlat();
-       void createTransformWriter(Object *ob,  Object *parent, Object *dupliObParent);
+       AbcTransformWriter * createTransformWriter(Object *ob,  Object *parent, Object *dupliObParent);
 -      void exploreTransform(EvaluationContext *eval_ctx, Object *ob, Object *parent, Object *dupliObParent = NULL);
 -      void exploreObject(EvaluationContext *eval_ctx, Object *ob, Object *dupliObParent);
 +      void exploreTransform(EvaluationContext *eval_ctx, Base *ob_base, Object *parent, Object *dupliObParent);
 +      void exploreObject(EvaluationContext *eval_ctx, Base *ob_base, Object *dupliObParent);
        void createShapeWriters(EvaluationContext *eval_ctx);
 -      void createShapeWriter(Object *ob, Object *dupliObParent);
 +      void createShapeWriter(Base *ob_base, Object *dupliObParent);
  
        AbcTransformWriter *getXForm(const std::string &name);
  
index 41cc53b07160e2e2513126d9734911d8961afdff,224e0eccd003e1d90e01d1d805ec4ddfda93a07e..b99be718c1852071c3f91ef6fec78dfc708ebb0f
@@@ -61,17 -60,7 +61,16 @@@ std::string get_id_name(const ID * cons
        return name;
  }
  
 +/**
 + * @brief get_object_dag_path_name returns the name under which the object
 + *  will be exported in the Alembic file. It is of the form
 + *  "[../grandparent/]parent/object" if dupli_parent is NULL, or
 + *  "dupli_parent/[../grandparent/]parent/object" otherwise.
 + * @param ob
 + * @param dupli_parent
 + * @return
 + */
- std::string get_object_dag_path_name(Object *ob, Object *dupli_parent)
+ std::string get_object_dag_path_name(const Object * const ob, Object *dupli_parent)
  {
        std::string name = get_id_name(ob);
  
index ab2cce59afa7c1d269e579bdfa0b88dce16fff34,5b53c86a859d51bf6ac3e7f5a7585aa556614fc4..7217d5d5cef4393ccdf4ea1aa0f5ef96125c2438
@@@ -43,17 -48,16 +48,16 @@@ struct ImportSettings
  
  struct ID;
  struct Object;
 +struct Base;
  
- std::string get_id_name(ID *id);
- std::string get_id_name(Object *ob);
- std::string get_object_dag_path_name(Object *ob, Object *dupli_parent);
+ std::string get_id_name(const ID * const id);
+ std::string get_id_name(const Object * const ob);
+ std::string get_object_dag_path_name(const Object * const ob, Object *dupli_parent);
  
 -bool object_selected(Object *ob);
 -bool parent_selected(Object *ob);
 +bool object_selected(const Base * const ob_base);
  
  Imath::M44d convert_matrix(float mat[4][4]);
- void create_transform_matrix(float r_mat[4][4]);
- void create_transform_matrix(Object *obj, float transform_mat[4][4]);
+ void create_transform_matrix(Object *obj, float r_transform_mat[4][4]);
  
  void split(const std::string &s, const char delim, std::vector<std::string> &tokens);