From ab42e5489f44ac2be567036e7a76e49ca7438184 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20GUEZO?= Date: Wed, 7 Jan 2026 13:47:04 +0100 Subject: [PATCH] chore(core.hpp): add comments --- inc/core/core.hpp | 38 ++++++++++++++++++++++++++++++++++---- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/inc/core/core.hpp b/inc/core/core.hpp index b9f6aa3..ec128a4 100644 --- a/inc/core/core.hpp +++ b/inc/core/core.hpp @@ -1,24 +1,54 @@ #ifndef CORE_HPP #define CORE_HPP +// I chose GLAD to dynamically load OpenGL functions at runtime. +// Since OpenGL implementations differ between GPUs and OS, GLAD +// ensures that my code always calls the correct function pointers +// for the current platform and driver. It’s modern, header-only +// unlike GLEW which is much heavier than GLAD, and lets me +// select exactly which OpenGL version and extensions I need. #include "glad/glad.h" +// I chose GLFW for its simplicity and cross-platform support. +// It handles window creation, OpenGL context management, and input +// (keyboard/mouse), It is allowing me to focus on graphics +// programming rather than writing platform specific code. GLFW is +// lightweight and works consistently on Windows, macOS, and Linux. #include "GLFW/glfw3.h" +// I chose GLM because I didn’t want to implement all vector and matrix +// math from scratch. I already experimented with a custom SIMD-based +// math library, but GLM is more convenient, header-only, and highly +// optimized for graphics, letting me focus on rendering instead of +// low-level math. #include "glm/glm.hpp" +// I chose stb_image for image loading to easily handle textures. +// It’s header-only, simple to integrate, and supports common formats +// like PNG and JPEG without adding heavy dependencies. #include "stb_image.h" -#include "imgui.h" +// used **ImGui** as an optional GUI to debug and tweak rendering parameters in +// real time. It’s lightweight, immediate-mode, and lets me inspect and modify +// values without stopping the program. #include "backends/imgui_impl_glfw.h" #include "backends/imgui_impl_opengl3.h" +#include "imgui.h" -#include "logger.hpp" +// +// +// +// +// +// +// +// #include "camera.hpp" -#include "vao.hpp" -#include "vbo.hpp" #include "ebo.hpp" +#include "logger.hpp" #include "shader.hpp" #include "time.hpp" +#include "vao.hpp" +#include "vbo.hpp" #endif \ No newline at end of file