Welcome to mirror list, hosted at ThFree Co, Russian Federation.

ConvexTriangleCallback.h « CollisionShapes « Bullet « bullet « extern - git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 8e0e446a549013eebbe8e3e837e7cd1d720e578c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
#ifndef CONVEX_TRIANGLE_CALLBACK_H
#define CONVEX_TRIANGLE_CALLBACK_H

#include "TriangleCallback.h"
class ConvexShape;
class PersistentManifold;
#include "SimdTransform.h"
///ConvexTriangleCallback processes the narrowphase convex-triangle collision detection
class ConvexTriangleCallback: public TriangleCallback
{
	SimdVector3	m_aabbMin;
	SimdVector3	m_aabbMax ;

	SimdTransform	m_triangleMeshTransform;
	SimdTransform	m_convexTransform;

//	bool m_useContinuous;
	float m_collisionMarginTriangle;
	
public:
int	m_triangleCount;
	
	ConvexShape*	m_convexShape;

	PersistentManifold*	m_manifoldPtr;

	ConvexTriangleCallback(PersistentManifold* manifold,ConvexShape* convexShape,const SimdTransform&convexTransform,const SimdTransform& triangleMeshTransform);

	void	Update(float collisionMarginTriangle);

	virtual ~ConvexTriangleCallback();

	virtual void ProcessTriangle(SimdVector3* triangle);
	
	void ClearCache();

	inline const SimdVector3& GetAabbMin() const
	{
		return m_aabbMin;
	}
	inline const SimdVector3& GetAabbMax() const
	{
		return m_aabbMax;
	}

};


#endif //CONVEX_TRIANGLE_CALLBACK_H