2#include <zen/platform/OpenGL/ZEN_OpenGLContext.h>
5 OpenGLContext::OpenGLContext(SDL_Window *window) : m_window(window) {
6 ZEN_LOG_DEBUG(
"OpenGL context bound");
9 OpenGLContext::~OpenGLContext() { shutdown(); };
11 void OpenGLContext::init() {
12 m_glContext = SDL_GL_CreateContext(m_window);
13 ZEN_LOG_DEBUG(
"OpenGL context initialized");
16 void OpenGLContext::swapBuffers() { SDL_GL_SwapWindow(m_window); }
18 void OpenGLContext::shutdown() {
19 if (m_glContext !=
nullptr) {
20 SDL_GL_DestroyContext(m_glContext);
21 m_glContext =
nullptr;
22 ZEN_LOG_DEBUG(
"OpenGL context destroyed");
26 void *OpenGLContext::nativeContext()
const {
return m_glContext; };