aboutsummaryrefslogtreecommitdiff
path: root/core/src/Entrypoint/OpenGL3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/Entrypoint/OpenGL3.cpp')
-rw-r--r--core/src/Entrypoint/OpenGL3.cpp102
1 files changed, 0 insertions, 102 deletions
diff --git a/core/src/Entrypoint/OpenGL3.cpp b/core/src/Entrypoint/OpenGL3.cpp
deleted file mode 100644
index 7d5cae1..0000000
--- a/core/src/Entrypoint/OpenGL3.cpp
+++ /dev/null
@@ -1,102 +0,0 @@
-#include "OpenGL3.hpp"
-
-#if BUILD_CORE_WITH_OPENGL3_BACKEND
-# include <glad/glad.h>
-# include <GLFW/glfw3.h>
-# include <backend/imgui_impl_glfw.h>
-# include <backend/imgui_impl_opengl3.h>
-# include <imgui.h>
-# include <stdexcept>
-
-# define IMGUI_IMPL_OPENGL_LOADER_GLAD
-# include <backend/imgui_impl_opengl3.cpp>
-
-OpenGL3Backend::OpenGL3Backend() {
- glfwSetErrorCallback(GlfwErrorCallback);
- if (!glfwInit()) {
- throw std::runtime_error("Failed to initialize GLFW.");
- }
-
-# if PLATFORM_APPLE
- // GL 3.2 + GLSL 150
- const char* glslVersion = "#version 150";
- glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
- glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2);
- glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); // 3.2+ only
- glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // Required on Mac
-# else
- // GL 3.0 + GLSL 130
- const char* glslVersion = "#version 130";
- glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
- glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0);
- //glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); // 3.2+ only
- //glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE); // 3.0+ only
-# endif
-
- mWindow = glfwCreateWindow(1280, 720, "Cplt", nullptr, nullptr);
- if (mWindow == nullptr) {
- throw std::runtime_error("Failed to create GLFW window.");
- }
- glfwMakeContextCurrent(mWindow);
- glfwSwapInterval(1); // Enable vsync
-
- if (gladLoadGLLoader((GLADloadproc)glfwGetProcAddress) == 0) {
- throw std::runtime_error("Failed to initialize OpenGL.");
- }
-
- IMGUI_CHECKVERSION();
- ImGui::CreateContext();
-
- ImGui_ImplGlfw_InitForOpenGL(mWindow, true);
- ImGui_ImplOpenGL3_Init(glslVersion);
-}
-
-OpenGL3Backend::~OpenGL3Backend() {
- ImGui_ImplOpenGL3_Shutdown();
- ImGui_ImplGlfw_Shutdown();
- ImGui::DestroyContext();
-
- glfwDestroyWindow(mWindow);
- glfwTerminate();
-}
-
-void OpenGL3Backend::BeginFrame() {
- glfwPollEvents();
-
- ImGui_ImplOpenGL3_NewFrame();
- ImGui_ImplGlfw_NewFrame();
- ImGui::NewFrame();
-}
-
-void OpenGL3Backend::EndFrame() {
- int displayWidth, displayHeight;
- glfwGetFramebufferSize(mWindow, &displayWidth, &displayHeight);
- glViewport(0, 0, displayWidth, displayHeight);
-
- const ImVec4 kClearColor = ImVec4(0.45f, 0.55f, 0.60f, 1.00f);
- glClearColor(kClearColor.x * kClearColor.w, kClearColor.y * kClearColor.w, kClearColor.z * kClearColor.w, kClearColor.w);
- glClear(GL_COLOR_BUFFER_BIT);
-
- ImGui::Render();
- ImGui_ImplOpenGL3_RenderDrawData(ImGui::GetDrawData());
-
- glfwSwapBuffers(mWindow);
-}
-
-#else // ^^ BUILD_CORE_WITH_OPENGL3_BACKEND | !BUILD_CORE_WITH_OPENGL3_BACKEND vv
-# include <stdexcept>
-
-OpenGL3Backend::OpenGL3Backend() {
- throw std::runtime_error("Backend opengl3 is not available in this build.\n");
-}
-
-OpenGL3Backend::~OpenGL3Backend() {
-}
-
-void OpenGL3Backend::BeginFrame() {
-}
-
-void OpenGL3Backend::EndFrame() {
-}
-
-#endif