iImposterFactory 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 Member Functions
iImposterFactory Struct Reference
Crystal Space 3D Engine

iImposterFactory defines the interface a mesh factory must implement for its meshes to be used as imposters by the engine. More...

`#include <iengine/imposter.h>`

Inheritance diagram for iImposterFactory:

List of all members.

## Public Member Functions
virtual void | AddImposter (iMeshWrapper *mesh, iRenderView *rview)=0
| Given a mesh, activate its imposter.
virtual float | GetCameraRotationTolerance ()=0
| Gets the camera rotation tolerance.
virtual float | GetMinDistance ()=0
| Gets the minimum imposter distance.
virtual float | GetRotationTolerance ()=0
| Gets the rotation tolerance.
virtual void | RemoveImposter (iMeshWrapper *mesh)=0
| Given a mesh, deactivate and remove its imposter.
virtual bool | RenderingImposter (iMeshWrapper *mesh)=0
| Whether we are currently rendering the imposter.
virtual void | SetCameraRotationTolerance (float angle)=0
| Sets the camera rotation tolerance.
virtual void | SetMinDistance (float dist)=0
| Sets the minimum imposter distance.
virtual void | SetRenderReal (bool renderReal)=0
| Sets whether to render the real mesh while waiting for the imposter to init.
virtual void | SetRotationTolerance (float angle)=0
| Sets the rotation tolerance.
virtual void | SetShader (const char *type, const char *shader)=0
| Sets the shader to be used by the imposters.

## Detailed Description

iImposterFactory defines the interface a mesh factory must implement for its meshes to be used as imposters by the engine.

Definition at line 39 of file imposter.h.

## Member Function Documentation

virtual void iImposterFactory::AddImposter | ( | iMeshWrapper * | mesh,
|  | iRenderView * | rview
| ) |  | `[pure virtual]`

Given a mesh, activate its imposter.

virtual float iImposterFactory::GetCameraRotationTolerance | ( |  | ) | `[pure virtual]`

Gets the camera rotation tolerance.

virtual float iImposterFactory::GetMinDistance | ( |  | ) | `[pure virtual]`

Gets the minimum imposter distance.

virtual float iImposterFactory::GetRotationTolerance | ( |  | ) | `[pure virtual]`

Gets the rotation tolerance.

virtual void iImposterFactory::RemoveImposter | ( | iMeshWrapper * | mesh | ) | `[pure virtual]`

Given a mesh, deactivate and remove its imposter.

virtual bool iImposterFactory::RenderingImposter | ( | iMeshWrapper * | mesh | ) | `[pure virtual]`

Whether we are currently rendering the imposter.

virtual void iImposterFactory::SetCameraRotationTolerance | ( | float | angle | ) | `[pure virtual]`

Sets the camera rotation tolerance.

This is the tolerance angle between the z->1 vector and the object on screen. Exceeding this value triggers the updating of the imposter whenever the object slides too much away from the center of screen.

virtual void iImposterFactory::SetMinDistance | ( | float | dist | ) | `[pure virtual]`

Sets the minimum imposter distance.

This is the distance from camera beyond which an imposter is used.

virtual void iImposterFactory::SetRenderReal | ( | bool | renderReal | ) | `[pure virtual]`

Sets whether to render the real mesh while waiting for the imposter to init.

virtual void iImposterFactory::SetRotationTolerance | ( | float | angle | ) | `[pure virtual]`

Sets the rotation tolerance.

This is the maximum allowable angle difference between when the imposter was created and the current position of the camera. Angles greater than this trigger a re-render of the imposter.

virtual void iImposterFactory::SetShader | ( | const char * | type,
|  | const char * | shader
| ) |  | `[pure virtual]`

Sets the shader to be used by the imposters.

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

- iengine/imposter.h