RAMSES Documentation  27.0.130
Information for RAMSES users and developers
Public Member Functions | Public Attributes | Protected Member Functions | Friends | List of all members
ramses::Appearance Class Reference

The Appearance describes how an object should look like. This includes GLSL uniform values, and GPU states such as blending, buffer configurations, masks etc. The API to set uniform values is aligned to the glUniformX API of OpenGL. Beware that boolean values are reported and handled as int (0 is false, anything else is true) - similar to OpenGL conventions. More...

#include <Appearance.h>

Inheritance diagram for ramses::Appearance:
[legend]
Collaboration diagram for ramses::Appearance:
[legend]

Public Member Functions

status_t setBlendingFactors (EBlendFactor srcColor, EBlendFactor destColor, EBlendFactor srcAlpha, EBlendFactor destAlpha)
 Sets blending factors for source/destination color/alpha. Blending operations need to be set as well in order to enable blending. More...
 
status_t getBlendingFactors (EBlendFactor &srcColor, EBlendFactor &destColor, EBlendFactor &srcAlpha, EBlendFactor &destAlpha) const
 Gets blending factors for source/destination color/alpha. More...
 
status_t setBlendingOperations (EBlendOperation operationColor, EBlendOperation operationAlpha)
 Sets blending operation for color and alpha. Blending factors need to be set as well in order to enable blending. More...
 
status_t getBlendingOperations (EBlendOperation &operationColor, EBlendOperation &operationAlpha) const
 Gets blending operation for color and alpha. More...
 
status_t setBlendingColor (float red, float green, float blue, float alpha)
 Sets blending color that can be used as blending color constant for some blending factors. The default value is (0,0,0,0) More...
 
status_t getBlendingColor (float &red, float &green, float &blue, float &alpha) const
 Gets blending color set via setBlendingColor. More...
 
status_t setDepthWrite (EDepthWrite mode)
 Enables or disables writing to depth buffer. More...
 
status_t getDepthWriteMode (EDepthWrite &mode) const
 Gets the current state of writing to depth buffer. More...
 
status_t setDepthFunction (EDepthFunc func)
 Sets depth comparison function. Depth writing has to be enabled in order for this to have any effect. Default depth comparison function is less or equal. More...
 
status_t getDepthFunction (EDepthFunc &func) const
 Gets depth comparison function. More...
 
status_t setScissorTest (EScissorTest state, int16_t x, int16_t y, uint16_t width, uint16_t height)
 Enables or disables scissor test and sets region for scissor test. More...
 
status_t getScissorTestState (EScissorTest &state) const
 Gets the current state of scissor test. More...
 
status_t getScissorRegion (int16_t &x, int16_t &y, uint16_t &width, uint16_t &height) const
 Gets region for scissor test. More...
 
status_t setStencilFunction (EStencilFunc func, uint8_t ref, uint8_t mask)
 Sets stencil function, reference and mask value for stencil testing. Stencil is disabled by default. More...
 
status_t getStencilFunction (EStencilFunc &func, uint8_t &ref, uint8_t &mask) const
 Gets stencil function, reference and mask value. More...
 
status_t setStencilOperation (EStencilOperation sfail, EStencilOperation dpfail, EStencilOperation dppass)
 Sets stencil operations for stencil testing. Default stencil operation values are keep. More...
 
status_t getStencilOperation (EStencilOperation &sfail, EStencilOperation &dpfail, EStencilOperation &dppass) const
 Gets stencil operations. More...
 
status_t setCullingMode (ECullMode mode)
 Sets the culling mode indicating which side of mesh will be removed before rasterization. Default culling mode is BackFaceCulling. More...
 
status_t setDrawMode (EDrawMode mode)
 Sets the draw mode indicating by which primitive the mesh will be rendered Default draw mode is Triangles. More...
 
status_t getCullingMode (ECullMode &mode) const
 Gets the culling mode indicating which side of mesh will be removed before rasterization. More...
 
status_t getDrawMode (EDrawMode &mode) const
 Gets the draw mode indicating by which primitive the mesh will be rendered. More...
 
status_t setColorWriteMask (bool writeRed, bool writeGreen, bool writeBlue, bool writeAlpha)
 Sets color write mask. If needed certain color channels can stay untouched using the color write mask. By default writing to all color channels is enabled. More...
 
status_t getColorWriteMask (bool &writeRed, bool &writeGreen, bool &writeBlue, bool &writeAlpha) const
 Gets color write mask. More...
 
status_t setInputValueInt32 (const UniformInput &input, int32_t i)
 Sets value of the input. More...
 
status_t setInputValueInt32 (const UniformInput &input, uint32_t elementCount, const int32_t *values)
 Sets values of the input elements. More...
 
status_t getInputValueInt32 (const UniformInput &input, int32_t &i) const
 Gets the value of the input. More...
 
status_t getInputValueInt32 (const UniformInput &input, uint32_t elementCount, int32_t *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueFloat (const UniformInput &input, float value)
 Sets value of the input. More...
 
status_t setInputValueFloat (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueFloat (const UniformInput &input, float &valueOut) const
 Gets the value of the input. More...
 
status_t getInputValueFloat (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector2i (const UniformInput &input, int32_t x, int32_t y)
 Sets value of the input. More...
 
status_t setInputValueVector2i (const UniformInput &input, uint32_t elementCount, const int32_t *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector2i (const UniformInput &input, int32_t &x, int32_t &y) const
 Gets the value of the input. More...
 
status_t getInputValueVector2i (const UniformInput &input, uint32_t elementCount, int32_t *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector3i (const UniformInput &input, int32_t x, int32_t y, int32_t z)
 Sets value of the input. More...
 
status_t setInputValueVector3i (const UniformInput &input, uint32_t elementCount, const int32_t *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector3i (const UniformInput &input, int32_t &x, int32_t &y, int32_t &z) const
 Gets the value of the input. More...
 
status_t getInputValueVector3i (const UniformInput &input, uint32_t elementCount, int32_t *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector4i (const UniformInput &input, int32_t x, int32_t y, int32_t z, int32_t w)
 Sets value of the input. More...
 
status_t setInputValueVector4i (const UniformInput &input, uint32_t elementCount, const int32_t *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector4i (const UniformInput &input, int32_t &x, int32_t &y, int32_t &z, int32_t &w) const
 Gets the value of the input. More...
 
status_t getInputValueVector4i (const UniformInput &input, uint32_t elementCount, int32_t *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector2f (const UniformInput &input, float x, float y)
 Sets value of the input. More...
 
status_t setInputValueVector2f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector2f (const UniformInput &input, float &x, float &y) const
 Gets the value of the input. More...
 
status_t getInputValueVector2f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector3f (const UniformInput &input, float x, float y, float z)
 Sets value of the input. More...
 
status_t setInputValueVector3f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector3f (const UniformInput &input, float &x, float &y, float &z) const
 Gets the value of the input. More...
 
status_t getInputValueVector3f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueVector4f (const UniformInput &input, float x, float y, float z, float w)
 Sets value of the input. More...
 
status_t setInputValueVector4f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueVector4f (const UniformInput &input, float &x, float &y, float &z, float &w) const
 Gets the value of the input. More...
 
status_t getInputValueVector4f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueMatrix22f (const UniformInput &input, const float values[4])
 Sets value of the input. More...
 
status_t setInputValueMatrix22f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueMatrix22f (const UniformInput &input, float valueOut[4]) const
 Gets the value of the input. More...
 
status_t getInputValueMatrix22f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueMatrix33f (const UniformInput &input, const float values[9])
 Sets value of the input. More...
 
status_t setInputValueMatrix33f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueMatrix33f (const UniformInput &input, float valueOut[9]) const
 Gets the value of the input. More...
 
status_t getInputValueMatrix33f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputValueMatrix44f (const UniformInput &input, const float values[16])
 Sets value of the input. More...
 
status_t setInputValueMatrix44f (const UniformInput &input, uint32_t elementCount, const float *values)
 Sets values of the input elements. More...
 
status_t getInputValueMatrix44f (const UniformInput &input, float valueOut[16]) const
 Gets the value of the input. More...
 
status_t getInputValueMatrix44f (const UniformInput &input, uint32_t elementCount, float *valuesOut) const
 Gets current values of the input. More...
 
status_t setInputTexture (const UniformInput &input, const TextureSampler &textureSampler)
 Sets texture sampler to the input. More...
 
status_t setInputTexture (const UniformInput &input, const TextureSamplerMS &textureSampler)
 Sets multisampled texture sampler to the input. More...
 
status_t setInputTexture (const UniformInput &input, const TextureSamplerExternal &textureSampler)
 Sets external texture sampler to the input. More...
 
status_t getInputTexture (const UniformInput &input, const TextureSampler *&textureSampler) const
 Gets texture sampler currently set to the input. More...
 
status_t getInputTextureMS (const UniformInput &input, const TextureSamplerMS *&textureSampler) const
 Gets texture sampler currently set to the input. More...
 
status_t getInputTextureExternal (const UniformInput &input, const TextureSamplerExternal *&textureSampler) const
 Gets texture sampler currently set to the input. More...
 
status_t bindInput (const UniformInput &input, const DataObject &dataObject)
 Bind a DataObject to the Appearance's uniform input. The value from the DataObject will be used and any change made on the DataObject will be reflected in the Appearance. One DataObject can be bound to multiple Appearances. The data type of the DataObject must match the uniform input data type otherwise the call will fail and report error. DataObject cannot be bound to an input with semantics, texture input or array input. Once a DataObject is bound to an input the value cannot be set or get using set/getInputValue*() anymore. Binding a DataObject to an already bound input will unbind the old one and bind the new one. More...
 
status_t unbindInput (const UniformInput &input)
 Unbind a previously bound DataObject from the Appearance's uniform input. Any previously set value that was set before binding will now be used. Appropriate set/getInputValue*() method must be used to set or get the value or another DataObject can be bound. More...
 
bool isInputBound (const UniformInput &input) const
 Check whether a uniform input has any DataObject bound to it. More...
 
const DataObjectgetDataObjectBoundToInput (const UniformInput &input) const
 Gets the data object bound to a uniform input. More...
 
const EffectgetEffect () const
 Gets the effect used to create this appearance. More...
 
- Public Member Functions inherited from ramses::SceneObject
sceneObjectId_t getSceneObjectId () const
 Returns scene object id which is automatically assigned at creation time of object and is unique within scope of one scene. More...
 
sceneId_t getSceneId () const
 Returns sceneid to which this object belongs to. More...
 
- Public Member Functions inherited from ramses::RamsesObject
const char * getName () const
 Returns the name of the object. More...
 
status_t setName (const char *name)
 Changes the name of the object. More...
 
ERamsesObjectType getType () const
 Gets type of the object. More...
 
bool isOfType (ERamsesObjectType type) const
 Checks if the object is of given type. More...
 
- Public Member Functions inherited from ramses::StatusObject
status_t validate () const
 Generates verbose validation of the object. More...
 
const char * getValidationReport (EValidationSeverity minSeverity=EValidationSeverity_Info) const
 Provides verbose report in human readable form generated by validate. More...
 
const char * getStatusMessage (status_t status) const
 Get the string description for a status provided by a RAMSES API function. More...
 
 StatusObject (const StatusObject &other)=delete
 Deleted copy constructor. More...
 
StatusObjectoperator= (const StatusObject &other)=delete
 Deleted copy assignment. More...
 

Public Attributes

class AppearanceImpl & impl
 
- Public Attributes inherited from ramses::SceneObject
class SceneObjectImpl & impl
 
- Public Attributes inherited from ramses::ClientObject
class ClientObjectImpl & impl
 
- Public Attributes inherited from ramses::RamsesObject
class RamsesObjectImpl & impl
 
- Public Attributes inherited from ramses::StatusObject
class StatusObjectImpl & impl
 

Protected Member Functions

 Appearance (AppearanceImpl &pimpl)
 Constructor of Appearance. More...
 
 Appearance (const Appearance &other)
 Copy constructor of Appearance. More...
 
Appearanceoperator= (const Appearance &other)
 Assignment operator of Appearance. More...
 
virtual ~Appearance ()
 Destructor of the Appearance. More...
 
- Protected Member Functions inherited from ramses::SceneObject
 SceneObject (SceneObjectImpl &pimpl)
 Constructor for SceneObject. More...
 
virtual ~SceneObject ()
 Destructor of the SceneObject. More...
 
- Protected Member Functions inherited from ramses::ClientObject
 ClientObject (ClientObjectImpl &pimpl)
 Constructor for ClientObject. More...
 
virtual ~ClientObject ()
 Destructor of the ClientObject. More...
 
- Protected Member Functions inherited from ramses::RamsesObject
 RamsesObject (RamsesObjectImpl &pimpl)
 Constructor for RamsesObject. More...
 
virtual ~RamsesObject ()
 Destructor of the RamsesObject. More...
 
- Protected Member Functions inherited from ramses::StatusObject
 StatusObject (StatusObjectImpl &pimpl)
 Constructor for StatusObject. More...
 
virtual ~StatusObject ()
 Destructor of the StatusObject. More...
 

Friends

class SceneImpl
 Scene is the factory for creating Appearance instances. More...
 

Detailed Description

The Appearance describes how an object should look like. This includes GLSL uniform values, and GPU states such as blending, buffer configurations, masks etc. The API to set uniform values is aligned to the glUniformX API of OpenGL. Beware that boolean values are reported and handled as int (0 is false, anything else is true) - similar to OpenGL conventions.

It provides mechanisms for creating effects

Examples
ramses-example-basic-animation-realtime/src/main.cpp, ramses-example-basic-animation/src/main.cpp, ramses-example-basic-blending/src/main.cpp, ramses-example-basic-compositing/src/main.cpp, ramses-example-basic-effect-from-glsl/src/main.cpp, ramses-example-basic-file-loading/src/main.cpp, ramses-example-basic-geometry/src/main.cpp, ramses-example-basic-rendergroups/src/main.cpp, ramses-example-basic-renderpasses/src/main.cpp, ramses-example-basic-rendertarget/src/main.cpp, ramses-example-basic-scenegraph/src/main.cpp, ramses-example-basic-texturing/src/main.cpp, ramses-example-data-buffers-texture/src/main.cpp, ramses-example-data-buffers-vertices/src/main.cpp, ramses-example-dcsm-provider/src/main.cpp, ramses-example-geometry-instancing/src/main.cpp, ramses-example-interleaved-vertex-buffers/src/main.cpp, ramses-example-local-client-dcsm/src/main.cpp, ramses-example-local-client/src/main.cpp, ramses-example-local-datalink/src/main.cpp, ramses-example-local-displays/src/main.cpp, ramses-example-local-dma-offscreenbuffer/src/main.cpp, ramses-example-local-geometry-shaders/src/main.cpp, ramses-example-local-offscreenbuffer/src/main.cpp, ramses-example-local-pick-handling/src/main.cpp, ramses-example-local-scene-referencing/src/main.cpp, ramses-example-local-viewport-link/src/main.cpp, and ramses-example-renderonce/src/main.cpp.

Constructor & Destructor Documentation

◆ Appearance() [1/2]

ramses::Appearance::Appearance ( AppearanceImpl &  pimpl)
explicitprotected

Constructor of Appearance.

Parameters
[in]pimplInternal data for implementation specifics of Appearance (sink - instance becomes owner)

◆ Appearance() [2/2]

ramses::Appearance::Appearance ( const Appearance other)
protected

Copy constructor of Appearance.

Parameters
[in]otherOther instance of appearance class

◆ ~Appearance()

virtual ramses::Appearance::~Appearance ( )
protectedvirtual

Destructor of the Appearance.

Member Function Documentation

◆ bindInput()

status_t ramses::Appearance::bindInput ( const UniformInput input,
const DataObject dataObject 
)

Bind a DataObject to the Appearance's uniform input. The value from the DataObject will be used and any change made on the DataObject will be reflected in the Appearance. One DataObject can be bound to multiple Appearances. The data type of the DataObject must match the uniform input data type otherwise the call will fail and report error. DataObject cannot be bound to an input with semantics, texture input or array input. Once a DataObject is bound to an input the value cannot be set or get using set/getInputValue*() anymore. Binding a DataObject to an already bound input will unbind the old one and bind the new one.

Parameters
[in]inputThe effect uniform input to bind the DataObject to
[in]dataObjectThe DataObject to be bound
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-local-datalink/src/main.cpp, ramses-example-local-scene-referencing/src/main.cpp, and ramses-example-local-viewport-link/src/main.cpp.

◆ getBlendingColor()

status_t ramses::Appearance::getBlendingColor ( float &  red,
float &  green,
float &  blue,
float &  alpha 
) const

Gets blending color set via setBlendingColor.

Parameters
[out]redRed channel in blending color
[out]greenGreen channel in blending color
[out]blueBlue channel in blending color
[out]alphaAlpha channel in blending color
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getBlendingFactors()

status_t ramses::Appearance::getBlendingFactors ( EBlendFactor srcColor,
EBlendFactor destColor,
EBlendFactor srcAlpha,
EBlendFactor destAlpha 
) const

Gets blending factors for source/destination color/alpha.

Parameters
[out]srcColorSource color blending factor
[out]destColorDestination color blending factor
[out]srcAlphaSource alpha blending factor
[out]destAlphaDestination alpha blending factor
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getBlendingOperations()

status_t ramses::Appearance::getBlendingOperations ( EBlendOperation operationColor,
EBlendOperation operationAlpha 
) const

Gets blending operation for color and alpha.

Parameters
[out]operationColorBlending operation for color
[out]operationAlphaBlending operation for alpha
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getColorWriteMask()

status_t ramses::Appearance::getColorWriteMask ( bool &  writeRed,
bool &  writeGreen,
bool &  writeBlue,
bool &  writeAlpha 
) const

Gets color write mask.

Parameters
[out]writeRedEnable/disable flag for red channel
[out]writeGreenEnable/disable flag for green channel
[out]writeBlueEnable/disable flag for blue channel
[out]writeAlphaEnable/disable flag for alpha channel
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getCullingMode()

status_t ramses::Appearance::getCullingMode ( ECullMode mode) const

Gets the culling mode indicating which side of mesh will be removed before rasterization.

Parameters
[out]modeCulling mode to be used.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getDataObjectBoundToInput()

const DataObject* ramses::Appearance::getDataObjectBoundToInput ( const UniformInput input) const

Gets the data object bound to a uniform input.

Parameters
[in]inputThe effect uniform input to get the bound data object for
Returns
The data object bound the uniform input if existing, otherwise returns nullptr

◆ getDepthFunction()

status_t ramses::Appearance::getDepthFunction ( EDepthFunc func) const

Gets depth comparison function.

Parameters
[out]funcDepth comparison function to be used
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getDepthWriteMode()

status_t ramses::Appearance::getDepthWriteMode ( EDepthWrite mode) const

Gets the current state of writing to depth buffer.

Parameters
[out]modeDepth write mode
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getDrawMode()

status_t ramses::Appearance::getDrawMode ( EDrawMode mode) const

Gets the draw mode indicating by which primitive the mesh will be rendered.

Parameters
[out]modedraw mode to be used.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getEffect()

const Effect& ramses::Appearance::getEffect ( ) const

Gets the effect used to create this appearance.

Returns
The effect used to create the appearance.

◆ getInputTexture()

status_t ramses::Appearance::getInputTexture ( const UniformInput input,
const TextureSampler *&  textureSampler 
) const

Gets texture sampler currently set to the input.

Parameters
[in]inputThe effect uniform input
[out]textureSamplerWill set texture sampler pointer to the TextureSampler object set to the uniform input, nullptr if none set or there was an error
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputTextureExternal()

status_t ramses::Appearance::getInputTextureExternal ( const UniformInput input,
const TextureSamplerExternal *&  textureSampler 
) const

Gets texture sampler currently set to the input.

Parameters
[in]inputThe effect uniform input
[out]textureSamplerWill set texture sampler pointer to the TextureSamplerExternal object set to the uniform input, nullptr if none set or there was an error
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputTextureMS()

status_t ramses::Appearance::getInputTextureMS ( const UniformInput input,
const TextureSamplerMS *&  textureSampler 
) const

Gets texture sampler currently set to the input.

Parameters
[in]inputThe effect uniform input
[out]textureSamplerWill set texture sampler pointer to the TextureSamplerMS object set to the uniform input, nullptr if none set or there was an error
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueFloat() [1/2]

status_t ramses::Appearance::getInputValueFloat ( const UniformInput input,
float &  valueOut 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]valueOutThe float value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueFloat() [2/2]

status_t ramses::Appearance::getInputValueFloat ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueInt32() [1/2]

status_t ramses::Appearance::getInputValueInt32 ( const UniformInput input,
int32_t &  i 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]iThe signed int 32-bit value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueInt32() [2/2]

status_t ramses::Appearance::getInputValueInt32 ( const UniformInput input,
uint32_t  elementCount,
int32_t *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix22f() [1/2]

status_t ramses::Appearance::getInputValueMatrix22f ( const UniformInput input,
float  valueOut[4] 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]valueOutThe matrix 2x2 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix22f() [2/2]

status_t ramses::Appearance::getInputValueMatrix22f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values (column-wise) are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix33f() [1/2]

status_t ramses::Appearance::getInputValueMatrix33f ( const UniformInput input,
float  valueOut[9] 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]valueOutThe matrix 3x3 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix33f() [2/2]

status_t ramses::Appearance::getInputValueMatrix33f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values (column-wise) are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix44f() [1/2]

status_t ramses::Appearance::getInputValueMatrix44f ( const UniformInput input,
float  valueOut[16] 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]valueOutThe matrix 4x4 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueMatrix44f() [2/2]

status_t ramses::Appearance::getInputValueMatrix44f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values (column-wise) are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector2f() [1/2]

status_t ramses::Appearance::getInputValueVector2f ( const UniformInput input,
float &  x,
float &  y 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector2f() [2/2]

status_t ramses::Appearance::getInputValueVector2f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector2i() [1/2]

status_t ramses::Appearance::getInputValueVector2i ( const UniformInput input,
int32_t &  x,
int32_t &  y 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector2i() [2/2]

status_t ramses::Appearance::getInputValueVector2i ( const UniformInput input,
uint32_t  elementCount,
int32_t *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector3f() [1/2]

status_t ramses::Appearance::getInputValueVector3f ( const UniformInput input,
float &  x,
float &  y,
float &  z 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
[out]zThe Z component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector3f() [2/2]

status_t ramses::Appearance::getInputValueVector3f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector3i() [1/2]

status_t ramses::Appearance::getInputValueVector3i ( const UniformInput input,
int32_t &  x,
int32_t &  y,
int32_t &  z 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
[out]zThe Z component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector3i() [2/2]

status_t ramses::Appearance::getInputValueVector3i ( const UniformInput input,
uint32_t  elementCount,
int32_t *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector4f() [1/2]

status_t ramses::Appearance::getInputValueVector4f ( const UniformInput input,
float &  x,
float &  y,
float &  z,
float &  w 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
[out]zThe Z component value
[out]wThe W component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-basic-animation/src/main.cpp.

◆ getInputValueVector4f() [2/2]

status_t ramses::Appearance::getInputValueVector4f ( const UniformInput input,
uint32_t  elementCount,
float *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector4i() [1/2]

status_t ramses::Appearance::getInputValueVector4i ( const UniformInput input,
int32_t &  x,
int32_t &  y,
int32_t &  z,
int32_t &  w 
) const

Gets the value of the input.

Parameters
[in]inputThe effect uniform input
[out]xThe X component value
[out]yThe Y component value
[out]zThe Z component value
[out]wThe W component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getInputValueVector4i() [2/2]

status_t ramses::Appearance::getInputValueVector4i ( const UniformInput input,
uint32_t  elementCount,
int32_t *  valuesOut 
) const

Gets current values of the input.

Parameters
[in]inputThe effect uniform input
[in]elementCountthe number of values that are copied to valuesOut. Must match UniformInput::getElementCount()
[out]valuesOutlocation where the values are copied to
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getScissorRegion()

status_t ramses::Appearance::getScissorRegion ( int16_t &  x,
int16_t &  y,
uint16_t &  width,
uint16_t &  height 
) const

Gets region for scissor test.

Parameters
[out]xOffset of scissor region on x-axis.
[out]yOffset of scissor region on y-axis.
[out]widthWidth of scissor region.
[out]heightHeight of scissor region.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getScissorTestState()

status_t ramses::Appearance::getScissorTestState ( EScissorTest state) const

Gets the current state of scissor test.

Parameters
[out]stateState of scissor test
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getStencilFunction()

status_t ramses::Appearance::getStencilFunction ( EStencilFunc func,
uint8_t &  ref,
uint8_t &  mask 
) const

Gets stencil function, reference and mask value.

Parameters
[out]funcStencil function currently set
[out]refStencil reference value currently set
[out]maskStencil mask value currently set
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ getStencilOperation()

status_t ramses::Appearance::getStencilOperation ( EStencilOperation sfail,
EStencilOperation dpfail,
EStencilOperation dppass 
) const

Gets stencil operations.

Parameters
[out]sfailStencil operation when stencil test fails
[out]dpfailStencil operation when the stencil test passes, but the depth test fails
[out]dppassStencil operation when both the stencil test and the depth test pass
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ isInputBound()

bool ramses::Appearance::isInputBound ( const UniformInput input) const

Check whether a uniform input has any DataObject bound to it.

Parameters
[in]inputThe effect uniform input to check
Returns
true if there is any DataObject bound to the input, false otherwise

◆ operator=()

Appearance& ramses::Appearance::operator= ( const Appearance other)
protected

Assignment operator of Appearance.

Parameters
[in]otherOther instance of appearance class
Returns
This instance after assignment

◆ setBlendingColor()

status_t ramses::Appearance::setBlendingColor ( float  red,
float  green,
float  blue,
float  alpha 
)

Sets blending color that can be used as blending color constant for some blending factors. The default value is (0,0,0,0)

Parameters
[in]redRed channel in blending color
[in]greenGreen channel in blending color
[in]blueBlue channel in blending color
[in]alphaAlpha channel in blending color
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setBlendingFactors()

status_t ramses::Appearance::setBlendingFactors ( EBlendFactor  srcColor,
EBlendFactor  destColor,
EBlendFactor  srcAlpha,
EBlendFactor  destAlpha 
)

Sets blending factors for source/destination color/alpha. Blending operations need to be set as well in order to enable blending.

Parameters
[in]srcColorSource color blending factor
[in]destColorDestination color blending factor
[in]srcAlphaSource alpha blending factor
[in]destAlphaDestination alpha blending factor
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-basic-blending/src/main.cpp, and ramses-example-text-basic/src/main.cpp.

◆ setBlendingOperations()

status_t ramses::Appearance::setBlendingOperations ( EBlendOperation  operationColor,
EBlendOperation  operationAlpha 
)

Sets blending operation for color and alpha. Blending factors need to be set as well in order to enable blending.

Parameters
[in]operationColorBlending operation for color
[in]operationAlphaBlending operation for alpha
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-basic-blending/src/main.cpp, ramses-example-text-basic/src/main.cpp, and ramses-example-text-languages/src/main.cpp.

◆ setColorWriteMask()

status_t ramses::Appearance::setColorWriteMask ( bool  writeRed,
bool  writeGreen,
bool  writeBlue,
bool  writeAlpha 
)

Sets color write mask. If needed certain color channels can stay untouched using the color write mask. By default writing to all color channels is enabled.

Parameters
[in]writeRedEnable/disable flag for red channel
[in]writeGreenEnable/disable flag for green channel
[in]writeBlueEnable/disable flag for blue channel
[in]writeAlphaEnable/disable flag for alpha channel
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setCullingMode()

status_t ramses::Appearance::setCullingMode ( ECullMode  mode)

Sets the culling mode indicating which side of mesh will be removed before rasterization. Default culling mode is BackFaceCulling.

Parameters
[in]modeCulling mode to be used.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-local-datalink/src/main.cpp.

◆ setDepthFunction()

status_t ramses::Appearance::setDepthFunction ( EDepthFunc  func)

Sets depth comparison function. Depth writing has to be enabled in order for this to have any effect. Default depth comparison function is less or equal.

Parameters
[in]funcDepth comparison function to be used
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-local-datalink/src/main.cpp.

◆ setDepthWrite()

status_t ramses::Appearance::setDepthWrite ( EDepthWrite  mode)

Enables or disables writing to depth buffer.

Parameters
[in]modeFlag denoting enabling or disabling depth writes.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setDrawMode()

status_t ramses::Appearance::setDrawMode ( EDrawMode  mode)

Sets the draw mode indicating by which primitive the mesh will be rendered Default draw mode is Triangles.

Parameters
[in]modeDraw mode to be used.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-local-geometry-shaders/src/main.cpp.

◆ setInputTexture() [1/3]

status_t ramses::Appearance::setInputTexture ( const UniformInput input,
const TextureSampler textureSampler 
)

◆ setInputTexture() [2/3]

status_t ramses::Appearance::setInputTexture ( const UniformInput input,
const TextureSamplerExternal textureSampler 
)

Sets external texture sampler to the input.

Parameters
[in]inputThe external texture sampler uniform input to set the value to
[in]textureSamplerThe external texture sampler
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputTexture() [3/3]

status_t ramses::Appearance::setInputTexture ( const UniformInput input,
const TextureSamplerMS textureSampler 
)

Sets multisampled texture sampler to the input.

Parameters
[in]inputThe multisampled texture sampler uniform input to set the value to
[in]textureSamplerThe multisampled texture sampler
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueFloat() [1/2]

status_t ramses::Appearance::setInputValueFloat ( const UniformInput input,
float  value 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]valueThe float value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-local-geometry-shaders/src/main.cpp.

◆ setInputValueFloat() [2/2]

status_t ramses::Appearance::setInputValueFloat ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueInt32() [1/2]

status_t ramses::Appearance::setInputValueInt32 ( const UniformInput input,
int32_t  i 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]iThe integer 32bit value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-data-buffers-texture/src/main.cpp, and ramses-example-local-offscreenbuffer/src/main.cpp.

◆ setInputValueInt32() [2/2]

status_t ramses::Appearance::setInputValueInt32 ( const UniformInput input,
uint32_t  elementCount,
const int32_t *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix22f() [1/2]

status_t ramses::Appearance::setInputValueMatrix22f ( const UniformInput input,
const float  values[4] 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]valuesThe matrix 2x2 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix22f() [2/2]

status_t ramses::Appearance::setInputValueMatrix22f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values (will be stored column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix33f() [1/2]

status_t ramses::Appearance::setInputValueMatrix33f ( const UniformInput input,
const float  values[9] 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]valuesThe matrix 3x3 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix33f() [2/2]

status_t ramses::Appearance::setInputValueMatrix33f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values (will be stored column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix44f() [1/2]

status_t ramses::Appearance::setInputValueMatrix44f ( const UniformInput input,
const float  values[16] 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]valuesThe matrix 4x4 value (column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueMatrix44f() [2/2]

status_t ramses::Appearance::setInputValueMatrix44f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values (will be stored column-wise)
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector2f() [1/2]

status_t ramses::Appearance::setInputValueVector2f ( const UniformInput input,
float  x,
float  y 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]xThe X component value
[in]yThe Y component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector2f() [2/2]

status_t ramses::Appearance::setInputValueVector2f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector2i() [1/2]

status_t ramses::Appearance::setInputValueVector2i ( const UniformInput input,
int32_t  x,
int32_t  y 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]xThe X component value
[in]yThe Y component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector2i() [2/2]

status_t ramses::Appearance::setInputValueVector2i ( const UniformInput input,
uint32_t  elementCount,
const int32_t *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector3f() [1/2]

status_t ramses::Appearance::setInputValueVector3f ( const UniformInput input,
float  x,
float  y,
float  z 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]xThe X component value
[in]yThe Y component value
[in]zThe Z component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().
Examples
ramses-example-geometry-instancing/src/main.cpp.

◆ setInputValueVector3f() [2/2]

status_t ramses::Appearance::setInputValueVector3f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector3i() [1/2]

status_t ramses::Appearance::setInputValueVector3i ( const UniformInput input,
int32_t  x,
int32_t  y,
int32_t  z 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]xThe X component value
[in]yThe Y component value
[in]zThe Z component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector3i() [2/2]

status_t ramses::Appearance::setInputValueVector3i ( const UniformInput input,
uint32_t  elementCount,
const int32_t *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector4f() [1/2]

status_t ramses::Appearance::setInputValueVector4f ( const UniformInput input,
float  x,
float  y,
float  z,
float  w 
)

◆ setInputValueVector4f() [2/2]

status_t ramses::Appearance::setInputValueVector4f ( const UniformInput input,
uint32_t  elementCount,
const float *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector4i() [1/2]

status_t ramses::Appearance::setInputValueVector4i ( const UniformInput input,
int32_t  x,
int32_t  y,
int32_t  z,
int32_t  w 
)

Sets value of the input.

Parameters
[in]inputThe effect uniform input to set the value to
[in]xThe X component value
[in]yThe Y component value
[in]zThe Z component value
[in]wThe W component value
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setInputValueVector4i() [2/2]

status_t ramses::Appearance::setInputValueVector4i ( const UniformInput input,
uint32_t  elementCount,
const int32_t *  values 
)

Sets values of the input elements.

Parameters
[in]inputThe effect uniform input to set the value to
[in]elementCountThe number of values that are used from values. Must match UniformInput::getElementCount()
[in]valuesPointer the the values
Returns
StatusOK for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setScissorTest()

status_t ramses::Appearance::setScissorTest ( EScissorTest  state,
int16_t  x,
int16_t  y,
uint16_t  width,
uint16_t  height 
)

Enables or disables scissor test and sets region for scissor test.

Parameters
[in]stateFlag denoting enabling or disabling scissor test.
[in]xOffset of scissor region on x-axis.
[in]yOffset of scissor region on y-axis.
[in]widthWidth of scissor region.
[in]heightHeight of scissor region.
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setStencilFunction()

status_t ramses::Appearance::setStencilFunction ( EStencilFunc  func,
uint8_t  ref,
uint8_t  mask 
)

Sets stencil function, reference and mask value for stencil testing. Stencil is disabled by default.

Parameters
[in]funcStencil function to be used
[in]refStencil reference value to be used
[in]maskStencil mask value to be used
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ setStencilOperation()

status_t ramses::Appearance::setStencilOperation ( EStencilOperation  sfail,
EStencilOperation  dpfail,
EStencilOperation  dppass 
)

Sets stencil operations for stencil testing. Default stencil operation values are keep.

Parameters
[in]sfailStencil operation when stencil test fails
[in]dpfailStencil operation when the stencil test passes, but the depth test fails
[in]dppassStencil operation when both the stencil test and the depth test pass
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

◆ unbindInput()

status_t ramses::Appearance::unbindInput ( const UniformInput input)

Unbind a previously bound DataObject from the Appearance's uniform input. Any previously set value that was set before binding will now be used. Appropriate set/getInputValue*() method must be used to set or get the value or another DataObject can be bound.

Parameters
[in]inputThe effect uniform input to unbind the DataObject from
Returns
status == 0 for success, otherwise the returned status can be used to resolve error message using getStatusMessage().

Friends And Related Function Documentation

◆ SceneImpl

friend class SceneImpl
friend

Scene is the factory for creating Appearance instances.

Member Data Documentation

◆ impl

class AppearanceImpl& ramses::Appearance::impl

Stores internal data for implementation specifics of Appearance.


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