3#include "../Interface/ShaderProgram.hpp"
6#include <initializer_list>
22 ShaderSource::ReflectionInfo::PushConstant::Type
type;
41 unsigned int GetID() const;
59 void AddPushConstants(const ShaderSource::ReflectionInfo& reflectionInfo);
64 bool writesToStorageBuffer = false;
OpenGL implementation of ShaderProgram.
Definition: OpenGLShaderProgram.hpp:14
OpenGLShaderProgram(std::initializer_list< const Shader * > shaders)
Create new OpenGL shader program.
Definition: OpenGLShaderProgram.cpp:9
unsigned int GetID() const
Get shader program ID.
Definition: OpenGLShaderProgram.cpp:51
const std::vector< PushConstant > & GetPushConstants() const
Get information about the push constants in this shader program.
Definition: OpenGLShaderProgram.cpp:55
~OpenGLShaderProgram() final
Destructor.
Definition: OpenGLShaderProgram.cpp:47
bool WritesToStorageBuffer() const
Get whether the shader program writes to a storage buffer.
Definition: OpenGLShaderProgram.cpp:59
A shader program.
Definition: ShaderProgram.hpp:11
Definition: Editor.hpp:18
Information about a push constant.
Definition: OpenGLShaderProgram.hpp:17
GLint uniformLocation
The uniform location to set.
Definition: OpenGLShaderProgram.hpp:19
ShaderSource::ReflectionInfo::PushConstant::Type type
The data type of the push constant.
Definition: OpenGLShaderProgram.hpp:22
uint32_t offset
The offset into the push constant structure.
Definition: OpenGLShaderProgram.hpp:25