~ubuntu-branches/ubuntu/gutsy/blender/gutsy-security

« back to all changes in this revision

Viewing changes to source/blender/makesdna/DNA_object_types.h

  • Committer: Bazaar Package Importer
  • Author(s): Florian Ernst
  • Date: 2005-11-06 12:40:03 UTC
  • mfrom: (1.1.2 upstream)
  • Revision ID: james.westby@ubuntu.com-20051106124003-3pgs7tcg5rox96xg
Tags: 2.37a-1.1
* Non-maintainer upload.
* Split out parts of 01_SConstruct_debian.dpatch again: root_build_dir
  really needs to get adjusted before the clean target runs - closes: #333958,
  see #288882 for reference

Show diffs side-by-side

added added

removed removed

Lines of Context:
3
3
 *      
4
4
 * Object is a sort of wrapper for general info.
5
5
 *
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 $ 
7
7
 *
8
8
 * ***** BEGIN GPL/BL DUAL LICENSE BLOCK *****
9
9
 *
51
51
struct Path;
52
52
struct Material;
53
53
struct bConstraintChannel;
 
54
struct PartDeflect;
 
55
struct SoftBody;
54
56
 
55
57
typedef struct bDeformGroup {
56
58
        struct bDeformGroup *next, *prev;
77
79
        struct Object **ob;
78
80
} LBuf;
79
81
 
 
82
 
80
83
typedef struct Object {
81
84
        ID id;
82
85
 
137
140
         * For a Sphere, the form factor is by default = 0.4
138
141
         */
139
142
 
140
 
        float formfactor, dummy_1;      
 
143
        float formfactor, softtime;             /* softtime temp for softbody, remove it before release! */
141
144
        float rdamping, sizefac;
142
145
        
143
146
        char dt, dtx;
173
176
         * bit 15: Always ignore activity culling 
174
177
         */
175
178
        int gameflag2;
176
 
        int pad;
 
179
        short softflag, dummy;                  /* temporal stuff softbody experiment */
177
180
        float anisotropicFriction[3];
178
181
 
179
182
        ListBase constraints;
180
183
        ListBase nlastrips;
181
 
 
 
184
        ListBase hooks;
 
185
        
 
186
        struct PartDeflect *pd;         /* particle deflector/attractor/collision data */
 
187
        struct SoftBody *soft;          /* if exists, saved in file */
182
188
        struct Life *life;
183
189
 
184
190
        LBuf lbuf;
185
191
        LBuf port;
186
 
 
187
 
        float toonedge, pad2;
 
192
        
 
193
        float toonedge, smoothresh;     /* smoothresh is phong interpolation ray_shadow correction in render */
 
194
  
188
195
} Object;
189
196
 
 
197
typedef struct ObHook {
 
198
        struct ObHook *next, *prev;
 
199
        
 
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 */
 
205
        
 
206
        char name[32];
 
207
 
 
208
        int *indexar;
 
209
        int totindex, curindex; /* curindex is cache for fast lookup */
 
210
        short type, active;             /* active is only first hook, for button menu */
 
211
        float force;
 
212
} ObHook;
 
213
 
 
214
 
190
215
/* this work object is defined in object.c */
191
216
extern Object workob;
192
217
 
193
218
 
194
219
/* **************** OBJECT ********************* */
195
220
 
196
 
/* used many places... should be specialized */
 
221
/* used many places... should be specialized  */
197
222
#define SELECT                  1
198
 
#define ACTIVE                  2
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).
203
 
                                                   */
204
223
 
205
224
/* type */
206
225
#define OB_EMPTY                0
235
254
/* char! transflag */
236
255
#define OB_OFFS_LOCAL   1
237
256
#define OB_QUAT                 2
 
257
#define OB_NEG_SCALE    4
238
258
#define OB_DUPLI                (8+16)
239
259
#define OB_DUPLIFRAMES  8
240
260
#define OB_DUPLIVERTS   16
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
292
313
 
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
306
329
 
307
330
/* ob->gameflag */
308
331
#define OB_DYNAMIC              1
341
364
#define OB_ADDACT               1024
342
365
#define OB_SHOWCONT             2048
343
366
 
 
367
/* ob->softflag in DNA_object_force.h */
 
368
 
344
369
#ifdef __cplusplus
345
370
}
346
371
#endif