- Cal3D 0.9 API Reference -

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

CalRenderer Class Reference

The renderer class. More...

#include <renderer.h>

List of all members.

Public Methods

 CalRenderer ()
 Constructs the renderer instance. More...

 CalRenderer (CalRenderer *pRenderer)
 Copy-constructor for the renderer instance. More...

virtual ~CalRenderer ()
 Destructs the renderer instance. More...

bool beginRendering ()
 Initializes the rendering query phase. More...

bool create (CalModel *pModel)
 Creates the renderer instance. More...

void destroy ()
 Destroys the renderer instance. More...

void endRendering ()
 Finishes the rendering query phase. More...

void getAmbientColor (unsigned char *pColorBuffer)
 Provides access to the ambient color. More...

void getDiffuseColor (unsigned char *pColorBuffer)
 Provides access to the diffuse color. More...

int getFaceCount ()
 Returns the number of faces. More...

int getFaces (CalIndex *pFaceBuffer)
 Provides access to the face data. More...

int getMapCount ()
 Returns the number of maps. More...

Cal::UserData getMapUserData (int mapId)
 Provides access to a specified map user data. More...

int getMeshCount ()
 Returns the number of attached meshes. More...

int getNormals (float *pNormalBuffer)
 Provides access to the normal data. More...

float getShininess ()
 Returns the shininess factor. More...

void getSpecularColor (unsigned char *pColorBuffer)
 Provides access to the specular color. More...

int getSubmeshCount (int meshId)
 Returns the number of submeshes. More...

int getTextureCoordinates (int mapId, float *pTextureCoordinateBuffer)
 Provides access to the texture coordinate data. More...

int getVertexCount ()
 Returns the number of vertices. More...

int getVertices (float *pVertexBuffer)
 Provides access to the vertex data. More...

int getTangentSpaces (int mapId, float *pTangentSpaceBuffer)
 Provides access to the tangent space data. More...

int getVerticesAndNormals (float *pVertexBuffer)
 Provides access to the submesh data. More...

int getVerticesNormalsAndTexCoords (float *pVertexBuffer, int NumTexCoords=1)
 Provides access to the submesh data. More...

bool isTangentsEnabled (int mapId)
 Returns if tangent are enabled. More...

bool selectMeshSubmesh (int meshId, int submeshId)
 Selects a mesh/submesh for rendering data queries. More...

void setNormalization (bool normalize)
 Sets the normalization flag to true or false. More...


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 Sun Oct 12 18:38:50 2003 by The Cal3D Team with doxygen 1.2.14 © 1997-2001 Dimitri van Heesch