Initial Log
This commit is contained in:
parent
4678a7dbf6
commit
cefe62be9f
12 changed files with 61 additions and 34 deletions
|
@ -27,8 +27,14 @@ namespace Light {
|
|||
|
||||
void Application::GameLoop()
|
||||
{
|
||||
// check
|
||||
LT_ENGINE_ASSERT(!m_LayerStack.IsEmpty(), "Application::GameLoop: Layerstack is empty");
|
||||
|
||||
// Log some data
|
||||
m_Window->GetGfxContext()->LogDebugData();
|
||||
m_Window->GetGfxContext()->GetUserInterface()->LogDebugData();
|
||||
|
||||
// GAMELOOP //
|
||||
while (m_Window->IsOpen())
|
||||
{
|
||||
// Events
|
||||
|
|
|
@ -28,7 +28,7 @@ namespace Light {
|
|||
public:
|
||||
WindowMovedEvent(int x, int y): m_Position(x, y) {}
|
||||
|
||||
const glm::ivec2& GetPosition() { return m_Position; }
|
||||
const glm::ivec2& GetPosition() const{ return m_Position; }
|
||||
|
||||
virtual std::string GetInfoLog() const override
|
||||
{
|
||||
|
@ -48,7 +48,7 @@ namespace Light {
|
|||
public:
|
||||
WindowResizedEvent(int width, int height): m_Size(width, height) {}
|
||||
|
||||
const glm::ivec2& GetSize() { return m_Size; }
|
||||
const glm::ivec2& GetSize() const { return m_Size; }
|
||||
|
||||
virtual std::string GetInfoLog() const override
|
||||
{
|
||||
|
|
|
@ -53,7 +53,6 @@ namespace Light {
|
|||
LT_ENGINE_ASSERT(s_Context->m_RenderCommand, "GraphicsContext::Create: RenderCommand creation failed");
|
||||
LT_ENGINE_ASSERT(s_Context->m_UserInterface, "GraphicsContext::Create: UserInterface creation failed");
|
||||
|
||||
|
||||
return s_Context;
|
||||
}
|
||||
|
||||
|
|
|
@ -10,6 +10,8 @@ namespace Light {
|
|||
class RenderCommand;
|
||||
class UserInterface;
|
||||
|
||||
class WindowResizedEvent;
|
||||
|
||||
enum class GraphicsAPI
|
||||
{
|
||||
Default = 0,
|
||||
|
@ -32,12 +34,16 @@ namespace Light {
|
|||
GraphicsAPI m_GraphicsAPI;
|
||||
|
||||
public:
|
||||
static GraphicsContext* Create(GraphicsAPI api, GLFWwindow* windowHandle);
|
||||
|
||||
GraphicsContext(const GraphicsContext&) = delete;
|
||||
GraphicsContext& operator=(const GraphicsContext&) = delete;
|
||||
|
||||
virtual ~GraphicsContext() = default;
|
||||
|
||||
static GraphicsContext* Create(GraphicsAPI api, GLFWwindow* windowHandle);
|
||||
virtual void OnWindowResize(const WindowResizedEvent& event) = 0;
|
||||
|
||||
virtual void LogDebugData() = 0;
|
||||
|
||||
static inline GraphicsAPI GetGraphicsAPI() { return s_Context->m_GraphicsAPI; }
|
||||
|
||||
|
@ -47,6 +53,7 @@ namespace Light {
|
|||
|
||||
protected:
|
||||
GraphicsContext() = default;
|
||||
|
||||
};
|
||||
|
||||
}
|
|
@ -11,6 +11,8 @@ namespace Light {
|
|||
class UserInterface
|
||||
{
|
||||
public:
|
||||
static UserInterface* Create(GLFWwindow* windowHandle);
|
||||
|
||||
UserInterface(const UserInterface&) = delete;
|
||||
UserInterface operator=(const UserInterface&) = delete;
|
||||
|
||||
|
@ -21,7 +23,8 @@ namespace Light {
|
|||
virtual void Begin() = 0;
|
||||
virtual void End() = 0;
|
||||
|
||||
static UserInterface* Create(GLFWwindow* windowHandle);
|
||||
virtual void LogDebugData() = 0;
|
||||
|
||||
protected:
|
||||
UserInterface() = default;
|
||||
};
|
||||
|
|
|
@ -9,6 +9,8 @@
|
|||
#include "Graphics/VertexLayout.h"
|
||||
#include "UserInterface/UserInterface.h"
|
||||
|
||||
#include "Events/WindowEvents.h"
|
||||
|
||||
#include "Utility/Stringifier.h"
|
||||
|
||||
#include <glad/glad.h>
|
||||
|
@ -26,10 +28,21 @@ namespace Light {
|
|||
"glGraphicsContext::glGraphicsContext: gladLoadGLLoader: failed to initialize opengl context");
|
||||
|
||||
SetDebugMessageCallback();
|
||||
}
|
||||
|
||||
LT_ENGINE_INFO("glGraphicsContext:");
|
||||
void glGraphicsContext::OnWindowResize(const WindowResizedEvent& event)
|
||||
{
|
||||
glViewport(0, 0, event.GetSize().x, event.GetSize().y);
|
||||
}
|
||||
|
||||
void glGraphicsContext::LogDebugData()
|
||||
{
|
||||
LT_ENGINE_INFO("________________________________________");
|
||||
LT_ENGINE_INFO("GraphicsContext::");
|
||||
LT_ENGINE_INFO(" API : OpenGL");
|
||||
LT_ENGINE_INFO(" Version : {}", glGetString(GL_VERSION));
|
||||
LT_ENGINE_INFO(" Renderer: {}", glGetString(GL_RENDERER));
|
||||
LT_ENGINE_INFO(" Version: {}", glGetString(GL_VERSION));
|
||||
LT_ENGINE_INFO("________________________________________");
|
||||
}
|
||||
|
||||
void glGraphicsContext::SetDebugMessageCallback()
|
||||
|
|
|
@ -7,6 +7,8 @@ struct GLFWwindow;
|
|||
|
||||
namespace Light {
|
||||
|
||||
class WindowResizedEvent;
|
||||
|
||||
class glGraphicsContext : public GraphicsContext
|
||||
{
|
||||
private:
|
||||
|
@ -15,6 +17,10 @@ namespace Light {
|
|||
public:
|
||||
glGraphicsContext(GLFWwindow* windowHandle);
|
||||
|
||||
virtual void OnWindowResize(const WindowResizedEvent& event) override;
|
||||
|
||||
virtual void LogDebugData() override;
|
||||
|
||||
private:
|
||||
void SetDebugMessageCallback();
|
||||
};
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#include "ltpch.h"
|
||||
#include "ltpch.h"
|
||||
#include "glUserInterface.h"
|
||||
|
||||
#include <imgui.h>
|
||||
|
@ -42,4 +42,13 @@ namespace Light {
|
|||
ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
|
||||
}
|
||||
|
||||
void glUserInterface::LogDebugData()
|
||||
{
|
||||
LT_ENGINE_INFO("________________________________________");
|
||||
LT_ENGINE_INFO("UserInterface::");
|
||||
LT_ENGINE_INFO(" API : ImGui");
|
||||
LT_ENGINE_INFO(" Version: {}", ImGui::GetVersion());
|
||||
LT_ENGINE_INFO("________________________________________");
|
||||
}
|
||||
|
||||
}
|
|
@ -13,6 +13,8 @@ namespace Light {
|
|||
|
||||
void Begin() override;
|
||||
void End() override;
|
||||
|
||||
virtual void LogDebugData() override;
|
||||
};
|
||||
|
||||
}
|
|
@ -48,6 +48,8 @@ namespace Light {
|
|||
{
|
||||
case EventType::WindowClosed:
|
||||
b_Open = false;
|
||||
case EventType::WindowResized:
|
||||
m_GraphicsContext->OnWindowResize((const WindowResizedEvent&)event);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -4,13 +4,13 @@ Size=400,400
|
|||
Collapsed=0
|
||||
|
||||
[Window][Dear ImGui Demo]
|
||||
Pos=-3,0
|
||||
Size=524,134
|
||||
Collapsed=1
|
||||
Pos=-3,-1
|
||||
Size=243,295
|
||||
Collapsed=0
|
||||
|
||||
[Window][Dear ImGui Metrics/Debugger]
|
||||
Pos=-5,16
|
||||
Size=525,114
|
||||
Pos=-1,859
|
||||
Size=359,115
|
||||
Collapsed=0
|
||||
|
||||
[Table][0xC9935533,3]
|
||||
|
|
|
@ -5,24 +5,4 @@ class SandboxLayer : public Light::Layer
|
|||
public:
|
||||
SandboxLayer(const std::string& name): Light::Layer(name) {}
|
||||
|
||||
// Mouse events
|
||||
virtual bool OnMouseMoved(const Light::MouseMovedEvent& event) override { LT_ENGINE_TRACE("{}", event.GetInfoLog()); return false; }
|
||||
virtual bool OnButtonPressed(const Light::ButtonPressedEvent& event) override { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnButtonReleased(const Light::ButtonReleasedEvent& event) override { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnWheelScrolled(const Light::WheelScrolledEvent& event) override { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
|
||||
// Keyboard events
|
||||
virtual bool OnKeyPressed(const Light::KeyPressedEvent& event) override
|
||||
{
|
||||
LT_ENGINE_TRACE(event.GetInfoLog());
|
||||
return true;
|
||||
}
|
||||
virtual bool OnKeyReleased(const Light::KeyReleasedEvent& event) override { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
|
||||
// Window events
|
||||
virtual bool OnWindowClosed(const Light::WindowClosedEvent& event) override { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnWindowResized(const Light::WindowResizedEvent& event) { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnWindowMoved(const Light::WindowMovedEvent& event) { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnWindowLostFocus(const Light::WindowLostFocusEvent& event) { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
virtual bool OnWindowGainFocus(const Light::WindowGainFocusEvent& event) { LT_ENGINE_TRACE(event.GetInfoLog()); return false; }
|
||||
};
|
||||
|
|
Loading…
Add table
Reference in a new issue