CrystalSpace

Public API Reference

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< PortalHolderallPortals
 All portals within context.
csReversibleTransform cameraTransform
 Camera transformation.
int drawFlags
 Flags for iGraphics3D::BeginDraw().
MeshNodeTreeType meshNodes
 Sub-tree of mesh nodes.
TreeTypeowner
 Owner of context node.
CS::Math::Matrix4 perspectiveFixup
 Matrix to be applied after projection from camera (usually used for post processing manager targets).
csRef< PostEffectManagerpostEffects
 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< RenderViewrenderView
 View rendered to.
iSectorsector
 Sector to render.
csDirtyAccessArray< iShader * > shaderArray
 Arrays of per-mesh shader.
csRef< iShaderVariableContextshadervars
 Context-specific shader variables.
SVArrayHolder svArrays
 The SVs themselves.
csRef< csShaderVariablesvFogplane
 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:

Generated for Crystal Space 2.0 by doxygen 1.6.1