diff options
author | Mitchell Stokes <mogurijin@gmail.com> | 2012-10-30 19:44:16 +0400 |
---|---|---|
committer | Mitchell Stokes <mogurijin@gmail.com> | 2012-10-30 19:44:16 +0400 |
commit | 3bf9bb3b13521c8bba4d559f308c5b2c04973df8 (patch) | |
tree | 2f1e92d25671239d16b51df88f57ffc6dea93c79 /source/blender/makesdna/DNA_object_types.h | |
parent | 5753ede9a5cda9e23cc346ca57f6fb677e9fbb92 (diff) |
BGE: Adding support for Bullet's collision masks. Each object now has a collision mask and a collision group. Object A and object B collide if object A's groups is in object B's mask and object B's group is in object A's mask. In other words, the group defines what the object is (collision wise) and the group defines what the object can collide with.
The majority of this patch was provided by Kupoman with some edits from me and heavy testing by z0r.
Diffstat (limited to 'source/blender/makesdna/DNA_object_types.h')
-rw-r--r-- | source/blender/makesdna/DNA_object_types.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/makesdna/DNA_object_types.h b/source/blender/makesdna/DNA_object_types.h index 2fc04c4a5db..932d209f2c7 100644 --- a/source/blender/makesdna/DNA_object_types.h +++ b/source/blender/makesdna/DNA_object_types.h @@ -243,6 +243,9 @@ typedef struct Object { short recalc; /* dependency flag */ float anisotropicFriction[3]; + /** Collision mask settings */ + unsigned short col_group, col_mask, col_pad[2]; + ListBase constraints; /* object constraints */ ListBase nlastrips DNA_DEPRECATED; // XXX deprecated... old animation system ListBase hooks DNA_DEPRECATED; // XXX deprecated... old animation system @@ -479,6 +482,9 @@ typedef struct DupliObject { /* controller state */ #define OB_MAX_STATES 30 +/* collision masks */ +#define OB_MAX_COL_MASKS 8 + /* ob->gameflag */ #define OB_DYNAMIC 1 #define OB_CHILD 2 |