36 lines
1.0 KiB
C++
36 lines
1.0 KiB
C++
#ifndef PHYSICSDEBUGNODE_H
|
|
#define PHYSICSDEBUGNODE_H
|
|
|
|
#include "meshnode.h"
|
|
#include <SparrowRenderer/mesh.h>
|
|
#include <LinearMath/btIDebugDraw.h>
|
|
|
|
class PhysicsDebugNode : public MeshNode, public btIDebugDraw
|
|
{
|
|
int m_debugMode;
|
|
|
|
public:
|
|
PhysicsDebugNode();
|
|
~PhysicsDebugNode();
|
|
|
|
virtual void drawLine(const btVector3& from,const btVector3& to,const btVector3& color);
|
|
|
|
virtual void flushLines();
|
|
|
|
virtual void drawContactPoint(const btVector3& PointOnB,const btVector3& normalOnB,btScalar distance,int lifeTime,const btVector3& color) {} // not supported yet
|
|
|
|
virtual void reportErrorWarning(const char* warningString) {} // not supported yet
|
|
|
|
virtual void draw3dText(const btVector3& location, const char* textString) {} // not supported yet
|
|
|
|
// currently useless
|
|
virtual void setDebugMode(int debugMode) { m_debugMode = debugMode; }
|
|
virtual int getDebugMode() const { return m_debugMode; }
|
|
|
|
unsigned int getFlags() { m_geometry.mesh->getFlags(); }
|
|
|
|
void clearBuffers();
|
|
};
|
|
|
|
#endif // PHYSICSDEBUGNODE_H
|