From 29dd5d12f59d04aa701ba25a62dc72d8d55b02b2 Mon Sep 17 00:00:00 2001 From: josh Date: Tue, 9 Apr 2024 16:41:32 -0400 Subject: [PATCH] Migrate to latest J3ML Release and latest ReWindow Release --- CMakeLists.txt | 6 +----- include/LearnOpenGL/Shader.h | 13 +++++++++++++ src/demos/SkeletalAnim/CMakeLists.txt | 2 +- 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 9d6f908..c45629f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -82,11 +82,7 @@ file(GLOB_RECURSE SOURCES "src/LearnOpenGL/*.c" "src/LearnOpenGL/*.cpp") # TODO: Wrangle target_include_directories include_directories(${PROJECT_SOURCE_DIR}/include) -add_library(LearnOpenGL SHARED ${SOURCES} - src/LearnOpenGL/IndexBuffer.cpp - include/LearnOpenGL/ComputeShader.h - include/LearnOpenGL/Grid.h - src/LearnOpenGL/Grid.cpp) +add_library(LearnOpenGL SHARED ${SOURCES}) target_include_directories(LearnOpenGL PUBLIC ${J3ML_SOURCE_DIR}/include) target_include_directories(LearnOpenGL PUBLIC ${glad_SOURCE_DIR}/include) diff --git a/include/LearnOpenGL/Shader.h b/include/LearnOpenGL/Shader.h index 8298eae..29c7295 100644 --- a/include/LearnOpenGL/Shader.h +++ b/include/LearnOpenGL/Shader.h @@ -27,12 +27,25 @@ namespace LearnOpenGL { class Shader { + public: + bool loaded; public: unsigned int ID{}; Shader(); Shader(std::filesystem::path vertexProgramPath, std::filesystem::path fragmentProgramPath); Shader(std::string vertexProgramSrc, std::string fragmentProgramSrc); + ~Shader() + { + if (loaded) + unload(); + } + + void unload() + { + // TODO: Recycle OpenGL shader handle + loaded = false; + } void use(); void reload(); diff --git a/src/demos/SkeletalAnim/CMakeLists.txt b/src/demos/SkeletalAnim/CMakeLists.txt index 8155f7d..e11fe61 100644 --- a/src/demos/SkeletalAnim/CMakeLists.txt +++ b/src/demos/SkeletalAnim/CMakeLists.txt @@ -19,7 +19,7 @@ set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_CURRENT_SOURCE_DIR}") # One Class Header, Implemented for multiple platforms CPMAddPackage( NAME ReWindow - URL https://git.redacted.cc/Redacted/ReWindow/archive/vA0.2.22.zip + URL https://git.redacted.cc/Redacted/ReWindow/archive/vA0.2.23.zip ) add_executable(SkeletalAnimDemo main.cpp)