iRenderManagerTargets 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 Types | Public Member Functions
iRenderManagerTargets Struct Reference

Interface for automatic view-to-texture rendering. More...

`#include <iengine/rendermanager.h>`

Inheritance diagram for iRenderManagerTargets:

List of all members.

## Public Types
enum | TargetFlags { updateOnce = 1, assumeAlwaysUsed = 2, clearScreen = 4 }
| Flags for target registration. More...
## Public Member Functions
virtual void | MarkAsUsed (iTextureHandle *target)=0
| Manually mark a texture as used.
virtual void | RegisterRenderTarget (iTextureHandle *target, iView *view, int subtexture=0, uint flags=0)=0
| Register a texture and view that should be rendered to the texture.
virtual void | UnregisterRenderTarget (iTextureHandle *target, int subtexture=0)=0
| Unregister a texture to automatically render to.

## Detailed Description

Interface for automatic view-to-texture rendering.

Exposed by render managers which support this functionality.

Definition at line 55 of file rendermanager.h.

## Member Enumeration Documentation

enum iRenderManagerTargets::TargetFlags

Flags for target registration.

Enumerator:

  updateOnce | Only render to the target once.
  assumeAlwaysUsed | Assumes the target is used every frame - means it is rendered to every frame. Remarks: If this flag is set, but the texture is actually not used, this is a waste of cycles. Consider manual marking with MarkAsUsed() if the texture is only used some times.
  clearScreen | Clear the frame buffer before rendering to it.

Definition at line 60 of file rendermanager.h.

## Member Function Documentation

virtual void iRenderManagerTargets::MarkAsUsed | ( | iTextureHandle * | target | ) | `[pure virtual]`

Manually mark a texture as used.

Useful when the texture isn't used in the world itself (e.g. for HUD rendering) and thus is not detected as used by the render manager.

virtual void iRenderManagerTargets::RegisterRenderTarget | ( | iTextureHandle * | target,
|  | iView * | view,
|  | int | subtexture = `0`,
|  | uint | flags = `0`
| ) |  | `[pure virtual]`

Register a texture and view that should be rendered to the texture.

The view is rendered automatically when the texture is used.

Parameters:

  target | The texture to render to.
  view | The view to render.
  subtexture | The subtexture. Typically the face of a cube map texture.
  flags | Combination of TargetFlags.

Remarks:
  If the combination target, subtexture was mapped to another view before that mapping is removed.

virtual void iRenderManagerTargets::UnregisterRenderTarget | ( | iTextureHandle * | target,
|  | int | subtexture = `0`
| ) |  | `[pure virtual]`

Unregister a texture to automatically render to.

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

- iengine/rendermanager.h