feat: add OpenGL abstraction layer with RAII resources

- Replace window class with cbt::opengl::context
- Add buffer resource (VBO, EBO, UBO, SSBO) with move semantics
- Add texture resource with format/type enums and filtering
- Add descriptor_set for Vulkan-style resource binding
- All resources use RAII with proper cleanup
This commit is contained in:
2026-05-05 21:58:34 +02:00
parent f18e5e4adc
commit 90d013695d
36 changed files with 2139 additions and 55 deletions
+9 -2
View File
@@ -89,8 +89,15 @@ cuber/
CMakeLists.txt # Build configuration
cuber.cpp # Entry point
cbt/ # Project namespace
window.hpp # Window RAII wrapper
window.cpp # Window implementation
opengl/ # OpenGL abstraction layer
context.hpp # OpenGL context RAII wrapper
context.cpp # Context implementation
buffer.hpp # Buffer resource (VBO, EBO, UBO, SSBO)
buffer.cpp # Buffer implementation
texture.hpp # Texture resource
texture.cpp # Texture implementation
descriptor.hpp # Descriptor set (Vulkan-style binding)
descriptor.cpp # Descriptor implementation
deps/ # Custom Find*.cmake scripts
Findfmt.cmake # fmt library
```