ImGui
This commit is contained in:
@@ -69,6 +69,8 @@
|
||||
#include "../task/renderer/HydraEndRenderTask.hpp"
|
||||
|
||||
#include "../mesh/HydraMeshManager.h"
|
||||
#include "../gui/HydraGuiManager.h"
|
||||
|
||||
HydraTaskScheduler *const HydraEngine::TaskScheduler()
|
||||
{
|
||||
return m_task_scheduler;
|
||||
@@ -208,6 +210,7 @@ void HydraEngine::_CreateManagers()
|
||||
m_material_buffer_manager = new HydraMaterialBufferManager();
|
||||
m_light_buffer_manager = new HydraLightBufferManager();
|
||||
m_shadow_buffer_manager = new HydraShadowBufferManager();
|
||||
m_gui_manager = new HydraGUIManager();
|
||||
|
||||
}
|
||||
|
||||
@@ -232,6 +235,7 @@ void HydraEngine::_InitialiseManagers()
|
||||
|
||||
HydraID create_shadow_buffer_task_id = m_task_scheduler->CreateTask<HydraInitialiseShadowBufferTask>(HydraThreadAffinity::Render);
|
||||
m_task_scheduler->WaitForTask(create_shadow_buffer_task_id);
|
||||
m_gui_manager->Intialise();
|
||||
|
||||
}
|
||||
|
||||
@@ -474,6 +478,11 @@ void HydraEngine::_GameLoop()
|
||||
HydraRenderPipelineTask* render_def_task = static_cast<HydraRenderPipelineTask*>(m_task_scheduler->GetTask(render_def_task_id));
|
||||
render_def_task->Initialise(m_deferred_pipeline);
|
||||
m_task_scheduler->WaitForTask(render_def_task_id);
|
||||
|
||||
m_gui_manager->BeginFrame();
|
||||
m_gui_manager->DrawWindows();
|
||||
m_gui_manager->EndFrame();
|
||||
|
||||
|
||||
HydraID end_task_id = m_task_scheduler->CreateTask<HydraEndRenderTask>(HydraThreadAffinity::Render);
|
||||
m_task_scheduler->WaitForTask(end_task_id);
|
||||
@@ -489,7 +498,7 @@ void HydraEngine::_Shutdown()
|
||||
|
||||
|
||||
//Shutdown the buffer and vertex buffer managers
|
||||
|
||||
m_gui_manager->Shutdown();
|
||||
HydraID shutdown_buffer_mgr_id = m_task_scheduler->CreateTask<HydraShutdownBufferManagerTask>(HydraThreadAffinity::Render);
|
||||
m_task_scheduler->WaitForTask(shutdown_buffer_mgr_id);
|
||||
|
||||
@@ -513,6 +522,7 @@ void HydraEngine::_Shutdown()
|
||||
delete m_texture_buffer_manager;
|
||||
delete m_material_buffer_manager;
|
||||
delete m_light_buffer_manager;
|
||||
delete m_gui_manager;
|
||||
}
|
||||
|
||||
bool HydraEngine::KeyPressed(HYDRA_KEY_CODES key)
|
||||
|
||||
@@ -32,6 +32,7 @@ class HydraPointShadowSourceSystem;
|
||||
class HydraPhysicsSystem;
|
||||
class HydraTickActorsSystem;
|
||||
class HydraShadowCasterSystem;
|
||||
class HydraGUIManager;
|
||||
|
||||
class CLASS_DEFINE HydraEngine : public HydraObject
|
||||
{
|
||||
@@ -98,6 +99,7 @@ private:
|
||||
HydraMaterialBufferManager* m_material_buffer_manager = nullptr;
|
||||
HydraLightBufferManager* m_light_buffer_manager = nullptr;
|
||||
HydraShadowBufferManager* m_shadow_buffer_manager = nullptr;
|
||||
HydraGUIManager* m_gui_manager = nullptr;
|
||||
|
||||
std::shared_ptr<HydraMeshSystem> m_mesh_system;
|
||||
std::shared_ptr<HydraTransformSystem> m_transform_system;
|
||||
|
||||
@@ -13,7 +13,7 @@ void HydraObject::DebugLog(std::string log_entry)
|
||||
#ifdef __unix__ /* __unix__ is usually defined by compilers targeting Unix systems */
|
||||
std::cout << log_entry + "\r\n";
|
||||
#elif defined(_WIN32) || defined(WIN32) /* _Win32 is usually defined by compilers targeting 32 or 64 bit Windows systems */
|
||||
OutputDebugString(log_entry.c_str());
|
||||
//OutputDebugString(log_entry.c_str());
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user