CrystalSpace

Public API Reference

csVertexLightCalculator< LightProc > Class Template Reference

iVertexLightCalculator implementation that takes one of csPointLightProc, csDirectionalLightProc or csSpotLightProc for LightProc to compute lighting for a light of the respective type. More...

#include <csgfx/vertexlight.h>

Inheritance diagram for csVertexLightCalculator< LightProc >:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void CalculateLighting (const csLightProperties &light, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, csColor *litColor) const
 Compute lighting, overwrite the destination colors.
virtual void CalculateLightingAdd (const csLightProperties &light, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, csColor *litColor) const
 Compute lighting, add lit colors to the destination colors.
virtual void CalculateLightingMul (const csLightProperties &light, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, csColor *litColor) const
 Compute lighting, multiply lit colors with destination colors.

Detailed Description

template<class LightProc>
class csVertexLightCalculator< LightProc >

iVertexLightCalculator implementation that takes one of csPointLightProc, csDirectionalLightProc or csSpotLightProc for LightProc to compute lighting for a light of the respective type.

Definition at line 376 of file vertexlight.h.


Member Function Documentation

template<class LightProc>
virtual void csVertexLightCalculator< LightProc >::CalculateLighting const csLightProperties light,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
csColor litColor
const [inline, virtual]
 

Compute lighting, overwrite the destination colors.

Parameters:
light Properties of the light to compute.
numvert Number of vertices and normals.
vb Vertices. Buffer should contain (at least) 3 component vectors.
nb Normals. Buffer should contain (at least) 3 component vectors.
litColor Destination colors.

Implements iVertexLightCalculator.

Definition at line 379 of file vertexlight.h.

template<class LightProc>
virtual void csVertexLightCalculator< LightProc >::CalculateLightingAdd const csLightProperties light,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
csColor litColor
const [inline, virtual]
 

Compute lighting, add lit colors to the destination colors.

Compute lighting, overwrite the destination colors.

Parameters:
light Properties of the light to compute.
numvert Number of vertices and normals.
vb Vertices. Buffer should contain (at least) 3 component vectors.
nb Normals. Buffer should contain (at least) 3 component vectors.
litColor Destination colors.

Implements iVertexLightCalculator.

Definition at line 394 of file vertexlight.h.

template<class LightProc>
virtual void csVertexLightCalculator< LightProc >::CalculateLightingMul const csLightProperties light,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
csColor litColor
const [inline, virtual]
 

Compute lighting, multiply lit colors with destination colors.

Compute lighting, overwrite the destination colors.

Parameters:
light Properties of the light to compute.
numvert Number of vertices and normals.
vb Vertices. Buffer should contain (at least) 3 component vectors.
nb Normals. Buffer should contain (at least) 3 component vectors.
litColor Destination colors.

Implements iVertexLightCalculator.

Definition at line 410 of file vertexlight.h.


The documentation for this class was generated from the following file:
Generated for Crystal Space by doxygen 1.4.6