|
enum | ShaderLanguage : uint32_t { SL_INVALID = 0u
, SL_GLSL
, SL_CG
} |
| Definition of individual shader languages. More...
|
|
enum | ShaderType : uint32_t {
ST_INVALID = 0u
, ST_COMPUTE
, ST_FRAGMENT
, ST_GEOMETRY
,
ST_TESSELLATION_CONTROL
, ST_TESSELLATION_EVALUATION
, ST_VERTEX
, ST_UNIFIED
} |
| Definition of individual shader types. More...
|
|
enum | ParameterType : uint32_t {
TYPE_INVALID = 0u
, TYPE_UNSUPPORTED
, TYPE_BOOL
, TYPE_FLOAT
,
TYPE_INTEGER
, TYPE_MATRIX3
, TYPE_MATRIX4
, TYPE_SAMPLE1
,
TYPE_SAMPLE2
, TYPE_SAMPLE3
, TYPE_STRUCT
, TYPE_VECTOR2
,
TYPE_VECTOR3
, TYPE_VECTOR4
} |
| Definition of a parameter types. More...
|
|
typedef std::pair< std::string, ShaderType > | FilenamePair |
| Definition of a pair combining a filename with a shader type with. More...
|
|
typedef std::vector< FilenamePair > | FilenamePairs |
| Definition of a vector holding pairs combining filenames with shader types. More...
|
|
typedef std::pair< std::vector< const char * >, ShaderType > | CodePair |
| Definition of a pair combining shader code parts with a shader type with. More...
|
|
typedef std::vector< CodePair > | CodePairs |
| Definition of a vector holding pairs combining shader codes with shader types. More...
|
|
typedef unsigned int | SamplerIndex |
| Definition of a sampler index. More...
|
|
enum | ObjectType {
TYPE_UNKNOWN
, TYPE_ABSOLUTE_TRANSFORM
, TYPE_ATTRIBUTE
, TYPE_ATTRIBUTE_SET
,
TYPE_BACKGROUND
, TYPE_BILLBOARD
, TYPE_BITMAP_FRAMEBUFFER
, TYPE_BLEND_ATTRIBUTE
,
TYPE_BOX
, TYPE_CONE
, TYPE_CYLINDER
, TYPE_DEPTH_ATTRIBUTE
,
TYPE_DIRECTIONAL_LIGHT
, TYPE_FRAMEBUFFER
, TYPE_FRAME_TEXTURE_2D
, TYPE_GEOMETRY
,
TYPE_GROUP
, TYPE_INDEPENDENT_PRIMITIVE
, TYPE_LIGHT_SOURCE
, TYPE_LINES
,
TYPE_LINE_STRIPS
, TYPE_LOD
, TYPE_MATERIAL
, TYPE_NODE
,
TYPE_OBJECT
, TYPE_PARALLEL_VIEW
, TYPE_PERSPECTIVE_VIEW
, TYPE_PHANTOM_ATTRIBUTE
,
TYPE_POINT_LIGHT
, TYPE_POINTS
, TYPE_PRIMITIVE
, TYPE_PRIMITIVE_ATTRIBUTE
,
TYPE_QUAD_STRIPS
, TYPE_QUADS
, TYPE_RENDERABLE
, TYPE_SCENE
,
TYPE_SHADER_PROGRAM
, TYPE_SHAPE
, TYPE_SKY_BACKGROUND
, TYPE_SPHERE
,
TYPE_SPOT_LIGHT
, TYPE_STEREO_ATTRIBUTE
, TYPE_STEREO_VIEW
, TYPE_STRIP_PRIMITIVE
,
TYPE_SWITCH
, TYPE_TEXT
, TYPE_TEXTURE
, TYPE_TEXTURE_2D
,
TYPE_MEDIA_TEXTURE_2D
, TYPE_TEXTURE_FRAMEBUFFER
, TYPE_TEXTURES
, TYPE_TRANSFORM
,
TYPE_TRIANGLE_FANS
, TYPE_TRIANGLES
, TYPE_TRIANGLE_STRIPS
, TYPE_UNDISTORTED_BACKGROUND
,
TYPE_VERTEX_SET
, TYPE_VIEW
, TYPE_WINDOW_FRAMEBUFFER
} |
| Definition of different object type. More...
|
|
typedef std::unordered_map< ObjectId, unsigned int > | ObjectIdMap |
| Definition of a map holding object ids to reference counters. More...
|
|
|
virtual bool | setShader (const ShaderLanguage shaderLanguage, const FilenamePairs &filenamePairs, std::string &errorMessage) |
| Sets the shader code. More...
|
|
virtual bool | setShader (const ShaderLanguage shaderLanguage, const std::string &vertexShaderCode, const std::string &fragmentShaderCode, std::string &errorMessage) |
| Sets the shader code. More...
|
|
virtual bool | setShader (const ShaderLanguage shaderLanguage, const std::vector< const char * > &vertexShaderCode, const std::vector< const char * > &fragmentShaderCode, std::string &errorMessage) |
| Sets the shader code. More...
|
|
virtual bool | setShader (const ShaderLanguage shaderLanguage, const CodePairs &codePairs, std::string &errorMessage) |
| Sets the shader code. More...
|
|
virtual bool | existParameter (const std::string &name) const |
| Returns whether this shader program has a specific parameter. More...
|
|
virtual ParameterType | parameterType (const std::string &name) const |
| Returns the type of a specific parameter. More...
|
|
virtual unsigned int | samplerNumber () const |
| Returns the number of sampler parameters. More...
|
|
virtual SamplerIndex | samplerIndex (const TextureRef &sampler) const |
| Returns the index of a registered texture sample object. More...
|
|
virtual unsigned int | parameterElements (const std::string &name) const |
| Returns the number of elements of a specific parameter. More...
|
|
virtual bool | setSampler (const SamplerIndex index, const TextureRef &texture) |
| Sets the texture of a specified sampler. More...
|
|
virtual bool | setParameter (const std::string &name, const double value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const float value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const float *value, const unsigned int elements) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const int value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const unsigned int value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const HomogenousMatrix4 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const SquareMatrix3 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const SquareMatrix4 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const Vector2 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const Vector3 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const Vector4 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const HomogenousMatrices4 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | setParameter (const std::string &name, const SquareMatrices3 &value) |
| Sets a parameter by a given parameter name. More...
|
|
virtual bool | isCompiled () const |
| Returns whether this program holds a valid and successfully compiled and linked shader code. More...
|
|
ObjectType | type () const override |
| Returns the type of this object. More...
|
|
ObjectId | id () const |
| Returns the unique object id of this object. More...
|
|
const std::string & | name () const |
| Returns the name of this object. More...
|
|
virtual void | setName (const std::string &name) |
| Sets or changes the name of this object. More...
|
|
virtual const std::string & | engineName () const =0 |
| Returns the name of the owner engine. More...
|
|
ObjectRefs | parentObjects () const |
| Returns all parent objects. More...
|
|
ObjectRefSet | parentNodes () const |
| Returns all parent nodes. More...
|
|
virtual std::string | descriptiveInformation () const |
| Returns descriptive information about the object as string. More...
|
|
This class implements a shader program attribute.