- Cal3D 0.9 API Reference -

Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

# CalRenderer Class Reference

The renderer class. More...

`#include <renderer.h>`

List of all members.

## Public Member Functions

| CalRenderer ()
| Constructs the renderer instance.
| CalRenderer (CalRenderer *pRenderer)
| Copy-constructor for the renderer instance.
virtual | ~CalRenderer ()
| Destructs the renderer instance.
bool | beginRendering ()
| Initializes the rendering query phase.
bool | create (CalModel *pModel)
| Creates the renderer instance.
void | destroy ()
| Destroys the renderer instance.
void | endRendering ()
| Finishes the rendering query phase.
void | getAmbientColor (unsigned char *pColorBuffer)
| Provides access to the ambient color.
void | getDiffuseColor (unsigned char *pColorBuffer)
| Provides access to the diffuse color.
int | getFaceCount ()
| Returns the number of faces.
int | getFaces (CalIndex *pFaceBuffer)
| Provides access to the face data.
int | getMapCount ()
| Returns the number of maps.
Cal::UserData | getMapUserData (int mapId)
| Provides access to a specified map user data.
int | getMeshCount ()
| Returns the number of attached meshes.
int | getNormals (float *pNormalBuffer)
| Provides access to the normal data.
float | getShininess ()
| Returns the shininess factor.
void | getSpecularColor (unsigned char *pColorBuffer)
| Provides access to the specular color.
int | getSubmeshCount (int meshId)
| Returns the number of submeshes.
int | getTextureCoordinates (int mapId, float *pTextureCoordinateBuffer)
| Provides access to the texture coordinate data.
int | getVertexCount ()
| Returns the number of vertices.
int | getVertices (float *pVertexBuffer)
| Provides access to the vertex data.
int | getTangentSpaces (int mapId, float *pTangentSpaceBuffer)
| Provides access to the tangent space data.
int | getVerticesAndNormals (float *pVertexBuffer)
| Provides access to the submesh data.
int | getVerticesNormalsAndTexCoords (float *pVertexBuffer, int NumTexCoords=1)
| Provides access to the submesh data.
bool | isTangentsEnabled (int mapId)
| Returns if tangent are enabled.
bool | selectMeshSubmesh (int meshId, int submeshId)
| Selects a mesh/submesh for rendering data queries.
void | setNormalization (bool normalize)
| Sets the normalization flag to true or false.

## Public Attributes

CalModel * | m_pModel
CalSubmesh * | m_pSelectedSubmesh

## Detailed Description

The renderer class.

## Constructor & Destructor Documentation

CalRenderer::CalRenderer | ( |  | ) |

| Constructs the renderer instance. This function is the default constructor of the renderer instance.

CalRenderer::CalRenderer | ( | CalRenderer * | pRenderer | ) |

| Copy-constructor for the renderer instance. This function is the copy constructor of the renderer instance. This is useful for multi-pipe parallel rendering.

CalRenderer::~CalRenderer | ( |  | ) | `[virtual]`

| Destructs the renderer instance. This function is the destructor of the renderer instance.

## Member Function Documentation

bool CalRenderer::beginRendering | ( |  | ) |

| Initializes the rendering query phase. This function initializes the rendering query phase. It must be called before any rendering queries are executed.

bool CalRenderer::create | ( | CalModel * | pModel | ) |

| Creates the renderer instance. This function creates the renderer instance.

Parameters:

  pModel | A pointer to the model that should be managed with this renderer instance.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

void CalRenderer::destroy | ( |  | ) |

| Destroys the renderer instance. This function destroys all data stored in the renderer instance and frees all allocated memory.

void CalRenderer::endRendering | ( |  | ) |

| Finishes the rendering query phase. This function finishes the rendering query phase. It must be called after all rendering queries have been executed.

void CalRenderer::getAmbientColor | ( | unsigned char * | pColorBuffer | ) |

| Provides access to the ambient color. This function returns the ambient color of the material of the selected mesh/submesh.

Parameters:

  pColorBuffer | A pointer to the user-provided buffer where the color data is written to.

void CalRenderer::getDiffuseColor | ( | unsigned char * | pColorBuffer | ) |

| Provides access to the diffuse color. This function returns the diffuse color of the material of the selected mesh/submesh.

Parameters:

  pColorBuffer | A pointer to the user-provided buffer where the color data is written to.

int CalRenderer::getFaceCount | ( |  | ) |

| Returns the number of faces. This function returns the number of faces in the selected mesh/submesh.

Returns:
  The number of faces.

int CalRenderer::getFaces | ( | CalIndex * | pFaceBuffer | ) |

| Provides access to the face data. This function returns the face data (vertex indices) of the selected mesh/submesh. The LOD setting is taken into account.

Parameters:

  pFaceBuffer | A pointer to the user-provided buffer where the face data is written to.

Returns:
  The number of faces written to the buffer.

int CalRenderer::getMapCount | ( |  | ) |

| Returns the number of maps. This function returns the number of maps in the selected mesh/submesh.

Returns:
  The number of maps.

Cal::UserData CalRenderer::getMapUserData | ( | int | mapId | ) |

| Provides access to a specified map user data. This function returns the user data stored in the specified map of the material of the selected mesh/submesh.

Parameters:

  mapId | The ID of the map.

Returns:
  One of the following values:
  - the user data stored in the specified map
  - 0 if an error happend

int CalRenderer::getMeshCount | ( |  | ) |

| Returns the number of attached meshes. This function returns the number of meshes attached to the renderer instance.

Returns:
  The number of attached meshes.

int CalRenderer::getNormals | ( | float * | pNormalBuffer | ) |

| Provides access to the normal data. This function returns the normal data of the selected mesh/submesh.

Parameters:

  pNormalBuffer | A pointer to the user-provided buffer where the normal data is written to.

Returns:
  The number of normals written to the buffer.

float CalRenderer::getShininess | ( |  | ) |

| Returns the shininess factor. This function returns the shininess factor of the material of the selected mesh/submesh..

Returns:
  The shininess factor.

void CalRenderer::getSpecularColor | ( | unsigned char * | pColorBuffer | ) |

| Provides access to the specular color. This function returns the specular color of the material of the selected mesh/submesh.

Parameters:

  pColorBuffer | A pointer to the user-provided buffer where the color data is written to.

int CalRenderer::getSubmeshCount | ( | int | meshId | ) |

| Returns the number of submeshes. This function returns the number of submeshes in a given mesh.

Parameters:

  meshId | The ID of the mesh for which the number of submeshes should be returned..

Returns:
  The number of submeshes.

int CalRenderer::getTangentSpaces | ( | int | mapId,
|  | float * | pTangentSpaceBuffer
| ) |

| Provides access to the tangent space data. This function returns the tangent space data of the selected mesh/submesh.

Parameters:

  mapID |
  pTangentSpaceBuffer | A pointer to the user-provided buffer where the normal data is written to.

Returns:
  The number of tangent space written to the buffer.

int CalRenderer::getTextureCoordinates | ( | int | mapId,
|  | float * | pTextureCoordinateBuffer
| ) |

| Provides access to the texture coordinate data. This function returns the texture coordinate data for a given map of the selected mesh/submesh.

Parameters:

  mapId | The ID of the map to get the texture coordinate data from.
  pTextureCoordinateBuffer | A pointer to the user-provided buffer where the texture coordinate data is written to.

Returns:
  The number of texture coordinates written to the buffer.

int CalRenderer::getVertexCount | ( |  | ) |

| Returns the number of vertices. This function returns the number of vertices in the selected mesh/submesh.

Returns:
  The number of vertices.

int CalRenderer::getVertices | ( | float * | pVertexBuffer | ) |

| Provides access to the vertex data. This function returns the vertex data of the selected mesh/submesh.

Parameters:

  pVertexBuffer | A pointer to the user-provided buffer where the vertex data is written to.

Returns:
  The number of vertices written to the buffer.

int CalRenderer::getVerticesAndNormals | ( | float * | pVertexBuffer | ) |

| Provides access to the submesh data. This function returns the vertex and normal data of the selected mesh/submesh.

Parameters:

  pVertexBuffer | A pointer to the user-provided buffer where the vertex and normal data is written to.

Returns:
  The number of vertex written to the buffer.

int CalRenderer::getVerticesNormalsAndTexCoords | ( | float * | pVertexBuffer,
|  | int | NumTexCoords = 1
| ) |

| Provides access to the submesh data. This function returns the vertex and normal data of the selected mesh/submesh.

Parameters:

  pVertexBuffer | A pointer to the user-provided buffer where the vertex and normal data is written to.

Returns:
  The number of vertex written to the buffer.

bool CalRenderer::isTangentsEnabled | ( | int | mapId | ) |

| Returns if tangent are enabled. This function returns if tangent of the current submesh are enabled

Returns:
  True is tangent is enabled.

bool CalRenderer::selectMeshSubmesh | ( | int | meshId,
|  | int | submeshId
| ) |

| Selects a mesh/submesh for rendering data queries. This function selects a mesh/submesh for further rendering data queries.

Parameters:

  meshId | The ID of the mesh that should be used for further rendering data queries.
  submeshId | The ID of the submesh that should be used for further rendering data queries.

Returns:
  One of the following values:
  - true if successful
  - false if an error happend

void CalRenderer::setNormalization | ( | bool | normalize | ) |

| Sets the normalization flag to true or false. This function sets the normalization flag on or off. If off, the normals calculated by Cal3D will not be normalized. Instead, this transform is left up to the user.

The documentation for this class was generated from the following files:

- renderer.h
- renderer.cpp

Generated at Wed Apr 7 16:57:18 2004 by The Cal3D Team with 1.3.6 © 1997-2001 Dimitri van Heesch