diff options
author | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2013-03-13 10:44:43 +0400 |
---|---|---|
committer | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2013-03-13 10:44:43 +0400 |
commit | 894c240f9d007271e9d587d3c1b6f961c445b1b8 (patch) | |
tree | 369079e17a0c80a5b39e323a67045ca397849491 /source/blender/makesdna/DNA_customdata_types.h | |
parent | 2d801f2bec3c4de663f33b0f0f198a12f09ef989 (diff) |
New implementation of Freestyle edge/face marks
The previous implementation of Freestyle edge/face marks was refactored
based on suggestions from the latest code review by Campbell. The new
implementation relies on mesh CustomData to store edge/face marks, instead
of introducing extra flags in the core Mesh and BMesh data structures.
The CustomData-based implementation will allow further additions of new
edge/face attributes because of the independence from Mesh/BMesh.
This revision is work in progress, mainly intended to address the review
comments and ask for further code review in view of the trunk merger in
the upcoming 2.67 release.
Diffstat (limited to 'source/blender/makesdna/DNA_customdata_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_customdata_types.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h index 4a3debe756b..8debadf24c3 100644 --- a/source/blender/makesdna/DNA_customdata_types.h +++ b/source/blender/makesdna/DNA_customdata_types.h @@ -63,7 +63,7 @@ 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[37]; /* runtime only! - maps types to indices of first layer of that type, + int typemap[39]; /* 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 totlayer, maxlayer; /* number of layers, size of layers array */ @@ -114,7 +114,9 @@ typedef struct CustomData { #define CD_PAINT_MASK 34 #define CD_GRID_PAINT_MASK 35 #define CD_MVERT_SKIN 36 -#define CD_NUMTYPES 37 +#define CD_FREESTYLE_EDGE 37 +#define CD_FREESTYLE_FACE 38 +#define CD_NUMTYPES 39 /* Bits for CustomDataMask */ #define CD_MASK_MVERT (1 << CD_MVERT) @@ -156,6 +158,8 @@ typedef struct CustomData { #define CD_MASK_PAINT_MASK (1LL << CD_PAINT_MASK) #define CD_MASK_GRID_PAINT_MASK (1LL << CD_GRID_PAINT_MASK) #define CD_MASK_MVERT_SKIN (1LL << CD_MVERT_SKIN) +#define CD_MASK_FREESTYLE_EDGE (1LL << CD_FREESTYLE_EDGE) +#define CD_MASK_FREESTYLE_FACE (1LL << CD_FREESTYLE_FACE) /* CustomData.flag */ |