CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::ShaderCompiler::ShaderOutput Struct Reference

Shader output descriptor structure. More...

#include <CeresEngine/Material/ShaderCompiler/ShaderCompiler.hpp>

Public Attributes

String filename
 Specifies the filename of the output shader code.
 
std::ostream * sourceCode = nullptr
 Specifies the output source code stream.
 
OutputShaderVersion shaderVersion = OutputShaderVersion::GLSL
 Specifies the output shader version.
 
SmallVector< VertexSemantic, 10 > vertexSemantics
 Optional list of vertex semantic layouts, to bind a vertex attribute (semantic name) to a location index (only used when 'explicitBinding' is true).
 
UniformPacking uniformPacking
 Optional parameters to pack all global uniforms into a single output uniform buffer.
 
Options options
 Additional options to configure the code generation.
 
Formatting formatting
 Output code formatting descriptor.
 
NameMangling nameMangling
 Specifies the options for name mangling.
 

Detailed Description

Shader output descriptor structure.

See also
compileShader

Member Data Documentation

◆ filename

String CeresEngine::ShaderCompiler::ShaderOutput::filename

Specifies the filename of the output shader code.

This is an optional attribute, and only a hint to the compiler.

◆ formatting

Formatting CeresEngine::ShaderCompiler::ShaderOutput::formatting

Output code formatting descriptor.

◆ nameMangling

NameMangling CeresEngine::ShaderCompiler::ShaderOutput::nameMangling

Specifies the options for name mangling.

◆ options

Options CeresEngine::ShaderCompiler::ShaderOutput::options

Additional options to configure the code generation.

◆ shaderVersion

OutputShaderVersion CeresEngine::ShaderCompiler::ShaderOutput::shaderVersion = OutputShaderVersion::GLSL

Specifies the output shader version.

By default, OutputShaderVersion::GLSL (to auto-detect minimum required version).

◆ sourceCode

std::ostream* CeresEngine::ShaderCompiler::ShaderOutput::sourceCode = nullptr

Specifies the output source code stream.

This will contain the output code. This must not be null when passed to the "compileShader" function!

◆ uniformPacking

UniformPacking CeresEngine::ShaderCompiler::ShaderOutput::uniformPacking

Optional parameters to pack all global uniforms into a single output uniform buffer.

◆ vertexSemantics

SmallVector<VertexSemantic, 10> CeresEngine::ShaderCompiler::ShaderOutput::vertexSemantics

Optional list of vertex semantic layouts, to bind a vertex attribute (semantic name) to a location index (only used when 'explicitBinding' is true).


The documentation for this struct was generated from the following file: