ImguiDrawer::Prepare now calls RenderInternal
This commit is contained in:
parent
741b593033
commit
8da1fa5db5
|
|
@ -58,6 +58,8 @@ namespace Nz
|
||||||
static void GetAllocatorFunctions(ImGuiMemAllocFunc* allocFunc, ImGuiMemFreeFunc* freeFunc, void** userData);
|
static void GetAllocatorFunctions(ImGuiMemAllocFunc* allocFunc, ImGuiMemFreeFunc* freeFunc, void** userData);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
void RenderInternal();
|
||||||
|
|
||||||
void SetupInputs(Nz::WindowEventHandler& handler);
|
void SetupInputs(Nz::WindowEventHandler& handler);
|
||||||
void Update(const Nz::Vector2i& mousePosition, const Nz::Vector2ui& displaySize, float dt);
|
void Update(const Nz::Vector2i& mousePosition, const Nz::Vector2ui& displaySize, float dt);
|
||||||
|
|
||||||
|
|
@ -78,6 +80,8 @@ namespace Nz
|
||||||
std::unordered_set<ImguiHandler*> m_handlers;
|
std::unordered_set<ImguiHandler*> m_handlers;
|
||||||
|
|
||||||
static Imgui* s_instance;
|
static Imgui* s_instance;
|
||||||
|
|
||||||
|
friend class ImguiDrawer;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,7 @@
|
||||||
#include <NazaraImgui/ImguiDrawer.hpp>
|
#include <NazaraImgui/ImguiDrawer.hpp>
|
||||||
|
|
||||||
|
#include <NazaraImgui/NazaraImgui.hpp>
|
||||||
|
|
||||||
#include <Nazara/Renderer/CommandBufferBuilder.hpp>
|
#include <Nazara/Renderer/CommandBufferBuilder.hpp>
|
||||||
#include <Nazara/Renderer/RenderDevice.hpp>
|
#include <Nazara/Renderer/RenderDevice.hpp>
|
||||||
#include <Nazara/Renderer/RenderFrame.hpp>
|
#include <Nazara/Renderer/RenderFrame.hpp>
|
||||||
|
|
@ -64,6 +66,8 @@ namespace Nz
|
||||||
|
|
||||||
void ImguiDrawer::Prepare(RenderFrame& frame)
|
void ImguiDrawer::Prepare(RenderFrame& frame)
|
||||||
{
|
{
|
||||||
|
Nz::Imgui::Instance()->RenderInternal();
|
||||||
|
|
||||||
m_drawCalls.clear();
|
m_drawCalls.clear();
|
||||||
|
|
||||||
ImDrawData* drawData = ImGui::GetDrawData();
|
ImDrawData* drawData = ImGui::GetDrawData();
|
||||||
|
|
|
||||||
|
|
@ -277,11 +277,6 @@ namespace Nz
|
||||||
|
|
||||||
void Imgui::Render(Nz::RenderTarget* renderTarget, Nz::RenderFrame& frame)
|
void Imgui::Render(Nz::RenderTarget* renderTarget, Nz::RenderFrame& frame)
|
||||||
{
|
{
|
||||||
for (auto* handler : m_handlers)
|
|
||||||
handler->OnRenderImgui();
|
|
||||||
|
|
||||||
ImGui::Render();
|
|
||||||
|
|
||||||
m_imguiDrawer.Prepare(frame);
|
m_imguiDrawer.Prepare(frame);
|
||||||
|
|
||||||
frame.Execute([this, renderTarget, &frame](Nz::CommandBufferBuilder& builder) {
|
frame.Execute([this, renderTarget, &frame](Nz::CommandBufferBuilder& builder) {
|
||||||
|
|
@ -300,6 +295,14 @@ namespace Nz
|
||||||
}, Nz::QueueType::Graphics);
|
}, Nz::QueueType::Graphics);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void Imgui::RenderInternal()
|
||||||
|
{
|
||||||
|
for (auto* handler : m_handlers)
|
||||||
|
handler->OnRenderImgui();
|
||||||
|
|
||||||
|
ImGui::Render();
|
||||||
|
}
|
||||||
|
|
||||||
void Imgui::AddHandler(ImguiHandler* handler)
|
void Imgui::AddHandler(ImguiHandler* handler)
|
||||||
{
|
{
|
||||||
m_handlers.insert(handler);
|
m_handlers.insert(handler);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue