ShaderProgram creation parameters for initialized from shader source code strings. More...
#include <kanzi/core.ui/platform/graphics_backend/gl/shader_create_info.hpp>
Public Member Functions | |
CreateInfoShaderSources (const char *vertexShaderSourceCode, const char *fragmentShaderSourceCode) | |
Construct a create info structure for shader program creation from vertex and fragment shader source code. More... | |
Public Member Functions inherited from kanzi::ShaderProgram::CreateInfo | |
void | addUniform (string_view name, PropertyDataType dataType, unsigned int elementCount, optional< AbstractPropertyType > propertyType, UniformBindingType bindingType, optional< FixedUniform > fixedOperation, FixedUniformFunction func, UniformTransformation transform) |
Adds an uniform to shader. More... | |
void | addUniform (AbstractPropertyType propertyType, PropertyDataType dataType, unsigned int elementCount, ShaderProgram::UniformTransformation transformation) |
Adds a property type uniform to shader. More... | |
void | addUniform (AbstractPropertyType propertyType, PropertyDataType dataType, unsigned int elementCount) |
Adds a property type uniform to shader. More... | |
void | addUniform (AbstractPropertyType propertyType, ShaderProgram::UniformTransformation transformation) |
Adds a property type uniform to shader. More... | |
void | addUniform (AbstractPropertyType propertyType) |
Adds a property type uniform to shader. More... | |
CreateInfo () | |
Constructs empty create info structure for shader program creation. More... | |
Status | validate (const Renderer &renderer) const |
Perform validation of shader creation parameters. More... | |
Additional Inherited Members | |
Public Types inherited from kanzi::ShaderProgram::CreateInfo | |
using | BindingContainer = ShaderProgram::BindingContainer |
Binding container type. More... | |
using | BindingInfo = ShaderProgram::BindingInfo |
Binding info. More... | |
enum | Status { StatusUnsupportedFormat, StatusCompileError, StatusLinkError, StatusInvalidAttributeLocation, StatusValid } |
Status tells if shader creation parameters can be used to create a shader. More... | |
Public Attributes inherited from kanzi::ShaderProgram::CreateInfo | |
BindingContainer | bindings |
Bindings. More... | |
bool | blendingControl |
Indicates whether ShaderProgram created from this createInfo should be able to change blending mode. More... | |
string | combinedShaderBinaryData |
Combined shader binary data. More... | |
unsigned int | combinedShaderBinaryFormat |
Format for combined shader binary. More... | |
string | fragmentShaderSource |
Fragment shader source code. More... | |
string | programBinaryData |
Program binary data. More... | |
unsigned int | programBinaryFormat |
Format for program binary. More... | |
unsigned int | separateShaderBinaryFormat |
Format for separate shader binaries. More... | |
string | separateShaderBinaryFragmentData |
Fragment shader binary data when using separate shader binaries. More... | |
string | separateShaderBinaryVertexData |
Vertex shader binary data when using separate shader binaries. More... | |
UniformContainer | uniforms |
Uniforms. More... | |
ShaderAttributeCollection | vertexFormat |
Shader vertex attributes. More... | |
string | vertexShaderSource |
Vertex shader source code. More... | |
ShaderProgram creation parameters for initialized from shader source code strings.
|
explicit |
Construct a create info structure for shader program creation from vertex and fragment shader source code.
vertexShaderSourceCode | Source code for vertex shader. |
fragmentShaderSourceCode | Source code for fragment shader. |