|
SPARK
0.1.0
A general purpose game engine written in C++.
|
Vulkan implementation of a ShaderProgram. More...
#include <VulkanShaderProgram.h>
Classes | |
| struct | Impl |
Public Member Functions | |
| VulkanShaderProgram (const VulkanDevice &device, std::vector< std::unique_ptr< VulkanShaderModule > > &&modules) | |
| Initializes a new Vulkan shader program with the given modules. | |
| VulkanShaderProgram (const VulkanShaderProgram &other)=delete | |
| VulkanShaderProgram (VulkanShaderProgram &&other) noexcept=delete | |
| VulkanShaderProgram & | operator= (const VulkanShaderProgram &other)=delete |
| VulkanShaderProgram & | operator= (VulkanShaderProgram &&other) noexcept=delete |
| std::vector< const VulkanShaderModule * > | shaders () const noexcept override |
| Gets all shaders contained in this program. | |
| std::shared_ptr< IPipelineLayout > | reflectPipelineLayout () const override |
| Uses shader reflexion to extract the pipeline layout from this shader program. | |
Public Member Functions inherited from spark::render::IShaderProgram | |
| std::vector< const IShaderModule * > | shaders () const noexcept |
| Gets all shaders contained in this program. | |
Additional Inherited Members | |
Public Types inherited from spark::render::ShaderProgram< VulkanShaderModule > | |
| using | shader_module_type |
Vulkan implementation of a ShaderProgram.
|
explicit |
Initializes a new Vulkan shader program with the given modules.
| device | The parent device of this shader program. |
| modules | The modules used by this shader program. |
|
nodiscardoverridevirtual |
Uses shader reflexion to extract the pipeline layout from this shader program.
Shader reflection is not able to restore:
Implements spark::render::IShaderProgram.
|
nodiscardoverridevirtualnoexcept |
Gets all shaders contained in this program.
Implements spark::render::ShaderProgram< VulkanShaderModule >.