CS::RenderManager::LightingVariablesHelper Class Reference (Crystal Space 2.0 Public API Reference)

| ## Public API Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Classes | Public Member Functions
CS::RenderManager::LightingVariablesHelper Class Reference

Helper class to deal with shader variables setup for lighting. More...

`#include <csplugincommon/rendermanager/lightsetup.h>`

List of all members.

## Classes
struct | PersistentData
| Data used by the helper that needs to persist over multiple frames. More...
## Public Member Functions
csShaderVariable * | CreateTempSV (CS::ShaderVarStringID name=CS::InvalidShaderVarStringID)
| Create a shader variable which is only valid for this frame.
csShaderVariable * | CreateVarOnStack (CS::ShaderVarStringID name, csShaderVariableStack &stack)
| Create a temporary shader variable (using CreateTempSV) and put it onto stack.
| LightingVariablesHelper (PersistentData &persist)
| Construct.
bool | MergeAsArrayItem (csShaderVariableStack &dst, csShaderVariable *sv, size_t index)
| Merge a shader variable into a stack as an item of a shader variable.
void | MergeAsArrayItems (csShaderVariableStack &dst, const csRefArray< csShaderVariable > &allVars, size_t index)
| Merge an array of shader variables into a stack as items of a shader variables.

## Detailed Description

Helper class to deal with shader variables setup for lighting.

Definition at line 250 of file lightsetup.h.

## Constructor & Destructor Documentation

CS::RenderManager::LightingVariablesHelper::LightingVariablesHelper | ( | PersistentData & | persist | ) | `[inline]`

Construct.

Definition at line 279 of file lightsetup.h.

## Member Function Documentation

csShaderVariable* CS::RenderManager::LightingVariablesHelper::CreateTempSV | ( | CS::ShaderVarStringID | name = `CS::InvalidShaderVarStringID` | ) |

Create a shader variable which is only valid for this frame.

csShaderVariable* CS::RenderManager::LightingVariablesHelper::CreateVarOnStack | ( | CS::ShaderVarStringID | name,
|  | csShaderVariableStack & | stack
| ) |  |

Create a temporary shader variable (using CreateTempSV) and put it onto stack.

bool CS::RenderManager::LightingVariablesHelper::MergeAsArrayItem | ( | csShaderVariableStack & | dst,
|  | csShaderVariable * | sv,
|  | size_t | index
| ) |  |

Merge a shader variable into a stack as an item of a shader variable.

The variable in the destination stack with the name of sv is an array variable or does not exist gets the array item with the index index set to sv.

Returns:
  Whether the destination stack was large enough to contain sv.

void CS::RenderManager::LightingVariablesHelper::MergeAsArrayItems | ( | csShaderVariableStack & | dst,
|  | const csRefArray< csShaderVariable > & | allVars,
|  | size_t | index
| ) |  |

Merge an array of shader variables into a stack as items of a shader variables.

See also:
  MergeAsArrayItem

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

- csplugincommon/rendermanager/lightsetup.h