SuperTuxKart
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
IrrDebugDrawer Class Reference
Inheritance diagram for IrrDebugDrawer:
Inheritance graph
[legend]

Public Types

enum  DebugModeType { DM_NONE = 0x00, DM_KARTS_PHYSICS = 0x01, DM_NO_KARTS_GRAPHICS = 0x02 }
 The drawing mode to use: If bit 0 is set, draw the bullet collision shape of karts If bit 1 is set, don't draw the kart graphics.
 

Public Member Functions

void render (float dt)
 
virtual void drawLine (const btVector3 &from, const btVector3 &to, const btVector3 &color)
 Draws a line. More...
 
virtual void drawContactPoint (const btVector3 &Point_on_b, const btVector3 &normal_on_b, btScalar distance, int life_time, const btVector3 &color)
 optional debug methods
 
virtual void reportErrorWarning (const char *warningString)
 
virtual void draw3dText (const btVector3 &location, const char *textString)
 
bool debugEnabled () const
 Returns true if debug mode is enabled. More...
 
void nextDebugMode ()
 Activates the next debug mode, or switches the mode off again.
 
void setDebugMode (DebugModeType mode)
 
void beginNextFrame ()
 
const std::map< video::SColor, std::vector< float > > & getLines () const
 

Public Attributes

DebugModeType m_debug_mode
 
std::map< video::SColor, std::vector< float > > m_lines
 
Vec3 m_camera_pos
 

Protected Member Functions

virtual void setDebugMode (int debug_mode)
 
virtual int getDebugMode () const
 Callback for bullet: if debug drawing should be done or not. More...
 

Member Function Documentation

◆ debugEnabled()

bool IrrDebugDrawer::debugEnabled ( ) const
inline

Returns true if debug mode is enabled.

◆ drawLine()

void IrrDebugDrawer::drawLine ( const btVector3 &  from,
const btVector3 &  to,
const btVector3 &  color 
)
virtual

Draws a line.

◆ getDebugMode()

virtual int IrrDebugDrawer::getDebugMode ( ) const
inlineprotectedvirtual

Callback for bullet: if debug drawing should be done or not.

Note that getDebugMode is even called when debug_drawing is disabled (i.e. not via Physics::draw()), but internally from bullet. So we have to make sure to return nodebug if debugging is disabled.


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