diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2006-12-25 11:52:57 +0300 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2006-12-25 11:52:57 +0300 |
commit | dd5077060efa99412112ad27c0db4e4c6668c3e0 (patch) | |
tree | 85a2b6c1ce5e12873245138886b552824616cb38 /source/blender/include/BDR_sculptmode.h | |
parent | 5aabafeb9944b2ed27b1a9158154f134e0d2f150 (diff) |
Cleanup of the SDNA SculptData struct. Moved a lot of data that isn't saved into a separate SculptSession struct (outside of SDNA.)
Diffstat (limited to 'source/blender/include/BDR_sculptmode.h')
-rw-r--r-- | source/blender/include/BDR_sculptmode.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/source/blender/include/BDR_sculptmode.h b/source/blender/include/BDR_sculptmode.h index a82d43f8342..94c3af95203 100644 --- a/source/blender/include/BDR_sculptmode.h +++ b/source/blender/include/BDR_sculptmode.h @@ -32,11 +32,16 @@ struct uiBlock; struct BrushData; +struct IndexNode; +struct Key; struct Mesh; struct Object; struct PartialVisibility; +struct RenderInfo; struct Scene; struct ScrArea; +struct SculptData; +struct SculptUndo; typedef enum PropsetMode { PropsetNone = 0, @@ -53,6 +58,36 @@ typedef struct PropsetData { char origstrength; } PropsetData; +typedef struct SculptSession { + /* Cache of the OpenGL matrices */ + double modelviewmat[16]; + double projectionmat[16]; + int viewport[4]; + + /* An array of lists; array is sized as + large as the number of verts in the mesh, + the list for each vert contains the index + for all the faces that use that vertex */ + struct ListBase *vertex_users; + struct IndexNode *vertex_users_mem; + int vertex_users_size; + + /* Used to cache the render of the active texture */ + struct RenderInfo *texrndr; + + PropsetData *propset; + + struct SculptUndo *undo; + + /* For rotating around a pivot point */ + vec3f pivot; + + struct Key *key; +} SculptSession; + +SculptSession *sculpt_session(); +struct SculptData *sculpt_data(); + /* Memory */ void sculptmode_init(struct Scene *); void sculptmode_free_all(struct Scene *); |