CS::Graphics::RenderMeshModes Struct 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

Public Attributes
CS::Graphics::RenderMeshModes Struct Reference

Mesh render mode information. More...

`#include <ivideo/rendermesh.h>`

Inheritance diagram for CS::Graphics::RenderMeshModes:

List of all members.

## Public Attributes
AlphaTestOptions | alphaTest
| Alpha test setting (take effect when mixmode enables alpha test)
bool | alphaToCoverage
| Whether to enable alpha to coverage.
csAlphaMode::AlphaType | alphaType
| Alpha mode this mesh is drawn.
uint | atcMixmode
| Mixmode to use together with alpha to coverage.
csRef< csRenderBufferHolder > | buffers
| Holder of default render buffers.
MeshCullMode | cullMode
| Mesh culling mode.
bool | doInstancing
| Whether to enable instancing.
size_t | instanceNum
| Number of instances.
iRenderBuffer ** | instParamBuffers
| Instance parameters, as shader variables.
size_t | instParamNum
| Number of instance parameters.
csShaderVariable **const * | instParams
| Instance parameters, as shader variables.
const csVertexAttrib * | instParamsTargets
| Targets of instance parameters.
uint | mixmode
| mixmode to use
RenderPriority | renderPrio
| Mesh render priority.
csZBufMode | z_buf_mode
| Z mode to use.
bool | zoffset
| Whether Z value offsetting should be enabled.

## Detailed Description

Mesh render mode information.

Contains the Z, mix and alpha modes to use for rendering a mesh.

Remarks:
  Is separate from CS::Graphics::CoreRenderMesh to allow preprocessing steps to modify the mode data.

Definition at line 151 of file rendermesh.h.

## Member Data Documentation

AlphaTestOptions CS::Graphics::RenderMeshModes::alphaTest

Alpha test setting (take effect when mixmode enables alpha test)

Definition at line 218 of file rendermesh.h.

bool CS::Graphics::RenderMeshModes::alphaToCoverage

Whether to enable alpha to coverage.

Note that alpha to coverage requires enabled multisampling If that is the case alpha to coverage is enabled and the mixmode from `atcMixmode` is used. Otherwise, the normal mixmode is used.

Definition at line 196 of file rendermesh.h.

csAlphaMode::AlphaType CS::Graphics::RenderMeshModes::alphaType

Alpha mode this mesh is drawn.

- If the mixmode mode type (bits CS_MIXMODE_TYPE_MASK) is CS_MIXMODE_TYPE_AUTO, the alpha type affects blending.
- If the mixmode alpha test type (bits CS_MIXMODE_ALPHATEST_MASK) is CS_MIXMODE_ALPHATEST_AUTO, the alpha type affects whether alpha test is used or not.

Definition at line 215 of file rendermesh.h.

uint CS::Graphics::RenderMeshModes::atcMixmode

Mixmode to use together with alpha to coverage.

Definition at line 198 of file rendermesh.h.

csRef<csRenderBufferHolder> CS::Graphics::RenderMeshModes::buffers

Holder of default render buffers.

Definition at line 224 of file rendermesh.h.

MeshCullMode CS::Graphics::RenderMeshModes::cullMode

Mesh culling mode.

Definition at line 204 of file rendermesh.h.

bool CS::Graphics::RenderMeshModes::doInstancing

Whether to enable instancing.

Definition at line 227 of file rendermesh.h.

size_t CS::Graphics::RenderMeshModes::instanceNum

Number of instances.

Definition at line 233 of file rendermesh.h.

iRenderBuffer** CS::Graphics::RenderMeshModes::instParamBuffers

Instance parameters, as shader variables.

Each element in the array is a render buffer with the values for an instance parameter; there must be as many render buffers as parameters.

The instance data can be given in both the instParams and instParamsBuffers array; in that case, the render buffer takes precedence. Only when a buffer is null the shader variable data is taken.

Definition at line 253 of file rendermesh.h.

size_t CS::Graphics::RenderMeshModes::instParamNum

Number of instance parameters.

Definition at line 229 of file rendermesh.h.

csShaderVariable** const* CS::Graphics::RenderMeshModes::instParams

Instance parameters, as shader variables.

The "instance" array (elements of type csShaderVariable**) has one "parameter" array for each instance. The parameter array (elements of type csShaderVariable*) has one shader variable for each instance parameter.

Definition at line 241 of file rendermesh.h.

const csVertexAttrib* CS::Graphics::RenderMeshModes::instParamsTargets

Targets of instance parameters.

Definition at line 231 of file rendermesh.h.

uint CS::Graphics::RenderMeshModes::mixmode

mixmode to use

Definition at line 187 of file rendermesh.h.

RenderPriority CS::Graphics::RenderMeshModes::renderPrio

Mesh render priority.

Definition at line 201 of file rendermesh.h.

csZBufMode CS::Graphics::RenderMeshModes::z_buf_mode

Z mode to use.

Definition at line 184 of file rendermesh.h.

bool CS::Graphics::RenderMeshModes::zoffset

Whether Z value offsetting should be enabled.

Definition at line 221 of file rendermesh.h.

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

- ivideo/rendermesh.h