mirror of
https://github.com/antopilo/Nuake.git
synced 2026-09-21 20:08:40 +03:00
Gizmo api now working with a simple quad in the world
This commit is contained in:
@@ -7,9 +7,11 @@
|
||||
|
||||
#include "Nuake/Rendering/Vulkan/VulkanRenderer.h"
|
||||
#include "Nuake/Rendering/Vulkan/SceneViewport.h"
|
||||
#include "Nuake/Rendering/Vulkan/DebugCmd.h"
|
||||
|
||||
#include <glm/gtc/type_ptr.hpp>
|
||||
|
||||
|
||||
using namespace Nuake;
|
||||
|
||||
ViewportWidget::ViewportWidget(EditorContext& context) : IEditorWidget(context)
|
||||
@@ -204,4 +206,17 @@ void ViewportWidget::OnSceneChanged(Ref<Nuake::Scene> scene)
|
||||
vkRenderer.RegisterSceneViewport(scene, viewport->GetID());
|
||||
|
||||
sceneViewport = viewport;
|
||||
}
|
||||
|
||||
sceneViewport->GetOnDebugDraw().AddRaw(this, &ViewportWidget::OnDebugDraw);
|
||||
}
|
||||
|
||||
void ViewportWidget::OnDebugDraw(DebugCmd& debugCmd)
|
||||
{
|
||||
auto cam = debugCmd.GetScene()->GetCurrentCamera();
|
||||
|
||||
auto view = cam->GetTransform();
|
||||
auto proj = cam->GetPerspective();
|
||||
Matrix4 model = glm::translate(Matrix4(1.0f), Vector3(0, 3, 0));
|
||||
|
||||
debugCmd.DrawQuad(proj * view * model);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ class EditorContext;
|
||||
namespace Nuake
|
||||
{
|
||||
class Viewport;
|
||||
class DebugCmd;
|
||||
}
|
||||
|
||||
class ViewportWidget : public IEditorWidget
|
||||
@@ -30,4 +31,6 @@ public:
|
||||
void Update(float ts) override;
|
||||
void Draw() override;
|
||||
void OnSceneChanged(Ref<Nuake::Scene> scene) override;
|
||||
|
||||
void OnDebugDraw(Nuake::DebugCmd& debugCmd);
|
||||
};
|
||||
Reference in New Issue
Block a user