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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2007-11-27 01:09:57 +0300
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2007-11-27 01:09:57 +0300
commit7da56f4a9ba0bdd0cdcd40b8ca6e69d776d26abe (patch)
tree663c13aae5606937571ac1e7a4c77ca2866e75dd /source/blender/makesdna/DNA_scene_types.h
parent121dab1bcd9467bd8e11d0a82e83a1621758fd8e (diff)
parent770291b9ea1ec03d98b6bae4fd2a2d3f0091be41 (diff)
Particles
========= Merge of the famous particle patch by Janne Karhu, a full rewrite of the Blender particle system. This includes: - Emitter, Hair and Reactor particle types. - Newtonian, Keyed and Boids physics. - Various particle visualisation and rendering types. - Vertex group and texture control for various properties. - Interpolated child particles from parents. - Hair editing with combing, growing, cutting, .. . - Explode modifier. - Harmonic, Magnetic fields, and multiple falloff types. .. and lots of other things, some more info is here: http://wiki.blender.org/index.php/BlenderDev/Particles_Rewrite http://wiki.blender.org/index.php/BlenderDev/Particles_Rewrite_Doc The new particle system cannot be backwards compatible. Old particle systems are being converted to the new system, but will require tweaking to get them looking the same as before. Point Cache =========== The new system to replace manual baking, based on automatic caching on disk. This is currently used by softbodies and the particle system. See the Cache API section on: http://wiki.blender.org/index.php/BlenderDev/PhysicsSprint Documentation ============= These new features still need good docs for the release logs, help for this is appreciated.
Diffstat (limited to 'source/blender/makesdna/DNA_scene_types.h')
-rw-r--r--source/blender/makesdna/DNA_scene_types.h51
1 files changed, 49 insertions, 2 deletions
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 1b8314996f0..1a1cb1c0f2b 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -308,11 +308,28 @@ typedef struct TimeMarker {
unsigned int flag;
} TimeMarker;
-struct ImagePaintSettings {
+typedef struct ImagePaintSettings {
struct Brush *brush;
short flag, tool;
int pad3;
-};
+} ImagePaintSettings;
+
+typedef struct ParticleBrushData {
+ short size, strength; /* commong settings */
+ short step, invert; /* for specific brushes only */
+} ParticleBrushData;
+
+typedef struct ParticleEditSettings {
+ short flag;
+ short totrekey;
+ short totaddkey;
+ short brushtype;
+
+ ParticleBrushData brush[7]; /* 7 = PE_TOT_BRUSH */
+
+ float emitterdist;
+ int draw_timed;
+} ParticleEditSettings;
typedef struct ToolSettings {
/* Subdivide Settings */
@@ -348,6 +365,9 @@ typedef struct ToolSettings {
/* Image Paint (8 byte aligned please!) */
struct ImagePaintSettings imapaint;
+
+ /* Particle Editing */
+ struct ParticleEditSettings particle;
/* Select Group Threshold */
float select_thresh;
@@ -606,6 +626,11 @@ typedef struct Scene {
#define SCE_SELECT_EDGE 2
#define SCE_SELECT_FACE 4
+/* sce->selectmode for particles */
+#define SCE_SELECT_PATH 1
+#define SCE_SELECT_POINT 2
+#define SCE_SELECT_END 4
+
/* sce->recalc (now in use by previewrender) */
#define SCE_PRV_CHANGED 1
@@ -658,6 +683,28 @@ typedef struct Scene {
#define IMAGEPAINT_DRAW_TOOL 2
#define IMAGEPAINT_DRAW_TOOL_DRAWING 4
+/* toolsettings->particle flag */
+#define PE_KEEP_LENGTHS 1
+#define PE_LOCK_FIRST 2
+#define PE_DEFLECT_EMITTER 4
+#define PE_INTERPOLATE_ADDED 8
+#define PE_SHOW_CHILD 16
+#define PE_SHOW_TIME 32
+#define PE_X_MIRROR 64
+
+/* toolsetting->particle brushtype */
+#define PE_BRUSH_NONE -1
+#define PE_BRUSH_COMB 0
+#define PE_BRUSH_CUT 1
+#define PE_BRUSH_LENGTH 2
+#define PE_BRUSH_PUFF 3
+#define PE_BRUSH_ADD 4
+#define PE_BRUSH_WEIGHT 5
+#define PE_BRUSH_SMOOTH 6
+
+/* this must equal ParticleEditSettings.brush array size */
+#define PE_TOT_BRUSH 7
+
/* toolsettings->retopo_mode */
#define RETOPO 1
#define RETOPO_PAINT 2