4
4
* Object is a sort of wrapper for general info.
6
* $Id: DNA_object_types.h,v 1.11 2004/03/22 22:01:21 jesterking Exp $
6
* $Id: DNA_object_types.h,v 1.29 2005/05/02 13:28:12 ton Exp $
8
8
* ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
137
140
* For a Sphere, the form factor is by default = 0.4
140
float formfactor, dummy_1;
143
float formfactor, softtime; /* softtime temp for softbody, remove it before release! */
141
144
float rdamping, sizefac;
173
176
* bit 15: Always ignore activity culling
179
short softflag, dummy; /* temporal stuff softbody experiment */
177
180
float anisotropicFriction[3];
179
182
ListBase constraints;
180
183
ListBase nlastrips;
186
struct PartDeflect *pd; /* particle deflector/attractor/collision data */
187
struct SoftBody *soft; /* if exists, saved in file */
182
188
struct Life *life;
187
float toonedge, pad2;
193
float toonedge, smoothresh; /* smoothresh is phong interpolation ray_shadow correction in render */
197
typedef struct ObHook {
198
struct ObHook *next, *prev;
200
struct Object *parent;
201
float parentinv[4][4]; /* matrix making current transform unmodified */
202
float mat[4][4]; /* temp matrix while hooking */
203
float cent[3]; /* visualization of hook */
204
float falloff; /* if not zero, falloff is distance where influence zero */
209
int totindex, curindex; /* curindex is cache for fast lookup */
210
short type, active; /* active is only first hook, for button menu */
190
215
/* this work object is defined in object.c */
191
216
extern Object workob;
194
219
/* **************** OBJECT ********************* */
196
/* used many places... should be specialized */
221
/* used many places... should be specialized */
199
#define GONNA_MOVE 32 /* temporary, for figuring what stuff needs
200
* updating during transform due to parenting
201
* or constraints... do not rely on this value
202
* unless you are me (CW).
206
225
#define OB_EMPTY 0
289
309
#define OB_BOUND_CYLINDER 2
290
310
#define OB_BOUND_CONE 3
291
311
#define OB_BOUND_POLYH 4
312
#define OB_BOUND_POLYT 5
293
314
/* also needed for base!!!!! or rather, thy interfere....*/
294
/* base->flag en ob->flag */
315
/* base->flag and ob->flag */
295
316
#define BA_WASSEL 2
296
317
#define BA_PARSEL 4
297
318
#define BA_WHERE_UPDATE 8
298
319
#define BA_DISP_UPDATE 16
299
320
#define BA_DO_IPO 32
321
#define OB_GONNA_MOVE 32
300
322
#define BA_FROMSET 128
301
323
#define OB_DO_IMAT 256
302
324
#define OB_FROMDUPLI 512
303
325
#define OB_DONE 1024
304
326
#define OB_RADIO 2048
305
327
#define OB_FROMGROUP 4096
328
#define OB_POSEMODE 8192
307
330
/* ob->gameflag */
308
331
#define OB_DYNAMIC 1