CrystalSpace

Public API Reference

Public Member Functions
iVertexLightCalculator Struct Reference

Interface to calculate lighting for a number of vertices. More...

#include <csgfx/vertexlight.h>

Inheritance diagram for iVertexLightCalculator:
csVertexLightCalculator< LightProc >

List of all members.

Public Member Functions

virtual void CalculateLighting (const csLightProperties &light, const csVector3 &eyePos, float shininess, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, iRenderBuffer *litColor, iRenderBuffer *specColor=0) const =0
 Compute lighting, overwrite the destination colors.
virtual void CalculateLightingAdd (const csLightProperties &light, const csVector3 &eyePos, float shininess, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, iRenderBuffer *litColor, iRenderBuffer *specColor=0) const =0
 Compute lighting, add lit colors to the destination colors.
virtual void CalculateLightingMul (const csLightProperties &light, const csVector3 &eyePos, float shininess, size_t numvert, iRenderBuffer *vb, iRenderBuffer *nb, iRenderBuffer *litColor, iRenderBuffer *specColor=0) const =0
 Compute lighting, multiply lit colors with destination colors.

Detailed Description

Interface to calculate lighting for a number of vertices.

Definition at line 422 of file vertexlight.h.


Member Function Documentation

virtual void iVertexLightCalculator::CalculateLighting ( const csLightProperties light,
const csVector3 eyePos,
float  shininess,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
iRenderBuffer litColor,
iRenderBuffer specColor = 0 
) const [pure virtual]

Compute lighting, overwrite the destination colors.

Parameters:
lightProperties of the light to compute.
eyePosPosition of the eye, in object space.
shininessSpecular exponent.
numvertNumber of vertices and normals.
vbVertices. Buffer should contain (at least) 3 component vectors.
nbNormals. Buffer should contain (at least) 3 component vectors.
litColorDestination buffer for diffuse colors.
specColorDestination buffer for specular colors.

Implemented in csVertexLightCalculator< LightProc >.

virtual void iVertexLightCalculator::CalculateLightingAdd ( const csLightProperties light,
const csVector3 eyePos,
float  shininess,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
iRenderBuffer litColor,
iRenderBuffer specColor = 0 
) const [pure virtual]

Compute lighting, add lit colors to the destination colors.

Compute lighting, overwrite the destination colors.

Parameters:
lightProperties of the light to compute.
eyePosPosition of the eye, in object space.
shininessSpecular exponent.
numvertNumber of vertices and normals.
vbVertices. Buffer should contain (at least) 3 component vectors.
nbNormals. Buffer should contain (at least) 3 component vectors.
litColorDestination buffer for diffuse colors.
specColorDestination buffer for specular colors.

Implemented in csVertexLightCalculator< LightProc >.

virtual void iVertexLightCalculator::CalculateLightingMul ( const csLightProperties light,
const csVector3 eyePos,
float  shininess,
size_t  numvert,
iRenderBuffer vb,
iRenderBuffer nb,
iRenderBuffer litColor,
iRenderBuffer specColor = 0 
) const [pure virtual]

Compute lighting, multiply lit colors with destination colors.

Compute lighting, overwrite the destination colors.

Parameters:
lightProperties of the light to compute.
eyePosPosition of the eye, in object space.
shininessSpecular exponent.
numvertNumber of vertices and normals.
vbVertices. Buffer should contain (at least) 3 component vectors.
nbNormals. Buffer should contain (at least) 3 component vectors.
litColorDestination buffer for diffuse colors.
specColorDestination buffer for specular colors.

Implemented in csVertexLightCalculator< LightProc >.


The documentation for this struct was generated from the following file:

Generated for Crystal Space 2.0 by doxygen 1.7.6.1