Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicholas Bishop <nicholasbishop@gmail.com>2012-05-11 00:33:24 +0400
committerNicholas Bishop <nicholasbishop@gmail.com>2012-05-11 00:33:24 +0400
commitaa77bbd38daff45725d7e726e89f2e681cee863d (patch)
treeb2db3709f12af1c7a67700ffc3c095cafdd1fa5c /source/blender/makesdna/DNA_customdata_types.h
parentf751d0f6ae7de155343e24e36965956bd7a061e3 (diff)
Add DNA and customdata entries for paint masks.
CD_PAINT_MASK is a layer of per-vertex floats for non-multires meshes. Multires meshes use CD_GRID_PAINT_MASK, which is a layer of per-loop GridPaintMask structures. GridPaintMask is similar to MDisp, but contains an array of scalar floats. Note: the GridPaintMask could be folded into MDisp, but this way should be easier to add mask layers in the future (if we do fold GridPaintMask into MDisp, the mask array should probably be an array of arrays with a 'totmask' field so that mask layers can be easily supported.) Includes blenload read/write support for CD_PAINT_MASK and CD_GRID_PAINT_MASK.
Diffstat (limited to 'source/blender/makesdna/DNA_customdata_types.h')
-rw-r--r--source/blender/makesdna/DNA_customdata_types.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_customdata_types.h b/source/blender/makesdna/DNA_customdata_types.h
index 9898f9715a0..5792953fe49 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[34]; /* runtime only! - maps types to indices of first layer of that type,
+ int typemap[36]; /* 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() */
@@ -112,7 +112,10 @@ typedef struct CustomData {
#define CD_BM_ELEM_PYPTR 33
/* BMESH ONLY END */
-#define CD_NUMTYPES 34
+#define CD_PAINT_MASK 34
+#define CD_GRID_PAINT_MASK 35
+
+#define CD_NUMTYPES 36
/* Bits for CustomDataMask */
#define CD_MASK_MVERT (1 << CD_MVERT)
@@ -151,6 +154,9 @@ typedef struct CustomData {
#define CD_MASK_BM_ELEM_PYPTR (1LL << CD_BM_ELEM_PYPTR)
/* BMESH ONLY END */
+#define CD_MASK_PAINT_MASK (1LL << CD_PAINT_MASK)
+#define CD_MASK_GRID_PAINT_MASK (1LL << CD_GRID_PAINT_MASK)
+
/* CustomData.flag */
/* indicates layer should not be copied by CustomData_from_template or