Spinning Topp Logo BlackTopp Studios
inc
Public Member Functions | Protected Attributes | List of all members
Mezzanine::Physics::DynamicMeshCollisionShape Class Reference

A triangle mesh collsion shape based on a graphics mesh. More...

#include <collisionshape.h>

+ Inheritance diagram for Mezzanine::Physics::DynamicMeshCollisionShape:
+ Collaboration diagram for Mezzanine::Physics::DynamicMeshCollisionShape:

Public Member Functions

 DynamicMeshCollisionShape (const String &Name, btGImpactMeshShape *BulletShape)
 Internal Constructor. More...
 
virtual ~DynamicMeshCollisionShape ()
 Class Destructor.
 
virtual CollisionShape::ShapeType GetType () const
 Gets the type of Collision shape this is. More...
 
- Public Member Functions inherited from Mezzanine::Physics::MeshCollisionShape
 MeshCollisionShape ()
 Class Constructor.
 
virtual ~MeshCollisionShape ()
 Class Destructor.
 
virtual btConcaveShape * GetBulletConcaveShape () const
 
virtual void ProtoDeSerialize (const XML::Node &OneNode)
 
virtual void ProtoSerialize (XML::Node &CurrentRoot) const
 
- Public Member Functions inherited from Mezzanine::Physics::CollisionShape
 CollisionShape ()
 Class Constructor.
 
virtual ~CollisionShape ()
 Class Destructor.
 
virtual btCollisionShape * _GetInternalShape () const
 Gets the internal shape pointer this collision shape is based on. More...
 
virtual void _SetShapeName (const String &NewName)
 Sets the name of this collision shape. More...
 
virtual Real GetMargin () const
 Gets the amount of padding currently being applied to the collision shape. More...
 
virtual const StringGetName () const
 Gets the name of this shape. More...
 
virtual Vector3 GetScaling () const
 Gets the current scaling being applied to the collision shape. More...
 
virtual void SetMargin (const Real &Margin)
 Sets the padding that will be applied when checking for collisions. More...
 
virtual void SetScaling (const Vector3 &Scaling)
 Scales the collision shape on each of it's axes. More...
 

Protected Attributes

btGImpactMeshShape * GImpactShape
 
- Protected Attributes inherited from Mezzanine::Physics::CollisionShape
String Name
 Storage for the name of this class instance.
 
btCollisionShape * ShapeBase
 A pointer to the bullet collision this uses.
 

Additional Inherited Members

- Public Types inherited from Mezzanine::Physics::CollisionShape
enum  ShapeType {
  ST_Box = 0, ST_Capsule = 1, ST_Compound = 2, ST_Cone = 3,
  ST_ConvexHull = 4, ST_Cylinder = 5, ST_MultiSphere = 6, ST_Sphere = 7,
  ST_DynamicTriMesh = 8, ST_Heightfield = 9, ST_Plane = 10, ST_Soft = 11,
  ST_StaticTriMesh = 12
}
 This enum describes what kind of shape you are currently working with. More...
 
- Static Public Member Functions inherited from Mezzanine::Physics::MeshCollisionShape
static String GetSerializableName ()
 Get the name of the the XML tag this class will leave behind as its instances are serialized. More...
 
- Static Public Member Functions inherited from Mezzanine::Physics::CollisionShape
static String GetSerializableName ()
 Get the name of the the XML tag this class will leave behind as its instances are serialized. More...
 
- Protected Member Functions inherited from Mezzanine::Physics::MeshCollisionShape
void SetPointers (btConcaveShape *Shape)
 Sets the internal pointers on the base classes.
 

Detailed Description

A triangle mesh collsion shape based on a graphics mesh.

As the name suggests, this is a TriMesh shape intended for dynamic objects. This can be used with static objects, but using the StaticMeshCollisionShape class instead will yeild much better performance.

In general, this collision shape will provide "pixel-perfect" collisions, but this comes at a steep performance cost. You can't have too many objects with this kind of shape before running into noticable performance drops. This class should be avoided in real-time applications if at all possible. Primitives provide much better performance.

Definition at line 63 of file dynamicmeshcollisionshape.h.

Constructor & Destructor Documentation

Mezzanine::Physics::DynamicMeshCollisionShape::DynamicMeshCollisionShape ( const String Name,
btGImpactMeshShape *  BulletShape 
)

Internal Constructor.

Parameters
NameThe name of this Shape.
BulletShapeThe internal shape this shape is based on.

Definition at line 57 of file dynamicmeshcollisionshape.cpp.

Member Function Documentation

CollisionShape::ShapeType Mezzanine::Physics::DynamicMeshCollisionShape::GetType ( ) const
virtual

Gets the type of Collision shape this is.

Returns
Returns an enum value indicating the type of collision shape this is.

Implements Mezzanine::Physics::MeshCollisionShape.

Definition at line 69 of file dynamicmeshcollisionshape.cpp.


The documentation for this class was generated from the following files: