CS::RenderManager::RenderTree< TreeTraits >::ContextNode 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

Classes | Public Member Functions | Public Attributes
CS::RenderManager::RenderTree< TreeTraits >::ContextNode Struct Reference

A single context node, Groups meshes which should be rendered from the same view to the same target. More...

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

Inheritance diagram for CS::RenderManager::RenderTree< TreeTraits >::ContextNode:

List of all members.

## Classes
struct | PortalHolder
| Information for a portal. More...
struct | TargetTexture
| A single render target. More...
## Public Member Functions
void | AddRenderMesh (csRenderMesh *rm, CS::Graphics::RenderPriority renderPrio, typename MeshNode::SingleMesh &singleMeshTemplate)
| Add a rendermesh to context, putting it in the right meshnode etc.
void | CopyLayerShader (size_t meshId, size_t fromLayer, size_t toLayer)
| Copy the shader for mesh meshId from layer fromLayer to layer toLayer.
bool | GetTargetDimensions (int &renderW, int &renderH)
| Get the dimension of the render target set for this context.
void | InsertLayer (size_t after)
| Add a new render layer after layer.
## Public Attributes
csArray< PortalHolder > | allPortals
| All portals within context.
csReversibleTransform | cameraTransform
| Camera transformation.
int | drawFlags
| Flags for iGraphics3D::BeginDraw()
MeshNodeTreeType | meshNodes
| Sub-tree of mesh nodes.
TreeType & | owner
| Owner of context node.
CS::Math::Matrix4 | perspectiveFixup
| Matrix to be applied after projection from camera (usually used for post processing manager targets)
csRef< PostEffectManager > | postEffects
| Post processing effects to apply after rendering the context.
CS::RenderPriorityGrouping | renderGrouping
| Mesh render grouping.
TargetTexture | renderTargets [rtaNumAttachments]
| All render targets to be used when rendering the context node.
csRef< RenderView > | renderView
| View rendered to.
iSector * | sector
| Sector to render.
csDirtyAccessArray< iShader * > | shaderArray
| Arrays of per-mesh shader.
csRef< iShaderVariableContext > | shadervars
| Context-specific shader variables.
SVArrayHolder | svArrays
| The SVs themselves.
csRef< csShaderVariable > | svFogplane
| Holds fog plane for sector+view.
csArray< size_t > | ticketArray
| Arrays of per-mesh ticket info.
size_t | totalRenderMeshes
| Total number of render meshes within the context.

## Detailed Description

### template<typename TreeTraits = RenderTreeStandardTraits>
struct CS::RenderManager::RenderTree< TreeTraits >::ContextNode

A single context node, Groups meshes which should be rendered from the same view to the same target.

Create instances of this structure by using RenderTree::CreateContext.

Definition at line 375 of file rendertree.h.

## Member Function Documentation

template<typename TreeTraits = RenderTreeStandardTraits>

void CS::RenderManager::RenderTree< TreeTraits >::ContextNode::AddRenderMesh | ( | csRenderMesh * | rm,
|  | CS::Graphics::RenderPriority | renderPrio,
|  | typename MeshNode::SingleMesh & | singleMeshTemplate
| ) |  | `[inline]`

Add a rendermesh to context, putting it in the right meshnode etc.

Definition at line 460 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

void CS::RenderManager::RenderTree< TreeTraits >::ContextNode::CopyLayerShader | ( | size_t | meshId,
|  | size_t | fromLayer,
|  | size_t | toLayer
| ) |  | `[inline]`

Copy the shader for mesh meshId from layer fromLayer to layer toLayer.

Definition at line 534 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

bool CS::RenderManager::RenderTree< TreeTraits >::ContextNode::GetTargetDimensions | ( | int & | renderW,
|  | int & | renderH
| ) |  | `[inline]`

Get the dimension of the render target set for this context.

Definition at line 545 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

void CS::RenderManager::RenderTree< TreeTraits >::ContextNode::InsertLayer | ( | size_t | after | ) | `[inline]`

Add a new render layer after layer.

Definition at line 516 of file rendertree.h.

## Member Data Documentation

template<typename TreeTraits = RenderTreeStandardTraits>

csArray<PortalHolder> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::allPortals

All portals within context.

Definition at line 437 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csReversibleTransform CS::RenderManager::RenderTree< TreeTraits >::ContextNode::cameraTransform

Camera transformation.

Definition at line 418 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

int CS::RenderManager::RenderTree< TreeTraits >::ContextNode::drawFlags

Flags for iGraphics3D::BeginDraw()

Definition at line 420 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

MeshNodeTreeType CS::RenderManager::RenderTree< TreeTraits >::ContextNode::meshNodes

Sub-tree of mesh nodes.

Definition at line 434 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

TreeType& CS::RenderManager::RenderTree< TreeTraits >::ContextNode::owner

Owner of context node.

Definition at line 396 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

CS::Math::Matrix4 CS::RenderManager::RenderTree< TreeTraits >::ContextNode::perspectiveFixup

Matrix to be applied after projection from camera (usually used for post processing manager targets)

Definition at line 416 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csRef<PostEffectManager> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::postEffects

Post processing effects to apply after rendering the context.

Definition at line 431 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

CS::RenderPriorityGrouping CS::RenderManager::RenderTree< TreeTraits >::ContextNode::renderGrouping

Mesh render grouping.

Definition at line 428 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

TargetTexture CS::RenderManager::RenderTree< TreeTraits >::ContextNode::renderTargets[rtaNumAttachments]

All render targets to be used when rendering the context node.

Definition at line 411 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csRef<RenderView> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::renderView

View rendered to.

Definition at line 399 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

iSector* CS::RenderManager::RenderTree< TreeTraits >::ContextNode::sector

Sector to render.

Definition at line 422 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csDirtyAccessArray<iShader*> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::shaderArray

Arrays of per-mesh shader.

Definition at line 443 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csRef<iShaderVariableContext> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::shadervars

Context-specific shader variables.

Definition at line 426 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

SVArrayHolder CS::RenderManager::RenderTree< TreeTraits >::ContextNode::svArrays

The SVs themselves.

Definition at line 440 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csRef<csShaderVariable> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::svFogplane

Holds fog plane for sector+view.

Definition at line 424 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

csArray<size_t> CS::RenderManager::RenderTree< TreeTraits >::ContextNode::ticketArray

Arrays of per-mesh ticket info.

Definition at line 445 of file rendertree.h.

template<typename TreeTraits = RenderTreeStandardTraits>

size_t CS::RenderManager::RenderTree< TreeTraits >::ContextNode::totalRenderMeshes

Total number of render meshes within the context.

Definition at line 448 of file rendertree.h.

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

- csplugincommon/rendermanager/rendertree.h