Wasabi
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
BulletDebugger Class Reference
Inheritance diagram for BulletDebugger:
Wasabi

Public Member Functions

void ApplyMousePivot ()
 
 BulletDebugger (WBulletPhysics *physics, uint32_t maxLines, std::string appName)
 
virtual WError Setup ()
 
virtual bool Loop (float fDeltaTime)
 
virtual void Cleanup ()
 
virtual void drawLine (const btVector3 &from, const btVector3 &to, const btVector3 &color)
 
virtual void drawContactPoint (const btVector3 &PointOnB, const btVector3 &normalOnB, btScalar distance, int lifeTime, const btVector3 &color)
 
virtual void reportErrorWarning (const char *warningString)
 
virtual void draw3dText (const btVector3 &location, const char *textString)
 
virtual void setDebugMode (int debugMode)
 
virtual int getDebugMode () const
 
virtual void clearLines ()
 
virtual WError SetupRenderer ()
 
virtual WPhysicsComponent * CreatePhysicsComponent ()
 
- Public Member Functions inherited from Wasabi
template<typename T >
T GetEngineParam (std::string paramName, T fallback=T())
 
template<typename T >
void SetEngineParam (std::string paramName, T value)
 
void SwitchState (class WGameState *state)
 
WError StartEngine (int width, int height)
 
virtual WError Resize (uint32_t width, uint32_t height)
 
uint32_t GetCurrentBufferingIndex ()
 
VkInstance GetVulkanInstance () const
 
VkPhysicalDevice GetVulkanPhysicalDevice () const
 
VkDevice GetVulkanDevice () const
 
VkQueue GetVulkanGraphicsQeueue () const
 
VulkanSwapChain * GetSwapChain ()
 

Static Public Member Functions

static void Thread (void *debugger_ptr)
 

Public Attributes

std::string m_appName
 
WBulletPhysics * m_physics
 
bool m_keepRunning
 
std::thread m_thread
 
int m_debugMode
 
uint32_t m_maxLines
 
float fYaw
 
float fPitch
 
float fDist
 
WVector3 vPos
 
class WObject * m_linesDrawer
 
std::vector< BulletDebugger::LINE > m_lines [2]
 
std::mutex m_linesLock
 
int m_curLines
 
- Public Attributes inherited from Wasabi
class WVulkanMemoryManager * MemoryManager
 
class WSoundComponent * SoundComponent
 
class WWindowAndInputComponent * WindowAndInputComponent
 
class WTextComponent * TextComponent
 
class WPhysicsComponent * PhysicsComponent
 
class WRenderer * Renderer
 
class WFileManager * FileManager
 
class WObjectManager * ObjectManager
 
class WGeometryManager * GeometryManager
 
class WEffectManager * EffectManager
 
class WShaderManager * ShaderManager
 
class WMaterialManager * MaterialManager
 
class WCameraManager * CameraManager
 
class WImageManager * ImageManager
 
class WSpriteManager * SpriteManager
 
class WRenderTargetManager * RenderTargetManager
 
class WLightManager * LightManager
 
class WAnimationManager * AnimationManager
 
class WParticlesManager * ParticlesManager
 
class WTerrainManager * TerrainManager
 
WTimer Timer
 
float FPS
 
float maxFPS
 
class WGameState * curState
 
bool __EXIT
 

Additional Inherited Members

- Protected Member Functions inherited from Wasabi
virtual VkInstance CreateVKInstance ()
 
virtual int SelectGPU (std::vector< VkPhysicalDevice > devices)
 
virtual VkPhysicalDeviceFeatures GetDeviceFeatures ()
 
virtual class WTextComponent * CreateTextComponent ()
 
virtual class WSoundComponent * CreateSoundComponent ()
 
virtual class WWindowAndInputComponent * CreateWindowAndInputComponent ()
 
void _DestroyResources ()
 
- Protected Attributes inherited from Wasabi
VkInstance m_vkInstance
 
VkPhysicalDevice m_vkPhysDev
 
VkDevice m_vkDevice
 
VkQueue m_graphicsQueue
 
VulkanSwapChain m_swapChain
 
bool m_swapChainInitialized
 
VkDebugReportCallbackEXT m_debugCallback
 
std::map< std::string, void * > engineParams
 

Member Function Documentation

◆ Cleanup()

virtual void BulletDebugger::Cleanup ( )
virtual

This function must be implemented by an application. It is called by the engine to give the application a last chance to clean up its resources before the engine exits.

Implements Wasabi.

◆ CreatePhysicsComponent()

virtual WPhysicsComponent* BulletDebugger::CreatePhysicsComponent ( )
virtual

This function can be overloaded by the application. This function is called by the engine in StartEngine() and will give the application a chance to set the physics component of the engine. Default implementation will return null. IMPORTANT: You must fully initialize the returned component, be it with ::Initialize() or any other required initialization.

Reimplemented from Wasabi.

◆ Loop()

virtual bool BulletDebugger::Loop ( float  fDeltaTime)
virtual

This function must be implemented by an application. It is called by the engine every frame to allow the application to update its state.

Parameters
fDeltaTimeThe step time for this frame (roughly 1 / FPS)
Returns
If this function returns true, execution continues, otherwise, the application will exit

Implements Wasabi.

◆ Setup()

virtual WError BulletDebugger::Setup ( )
virtual

This function must be implemented by an application. It is called after WInitialize and is supposed to call StartEngine() and initialize application resources.

Returns
Any error returned other than W_SUCCEEDED will result in the end of the program

Implements Wasabi.

◆ SetupRenderer()

virtual WError BulletDebugger::SetupRenderer ( )
virtual

This function can be overloaded by the application. This function is called by the engine in StartEngine() and will give the application a chance to setup renderer of the engine. Default implementation will call WInitializeDeferredRenderer().

Reimplemented from Wasabi.

Member Data Documentation

◆ m_physics

WBulletPhysics* BulletDebugger::m_physics

This is the physics component running in the main thread, not this one


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