#pragma once #include "Graphics/Shader.h" #include "Base/Base.h" #include namespace Light { class glShader : public Shader { private: unsigned int m_ShaderID; public: glShader(const std::vector& vertexBlob, const std::vector& pixelBlob, const std::string& vertexFileName, const std::string& pixelFileName); ~glShader(); void Bind() override; void UnBind() override; private: ShaderConductor::Compiler::ResultDesc CompileHLSL(std::vector blob, std::string fileName, Shader::Stage stage); unsigned int CompileShader(const std::string& source, Shader::Stage stage); }; }