13 Shader(std::shared_ptr<UniformBufferObject> ubo) : m_UniformBufferObject(ubo)
17 virtual void Bind()
const {}
18 virtual void Bind(
const std::string& texShaderNames)
const {}
19 virtual void UnBind()
const {}
21 virtual void GenerateUniformBufferObject() {}
22 virtual void BindUniformBufferObject() {}
23 std::shared_ptr<UniformBufferObject> GetUniformBufferObject()
const {
return m_UniformBufferObject; }
25 static Shader* Create(
const std::string& vertexSrc,
const std::string& fragmentSrc);
26 static Shader* Create(
const std::string& vertexSrcFile,
const std::string& fragmentSrcFile, std::shared_ptr<UniformBufferObject> ubo,
27 bool bIsFile,
const std::string& shaderName =
"NoNamedShader");
30 const std::string& GetShaderName()
const {
return m_ShaderName; }
33 std::shared_ptr<UniformBufferObject> m_UniformBufferObject;
36 std::string m_ShaderName;