svn merge ^/trunk/blender -r42927:42931
[blender.git] / source / blender / makesdna / DNA_mesh_types.h
index ca471bbabcde8f3926f1bb716edfe2a678fc078e..26a67c0504c441109befed38536a93dfdfcadfad 100644 (file)
@@ -49,6 +49,11 @@ struct MCol;
 struct MSticky;
 struct Mesh;
 struct OcInfo;
+struct MPoly;
+struct MTexPoly;
+struct MLoop;
+struct MLoopUV;
+struct MLoopCol;
 struct Multires;
 struct EditMesh;
 struct AnimData;
@@ -62,23 +67,35 @@ typedef struct Mesh {
        struct Ipo *ipo  DNA_DEPRECATED;  /* old animation system, deprecated for 2.5 */
        struct Key *key;
        struct Material **mat;
-
-       struct MFace *mface;    /* array of mesh object mode faces */
-       struct MTFace *mtface;  /* store face UV's and texture here */
+       
+       /*new face structures*/
+       struct MPoly *mpoly;
+       struct MTexPoly *mtpoly;
+       struct MLoop *mloop;
+       struct MLoopUV *mloopuv;
+       struct MLoopCol *mloopcol;
+
+       /*mface stores the tesselation (triangulation) of the mesh,
+         real faces are now stored in nface.*/
+       struct MFace *mface;    /* array of mesh object mode faces for tesselation */
+       struct MTFace *mtface;  /* store tesselation face UV's and texture here */
        struct TFace *tface;    /* depecrated, use mtface */
        struct MVert *mvert;    /* array of verts */
        struct MEdge *medge;    /* array of edges */
        struct MDeformVert *dvert;      /* deformgroup vertices */
-       struct MCol *mcol;              /* array of colors, this must be the number of faces * 4 */
+       
+       /* array of colors for the tesselated faces, must be number of tesselated
+          faces * 4 in length */
+       struct MCol *mcol;              
        struct MSticky *msticky;
        struct Mesh *texcomesh;
        struct MSelect *mselect;
        
-       struct EditMesh *edit_mesh;     /* not saved in file! */
+       struct BMEditMesh *edit_btmesh; /* not saved in file! */
 
-       struct CustomData vdata, edata, fdata;
+       struct CustomData vdata, edata, fdata, pdata, ldata;
 
-       int totvert, totedge, totface, totselect;
+       int totvert, totedge, totface, totpoly, totloop, totselect;
        
        /* the last selected vertex/edge/face are used for the active face however
         * this means the active face must always be selected, this is to keep track
@@ -197,9 +214,7 @@ typedef struct TFace {
 /* this is so we can save bmesh files that load in trunk, ignoring NGons
  * will eventually be removed */
 
-#if 0 /* enable in bmesh branch only for now */
 #define USE_BMESH_SAVE_AS_COMPAT
-#endif
 
 
 #endif