#pragma once #include #include "ShaderSources.hpp" namespace MC { class Shader { public: uint32_t get() const { return m_shader; } static Shader create_vertex() { return {GL_VERTEX_SHADER, ShaderSources::vertex_shader}; } static Shader create_fragment() { return {GL_FRAGMENT_SHADER, ShaderSources::fragment_shader}; } private: Shader(uint32_t type, const char* source); uint32_t m_shader; }; }