diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2009-08-29 01:47:11 +0400 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2009-08-29 01:47:11 +0400 |
commit | 77c587a8250cd21c751bbab0c4dd263989d88b9a (patch) | |
tree | c6c8defe82e0dd1040168f7530ceb9441a61c3f3 /source/blender/blenkernel/BKE_paint.h | |
parent | 03b3d2cb794c5fe03fc4c27b006044e24e294cfc (diff) |
2.5 Paint:
* Removed the BKE_sculpt file and moved it's contents (basically just the sculpt session struct) to BKE_paint
Diffstat (limited to 'source/blender/blenkernel/BKE_paint.h')
-rw-r--r-- | source/blender/blenkernel/BKE_paint.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_paint.h b/source/blender/blenkernel/BKE_paint.h index 4337d275776..7dc9e4499c6 100644 --- a/source/blender/blenkernel/BKE_paint.h +++ b/source/blender/blenkernel/BKE_paint.h @@ -29,9 +29,13 @@ #define BKE_PAINT_H struct Brush; +struct MFace; +struct MultireModifierData; +struct MVert; struct Object; struct Paint; struct Scene; +struct StrokeCache; extern const char PAINT_CURSOR_SCULPT[3]; extern const char PAINT_CURSOR_VERTEX_PAINT[3]; @@ -53,4 +57,39 @@ void paint_brush_slot_remove(struct Paint *p); * however hiding faces is useful */ int paint_facesel_test(struct Object *ob); +/* Session data (mode-specific) */ + +typedef struct SculptSession { + struct ProjVert *projverts; + + /* Mesh data (not copied) can come either directly from a Mesh, or from a MultiresDM */ + struct MultiresModifierData *multires; /* Special handling for multires meshes */ + struct MVert *mvert; + struct MFace *mface; + int totvert, totface; + float *face_normals; + + /* Mesh connectivity */ + struct ListBase *fmap; + struct IndexNode *fmap_mem; + int fmap_size; + + /* Used temporarily per-stroke */ + float *vertexcosnos; + ListBase damaged_rects; + ListBase damaged_verts; + + /* Used to cache the render of the active texture */ + unsigned int texcache_side, *texcache, texcache_actual; + + /* Layer brush persistence between strokes */ + float (*mesh_co_orig)[3]; /* Copy of the mesh vertices' locations */ + float *layer_disps; /* Displacements for each vertex */ + + struct SculptStroke *stroke; + struct StrokeCache *cache; +} SculptSession; + +void free_sculptsession(SculptSession **); + #endif |