|
|
| VulkanShader (const std::string &vertexSrc, const std::string &fragmentSrc, std::shared_ptr< UniformBufferObject > ubo) |
| |
| virtual void | Bind () const override |
| | Installs a shader (vertex + fragment) and uniform program object as part of current rendering state.
|
| |
| virtual void | UnBind () const override |
| | Undo the binding of shader program.
|
| |
|
std::vector< uint32_t > | Compile (const std::string &src, const std::string &source, EShLanguage lang) |
| |
|
void | UploadUniformMat4 (const std::string &name, const glm::mat4 &matrix) |
| |
|
const std::vector< uint32_t > & | GetVertSpirV () const |
| |
|
const std::vector< uint32_t > & | GetFragSpirV () const |
| |
|
std::shared_ptr< VulkanUniformBuffer > | GetUniformBufferObject () const |
| |
| | Shader (std::shared_ptr< UniformBufferObject > ubo) |
| | A constructor.
|
| |
| virtual | ~Shader ()=default |
| | Destructor.
|
| |
| virtual void | Bind (const std::string &texShaderNames) const |
| | Binding using name of texture.
|
| |
| std::shared_ptr< UniformBufferObject > | GetUniformBufferObject () const |
| | Getter for uniform buffer object.
|
| |
| const std::string & | GetShaderName () const |
| | Getter for shader name.
|
| |
|
| static Shader * | Create (const std::string &vertexSrc, const std::string &fragmentSrc) |
| | Instantiating shader object according to the programmer chosen API.
|
| |
| static Shader * | Create (const std::string &vertexSrcFile, const std::string &fragmentSrcFile, std::shared_ptr< UniformBufferObject > ubo, const std::string &shaderName="NoNamedShader") |
| | For instantiating shader object accodring to programer's chosen API.
|
| |
|
std::string | m_ShaderName |
| |
◆ Bind()
| void Karma::VulkanShader::Bind |
( |
| ) |
const |
|
overridevirtual |
Installs a shader (vertex + fragment) and uniform program object as part of current rendering state.
- Todo
- For OpenGL only. Vulkan Bind() is empty and may need abstract thinking
- Since
- Karma 1.0.0
Reimplemented from Karma::Shader.
◆ UnBind()
| void Karma::VulkanShader::UnBind |
( |
| ) |
const |
|
overridevirtual |
Undo the binding of shader program.
- Todo
- Only OpenGL uses this, that too, for shader and not uniform. May need pondering over.
- Since
- Karma 1.0.0
Reimplemented from Karma::Shader.
The documentation for this class was generated from the following files:
- Karma/src/Platform/Vulkan/VulkanShader.h
- Karma/src/Platform/Vulkan/VulkanShader.cpp