2025-04-01 01:25:39 +00:00
|
|
|
#pragma once
|
2025-04-01 16:02:52 +00:00
|
|
|
#include <iostream>
|
2025-04-01 01:25:39 +00:00
|
|
|
#include <GLFW/glfw3.h>
|
|
|
|
|
2025-04-01 16:02:52 +00:00
|
|
|
#include <GL/gl.h>
|
|
|
|
#include "../vendor/imgui-docking/imgui.h"
|
|
|
|
#include "../vendor/imgui-docking/imgui_impl_glfw.h"
|
|
|
|
#include "../vendor/imgui-docking/imgui_impl_opengl3_loader.h"
|
|
|
|
#include "../vendor/imgui-docking/imgui_impl_opengl3.h"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-04-01 01:25:39 +00:00
|
|
|
class Engine {
|
|
|
|
public:
|
|
|
|
// Initializes GLFW, creates a window, and sets up the OpenGL context.
|
|
|
|
static bool Init();
|
|
|
|
|
|
|
|
// Clears the screen.
|
|
|
|
static void BeginFrame();
|
|
|
|
|
|
|
|
// Swaps buffers and polls for events.
|
|
|
|
static void EndFrame();
|
|
|
|
|
|
|
|
// Returns the pointer to the GLFW window.
|
|
|
|
static GLFWwindow* GetWindow();
|
|
|
|
|
|
|
|
private:
|
|
|
|
static GLFWwindow* window;
|
|
|
|
};
|