- 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

CalModelm_pModel
CalSubmeshm_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:
Generated at Wed Dec 8 21:50:45 2004 by The Cal3D Team with doxygen 1.3.9.1 © 1997-2001 Dimitri van Heesch