xoreos  0.0.5
Classes | Enumerations | Variables
Graphics::Shader Namespace Reference

Classes

class  MaterialManager
 The material manager. More...
 
class  ShaderDescriptor
 
class  ShaderInstance
 
class  ShaderManager
 The shader manager. More...
 
class  ShaderMaterial
 
class  ShaderObject
 
class  ShaderProgram
 
class  ShaderRenderable
 
struct  ShaderSampler
 Shader sampler is used to bind a texture to a texture unit. More...
 
class  ShaderSurface
 
struct  ShaderUBO
 
class  SurfaceManager
 The surface manager. More...
 

Enumerations

enum  ShaderVariableType {
  SHADER_FLOAT = 0, SHADER_VEC2, SHADER_VEC3, SHADER_VEC4,
  SHADER_INT, SHADER_IVEC2, SHADER_IVEC3, SHADER_IVEC4,
  SHADER_UINT, SHADER_UVEC2, SHADER_UVEC3, SHADER_UVEC4,
  SHADER_BOOL, SHADER_BVEC2, SHADER_BVEC3, SHADER_BVEC4,
  SHADER_MAT2, SHADER_MAT2X2, SHADER_MAT2X3, SHADER_MAT2X4,
  SHADER_MAT3, SHADER_MAT3X2, SHADER_MAT3X3, SHADER_MAT3X4,
  SHADER_MAT4, SHADER_MAT4X2, SHADER_MAT4X3, SHADER_MAT4X4,
  SHADER_SAMPLER1D, SHADER_SAMPLER2D, SHADER_SAMPLER3D, SHADER_SAMPLERCUBE,
  SHADER_SAMPLER1DSHADOW, SHADER_SAMPLER2DSHADOW, SHADER_SAMPLER1DARRAY, SHADER_SAMPLER2DARRAY,
  SHADER_SAMPLER1DARRAYSHADOW, SHADER_SAMPLER2DARRAYSHADOW, SHADER_SAMPLERBUFFER, SHADER_ISAMPLER1D,
  SHADER_ISAMPLER2D, SHADER_ISAMPLER3D, SHADER_ISAMPLERCUBE, SHADER_ISAMPLER1DARRAY,
  SHADER_ISAMPLER2DARRAY, SHADER_USAMPLER1D, SHADER_USAMPLER2D, SHADER_USAMPLER3D,
  SHADER_USAMPLERCUBE, SHADER_USAMPLER1DARRAY, SHADER_USAMPLER2DARRAY, SHADER_UNIFORM_BUFFER,
  SHADER_INVALID
}
 Enum of all supported shader variable parsing and automatic binding. More...
 
enum  ShaderType { SHADER_VERTEX = 0, SHADER_FRAGMENT }
 
enum  ShaderVertexAttrib {
  VERTEX_LOCATION = 0, VERTEX_NORMAL = 1, VERTEX_COLOR = 2, VERTEX_TEXCOORD0 = 3,
  VERTEX_TEXCOORD1 = 4
}
 
enum  ShaderUBOIndex { UBO_VIEW_MATRICES = 0, UBO_BONE_MATRICES = 1, UBO_SCREEN_INFO = 2 }
 

Variables

static const char * shaderTypeChararray []
 

Enumeration Type Documentation

◆ ShaderType

Enumerator
SHADER_VERTEX 
SHADER_FRAGMENT 

Definition at line 141 of file shader.h.

◆ ShaderUBOIndex

Enumerator
UBO_VIEW_MATRICES 
UBO_BONE_MATRICES 
UBO_SCREEN_INFO 

Definition at line 154 of file shader.h.

◆ ShaderVariableType

Enum of all supported shader variable parsing and automatic binding.

In theory, appropriate gl enums could be used, but they're not as good for the switch statements used internally.

Enumerator
SHADER_FLOAT 
SHADER_VEC2 
SHADER_VEC3 
SHADER_VEC4 
SHADER_INT 
SHADER_IVEC2 
SHADER_IVEC3 
SHADER_IVEC4 
SHADER_UINT 
SHADER_UVEC2 
SHADER_UVEC3 
SHADER_UVEC4 
SHADER_BOOL 
SHADER_BVEC2 
SHADER_BVEC3 
SHADER_BVEC4 
SHADER_MAT2 
SHADER_MAT2X2 
SHADER_MAT2X3 
SHADER_MAT2X4 
SHADER_MAT3 
SHADER_MAT3X2 
SHADER_MAT3X3 
SHADER_MAT3X4 
SHADER_MAT4 
SHADER_MAT4X2 
SHADER_MAT4X3 
SHADER_MAT4X4 
SHADER_SAMPLER1D 
SHADER_SAMPLER2D 
SHADER_SAMPLER3D 
SHADER_SAMPLERCUBE 
SHADER_SAMPLER1DSHADOW 
SHADER_SAMPLER2DSHADOW 
SHADER_SAMPLER1DARRAY 
SHADER_SAMPLER2DARRAY 
SHADER_SAMPLER1DARRAYSHADOW 
SHADER_SAMPLER2DARRAYSHADOW 
SHADER_SAMPLERBUFFER 
SHADER_ISAMPLER1D 
SHADER_ISAMPLER2D 
SHADER_ISAMPLER3D 
SHADER_ISAMPLERCUBE 
SHADER_ISAMPLER1DARRAY 
SHADER_ISAMPLER2DARRAY 
SHADER_USAMPLER1D 
SHADER_USAMPLER2D 
SHADER_USAMPLER3D 
SHADER_USAMPLERCUBE 
SHADER_USAMPLER1DARRAY 
SHADER_USAMPLER2DARRAY 
SHADER_UNIFORM_BUFFER 
SHADER_INVALID 

Definition at line 85 of file shader.h.

◆ ShaderVertexAttrib

Enumerator
VERTEX_LOCATION 
VERTEX_NORMAL 
VERTEX_COLOR 
VERTEX_TEXCOORD0 
VERTEX_TEXCOORD1 

Definition at line 146 of file shader.h.

Variable Documentation

◆ shaderTypeChararray

const char* Graphics::Shader::shaderTypeChararray[]
static

Definition at line 646 of file shader.cpp.

Referenced by Graphics::Shader::ShaderManager::shaderstringToEnum().