![]() |
Public API Reference |
![]() |
Provides an interface for custom rendering. More...
#include <imesh/terrain2.h>
Public Member Functions | |
virtual void | ConnectTerrain (iTerrainSystem *system)=0 |
Connect to a given terrain system. | |
virtual csPtr < iTerrainCellRenderProperties > | CreateProperties ()=0 |
Create an object that implements iTerrainCellRenderProperties This object will be stored in the cell. | |
virtual void | DisconnectTerrain (iTerrainSystem *system)=0 |
Disconnect from a given terrain system. | |
virtual CS::Graphics::RenderMesh ** | GetRenderMeshes (int &n, iRenderView *rview, iMovable *movable, uint32 frustum_mask, const csArray< iTerrainCell * > &cells)=0 |
Render the visible cells. | |
virtual void | OnAlphaMapUpdate (iTerrainCell *cell, iMaterialWrapper *material, iImage *alphaMap)=0 |
Indicate that the cells alpha-map matching a given material have changed and that the renderer should update its internal structures. | |
virtual void | OnMaterialMaskUpdate (iTerrainCell *cell, const csRect &rectangle, const unsigned char *materialMap, size_t pitch)=0 |
Indicates that the cells material mask has been changed (while unlocking the cell material map data either by a feeder or by a user- provided functions or while setting the new mask with the respective functions), and that the renderer should update its internal structures to reflect the changes. | |
virtual void | OnMaterialMaskUpdate (iTerrainCell *cell, size_t materialIdx, const csRect &rectangle, const unsigned char *materialMap, size_t pitch)=0 |
Indicates that the cells material mask has been changed (while unlocking the cell material map data either by a feeder or by a user- provided functions or while setting the new mask with the respective functions), and that the renderer should update its internal structures to reflect the changes. | |
virtual void | OnMaterialPaletteUpdate (const csTerrainMaterialPalette &material_palette)=0 |
Indicates that the material palette has been changed, and that the renderer should update its internal structures to reflect the changes. |
Provides an interface for custom rendering.
Definition at line 457 of file terrain2.h.
virtual void iTerrainRenderer::ConnectTerrain | ( | iTerrainSystem * | system | ) | [pure virtual] |
Connect to a given terrain system.
Setup any per-terrain render data
virtual csPtr<iTerrainCellRenderProperties> iTerrainRenderer::CreateProperties | ( | ) | [pure virtual] |
Create an object that implements iTerrainCellRenderProperties This object will be stored in the cell.
This function gets invoked at cells creation.
virtual void iTerrainRenderer::DisconnectTerrain | ( | iTerrainSystem * | system | ) | [pure virtual] |
Disconnect from a given terrain system.
virtual CS::Graphics::RenderMesh** iTerrainRenderer::GetRenderMeshes | ( | int & | n, |
iRenderView * | rview, | ||
iMovable * | movable, | ||
uint32 | frustum_mask, | ||
const csArray< iTerrainCell * > & | cells | ||
) | [pure virtual] |
Render the visible cells.
n | output value, that will contain the size of the resulting mesh array |
rview | view that was used for rendering |
movable | the terrain object |
frustum_mask | frustum mask |
cells | array with visible cells |
cell_count | number of visible cells |
virtual void iTerrainRenderer::OnAlphaMapUpdate | ( | iTerrainCell * | cell, |
iMaterialWrapper * | material, | ||
iImage * | alphaMap | ||
) | [pure virtual] |
Indicate that the cells alpha-map matching a given material have changed and that the renderer should update its internal structures.
cell | cell with changed data |
material | material |
alphaMap | the alpha map |
virtual void iTerrainRenderer::OnMaterialMaskUpdate | ( | iTerrainCell * | cell, |
const csRect & | rectangle, | ||
const unsigned char * | materialMap, | ||
size_t | pitch | ||
) | [pure virtual] |
Indicates that the cells material mask has been changed (while unlocking the cell material map data either by a feeder or by a user- provided functions or while setting the new mask with the respective functions), and that the renderer should update its internal structures to reflect the changes.
cell | cell with the changed data |
rectangle | rectangle that was updated |
materialMap | the updated material map |
pitch | data pitch |
virtual void iTerrainRenderer::OnMaterialMaskUpdate | ( | iTerrainCell * | cell, |
size_t | materialIdx, | ||
const csRect & | rectangle, | ||
const unsigned char * | materialMap, | ||
size_t | pitch | ||
) | [pure virtual] |
Indicates that the cells material mask has been changed (while unlocking the cell material map data either by a feeder or by a user- provided functions or while setting the new mask with the respective functions), and that the renderer should update its internal structures to reflect the changes.
cell | cell with the changed data |
materialIdx | specific material index |
rectangle | rectangle that was updated |
materialMap | the updated material map |
pitch | data pitch |
virtual void iTerrainRenderer::OnMaterialPaletteUpdate | ( | const csTerrainMaterialPalette & | material_palette | ) | [pure virtual] |
Indicates that the material palette has been changed, and that the renderer should update its internal structures to reflect the changes.
material_palette | new material palette |