25 #ifndef GIMPACT_TRIANGLE_SHAPE_EX_H
26 #define GIMPACT_TRIANGLE_SHAPE_EX_H
35 #define MAX_TRI_CLIPPING 16
158 aabbMin = trianglebox.
m_min;
159 aabbMax = trianglebox.
m_max;
180 #endif //GIMPACT_TRIANGLE_MESH_SHAPE_H
btTriangleShapeEx(const btVector3 &p0, const btVector3 &p1, const btVector3 &p2)
bool overlap_test_conservative(const btTriangleShapeEx &other)
class btTriangleShapeEx: public btTriangleShape
bool overlap_test_conservative(const btPrimitiveTriangle &other)
Test if triangles could collide.
Helper class for colliding Bullet Triangle Shapes.
void bt_edge_plane(const btVector3 &e1, const btVector3 &e2, const btVector3 &normal, btVector4 &plane)
Calc a plane from a triangle edge an a normal. plane is a vec4f.
btScalar m_collisionMargin
void applyTransform(const btTransform &t)
void buildTriPlane(btVector4 &plane) const
#define SIMD_FORCE_INLINE
btVector3 & normalize()
Normalize this vector x^2 + y^2 + z^2 = 1.
void get_edge_plane(int edge_index, btVector4 &plane) const
Calcs the plane which is paralele to the edge and perpendicular to the triangle plane.
int clip_triangle(btPrimitiveTriangle &other, btVector3 *clipped_points)
Clips the triangle against this.
btVector3 can be used to represent 3D points and vectors.
bool find_triangle_collision_clip_method(btPrimitiveTriangle &other, GIM_TRIANGLE_CONTACT &contacts)
Find collision using the clipping method.
static float4 cross(const float4 &a, const float4 &b)
virtual void getAabb(const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
getAabb's default implementation is brute force, expected derived classes to implement a fast dedicat...
btScalar dot(const btQuaternion &q1, const btQuaternion &q2)
Calculate the dot product between two quaternions.
btTriangleShapeEx(const btTriangleShapeEx &other)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
void applyTransform(const btTransform &t)
void setValue(const btScalar &_x, const btScalar &_y, const btScalar &_z, const btScalar &_w)
Set x,y,z and zero w.