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 WPhysicsComponentCreatePhysicsComponent ()
 
- Public Member Functions inherited from Wasabi
template<typename 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
 
VulkanSwapChainGetSwapChain ()
 

Static Public Member Functions

static void Thread (void *debugger_ptr)
 

Public Attributes

std::string m_appName
 
WBulletPhysicsm_physics
 
bool m_keepRunning
 
std::thread m_thread
 
int m_debugMode
 
uint32_t m_maxLines
 
float fYaw
 
float fPitch
 
float fDist
 
WVector3 vPos
 
class WObjectm_linesDrawer
 
std::vector< BulletDebugger::LINE > m_lines [2]
 
std::mutex m_linesLock
 
int m_curLines
 
- Public Attributes inherited from Wasabi
class WVulkanMemoryManagerMemoryManager
 
class WSoundComponentSoundComponent
 
class WWindowAndInputComponentWindowAndInputComponent
 
class WTextComponentTextComponent
 
class WPhysicsComponentPhysicsComponent
 
class WRendererRenderer
 
class WFileManagerFileManager
 
class WObjectManagerObjectManager
 
class WGeometryManagerGeometryManager
 
class WEffectManagerEffectManager
 
class WShaderManagerShaderManager
 
class WMaterialManagerMaterialManager
 
class WCameraManagerCameraManager
 
class WImageManagerImageManager
 
class WSpriteManagerSpriteManager
 
class WRenderTargetManagerRenderTargetManager
 
class WLightManagerLightManager
 
class WAnimationManagerAnimationManager
 
class WParticlesManagerParticlesManager
 
class WTerrainManagerTerrainManager
 
WTimer Timer
 
float FPS
 
float maxFPS
 
class WGameStatecurState
 
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 WTextComponentCreateTextComponent ()
 
virtual class WSoundComponentCreateSoundComponent ()
 
virtual class WWindowAndInputComponentCreateWindowAndInputComponent ()
 
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: