diff options
Diffstat (limited to 'source/blender/makesdna/DNA_customdata_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_customdata_types.h | 28 |
1 files changed, 10 insertions, 18 deletions
diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h index eeeb0581527..f7f40e99617 100644 --- a/source/blender/makesdna/DNA_customdata_types.h +++ b/source/blender/makesdna/DNA_customdata_types.h @@ -47,7 +47,7 @@ typedef struct CustomDataLayer { int active_rnd; /* number of the layer to render*/ int active_clone; /* number of the layer to render*/ int active_mask; /* number of the layer to render*/ - char pad[4]; + int uid; /* shape keyblock unique id reference*/ char name[64]; /* layer name, MAX_CUSTOMDATA_LAYER_AAME */ void *data; /* layer data */ } CustomDataLayer; @@ -63,11 +63,13 @@ typedef struct CustomDataExternal { * layers, each with a data type (e.g. MTFace, MDeformVert, etc.). */ typedef struct CustomData { CustomDataLayer *layers; /* CustomDataLayers, ordered by type */ - int typemap[32]; /* runtime only! - maps types to indices of first layer of that type, + int typemap[33]; /* runtime only! - maps types to indices of first layer of that type, * MUST be >= CD_NUMTYPES, but we cant use a define here. * Correct size is ensured in CustomData_update_typemap assert() */ + int pad1; + int totlayer, maxlayer; /* number of layers, size of layers array */ - int totsize, pad; /* in editmode, total size of all data layers */ + int totsize, pad2; /* in editmode, total size of all data layers */ void *pool; /* Bmesh: Memory pool for allocation of blocks */ CustomDataExternal *external; /* external file storing customdata layers */ } CustomData; @@ -99,8 +101,6 @@ typedef struct CustomData { #define CD_CLOTH_ORCO 23 #define CD_RECAST 24 -#ifdef USE_BMESH_FORWARD_COMPAT - /* BMESH ONLY START */ #define CD_MPOLY 25 #define CD_MLOOP 26 @@ -108,16 +108,11 @@ typedef struct CustomData { #define CD_SHAPEKEY 28 #define CD_BWEIGHT 29 #define CD_CREASE 30 -#define CD_WEIGHT_MLOOPCOL 31 +#define CD_ORIGSPACE_MLOOP 31 +#define CD_WEIGHT_MLOOPCOL 32 /* BMESH ONLY END */ -#define CD_NUMTYPES 32 - -#else - -#define CD_NUMTYPES 25 - -#endif +#define CD_NUMTYPES 33 /* Bits for CustomDataMask */ #define CD_MASK_MVERT (1 << CD_MVERT) @@ -144,8 +139,6 @@ typedef struct CustomData { #define CD_MASK_CLOTH_ORCO (1 << CD_CLOTH_ORCO) #define CD_MASK_RECAST (1 << CD_RECAST) -#ifdef USE_BMESH_FORWARD_COMPAT - /* BMESH ONLY START */ #define CD_MASK_MPOLY (1 << CD_MPOLY) #define CD_MASK_MLOOP (1 << CD_MLOOP) @@ -153,11 +146,10 @@ typedef struct CustomData { #define CD_MASK_SHAPEKEY (1 << CD_SHAPEKEY) #define CD_MASK_BWEIGHT (1 << CD_BWEIGHT) #define CD_MASK_CREASE (1 << CD_CREASE) -#define CD_MASK_WEIGHT_MLOOPCOL (1 << CD_WEIGHT_MLOOPCOL) +#define CD_MASK_ORIGSPACE_MLOOP (1 << CD_ORIGSPACE_MLOOP) +#define CD_MASK_WEIGHT_MLOOPCOL (1LL << CD_WEIGHT_MLOOPCOL) /* BMESH ONLY END */ -#endif - /* CustomData.flag */ /* indicates layer should not be copied by CustomData_from_template or |