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:
authorCampbell Barton <ideasman42@gmail.com>2011-11-05 07:02:55 +0400
committerCampbell Barton <ideasman42@gmail.com>2011-11-05 07:02:55 +0400
commitcc7e79f37272c9e9565d6eb456138a6f07fea9fc (patch)
tree0008e754c5e8bf4da30e9a7c4d767d038647dc2c /source/blender/makesdna
parentb0adf37ef90c5c42ff48da9938fe1a041d52ae46 (diff)
more DNA object edits
- remove 'path' pointer, wasnt used anywhere. - remove comments about what each game flag 'bit' does, these are defines now. - reduce the size of DupliObject 8 bytes. also commented some of the struct members.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_object_types.h58
1 files changed, 25 insertions, 33 deletions
diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h
index c5fd17e1bdb..3306b9e97bc 100644
--- a/source/blender/makesdna/DNA_object_types.h
+++ b/source/blender/makesdna/DNA_object_types.h
@@ -111,12 +111,12 @@ typedef struct Object {
/* proxy_from is set in target back to the proxy. */
struct Object *proxy, *proxy_group, *proxy_from;
struct Ipo *ipo; // XXX depreceated... old animation system
- struct Path *path;
+ /* struct Path *path; */
struct BoundBox *bb;
struct bAction *action; // XXX depreceated... old animation system
struct bAction *poselib;
- struct bPose *pose;
- void *data;
+ struct bPose *pose; /* pose data, armature objects only */
+ void *data; /* pointer to objects data - an 'ID' or NULL */
struct bGPdata *gpd; /* Grease Pencil data */
@@ -124,9 +124,9 @@ typedef struct Object {
bMotionPath *mpath; /* motion path cache for this object */
ListBase constraintChannels; // XXX depreceated... old animation system
- ListBase effect;
- ListBase disp;
- ListBase defbase;
+ ListBase effect; // XXX depreceated... keep for readfile
+ ListBase disp; /* list of DispList, used by lattice, metaballs curve & surfaces */
+ ListBase defbase; /* list of bDeformGroup (vertex groups) names and flag only */
ListBase modifiers; /* list of ModifierData structures */
int mode; /* Local object mode */
@@ -156,7 +156,7 @@ typedef struct Object {
*/
float imat_ren[4][4];
- unsigned int lay; /* copy of Base */
+ unsigned int lay; /* copy of Base's layer in the scene */
short flag; /* copy of Base */
short colbits; /* deprecated */
@@ -164,8 +164,8 @@ typedef struct Object {
short transflag, protectflag; /* transformation settings and transform locks */
short trackflag, upflag;
short nlaflag, ipoflag; // xxx depreceated... old animation system
- short scaflag; /* ipowin: blocktype last ipowindow */
- char scavisflag;
+ short scaflag; /* ui state for game logic */
+ char scavisflag; /* more display settings for game logic */
char pad5;
int dupon, dupoff, dupsta, dupend;
@@ -200,39 +200,27 @@ typedef struct Object {
char boundtype; /* bounding box use for drawing */
char collision_boundtype; /* bounding box type used for collision */
- char restrictflag; /* for restricting view, select, render etc. accessible in outliner */
+ char restrictflag; /* for restricting view, select, render etc. accessible in outliner */
- char dt, dtx;
+ char dt; /* viewport draw type */
+ char dtx; /* viewport draw extra settings */
char empty_drawtype;
float empty_drawsize;
float dupfacesca; /* dupliface scale */
- ListBase prop;
- ListBase sensors;
- ListBase controllers;
- ListBase actuators;
+ ListBase prop; /* game logic property list (not to be confused with IDProperties) */
+ ListBase sensors; /* game logic sensors */
+ ListBase controllers; /* game logic controllers */
+ ListBase actuators; /* game logic actuators */
float bbsize[3];
short index; /* custom index, for renderpasses */
unsigned short actdef; /* current deformation group, note: index starts at 1 */
float col[4]; /* object color */
- /**
- * Settings for game objects
- * bit 0: Object has dynamic behaviour
- * bit 2: Object is evaluated by the gameengine
- * bit 6: Use Fh settings in Materials
- * bit 7: Use face normal to rotate Object
- * bit 8: Friction is anisotropic
- * bit 9: Object is a ghost
- * bit 10: Do rigid body dynamics.
- * bit 11: Use bounding object for physics
- */
+
int gameflag;
- /**
- * More settings
- * bit 15: Always ignore activity culling
- */
int gameflag2;
+
struct BulletSoftBody *bsoft; /* settings for game engine bullet soft body */
short softflag; /* softbody settings */
@@ -241,7 +229,7 @@ typedef struct Object {
ListBase constraints; /* object constraints */
ListBase nlastrips; // XXX depreceated... old animation system
- ListBase hooks;
+ ListBase hooks; // XXX depreceated... old animation system
ListBase particlesystem; /* particle systems */
struct PartDeflect *pd; /* particle deflector/attractor/collision data */
@@ -261,7 +249,7 @@ typedef struct Object {
unsigned int state; /* bit masks of game controllers that are active */
unsigned int init_state; /* bit masks of initial state as recorded by the users */
- ListBase gpulamp; /* runtime, for lamps only */
+ ListBase gpulamp; /* runtime, for glsl lamp display only */
ListBase pc_ids;
ListBase *duplilist; /* for temporary dupli list storage, only for use by RNA API */
@@ -286,13 +274,17 @@ typedef struct ObHook {
float force;
} ObHook;
+/* runtime only, but include here for rna access */
typedef struct DupliObject {
struct DupliObject *next, *prev;
struct Object *ob;
unsigned int origlay;
- int index, no_draw, type, animated;
+ int index;
float mat[4][4], omat[4][4];
float orco[3], uv[2];
+
+ short type; /* from Object.transflag */
+ char no_draw, animated;
} DupliObject;
/* **************** OBJECT ********************* */