Main Page -
Class Hierarchy -
Class List -
File List -
Class Members -
Related Pages -

Information | Reference | SourceForge Project | Author
Muli3D

Reference: Muli3D: IMuli3DBaseShader Class Reference

IMuli3DBaseShader Class Reference

#include <m3dcore_baseshader.h>

Inheritance diagram for IMuli3DBaseShader:

IBase IMuli3DPixelShader IMuli3DTriangleShader IMuli3DVertexShader List of all members.

Detailed Description

This is the shader base-class, which implements support for float, vector4 and matrix constants-registers.


Public Member Functions

float32 fGetFloat (uint32 i_iIndex)
const matrix44 & matGetMatrix (uint32 i_iIndex)
void SetFloat (uint32 i_iIndex, float32 i_fValue)
void SetMatrix (uint32 i_iIndex, const matrix44 &i_matMatrix)
void SetVector (uint32 i_iIndex, const vector4 &i_vVector)
const vector4 & vGetVector (uint32 i_iIndex)

Protected Member Functions

result SampleTexture (vector4 &o_vColor, uint32 i_iSamplerNumber, float32 i_fU, float32 i_fV, float32 i_fW=0.0f, const vector4 *i_pXGradient=0, const vector4 *i_pYGradient=0)
void SetDevice (class CMuli3DDevice *i_pDevice)


Member Function Documentation

float32 IMuli3DBaseShader::fGetFloat uint32  i_iIndex  ) 
 

Returns the value of a single float-constant.

Parameters:
[in] i_iIndex index of the constant.

const matrix44 & IMuli3DBaseShader::matGetMatrix uint32  i_iIndex  ) 
 

Returns the value of a matrix-constant.

Parameters:
[in] i_iIndex index of the constant.

result IMuli3DBaseShader::SampleTexture vector4 &  o_vColor,
uint32  i_iSamplerNumber,
float32  i_fU,
float32  i_fV,
float32  i_fW = 0.0f,
const vector4 *  i_pXGradient = 0,
const vector4 *  i_pYGradient = 0
[protected]
 

Samples the texture and returns the looked-up color. This simply functions simply forwards the sampling-call to the device.

Parameters:
[out] o_vColor receives the color of the pixel to be looked up.
[in] i_iSamplerNumber number of the sampler.
[in] i_fU u-component of the lookup-vector.
[in] i_fV v-component of the lookup-vector.
[in] i_fW w-component of the lookup-vector.
[in] i_pXGradient partial derivatives of the texture coordinates with respect to the screen-space x coordinate (optional, base for mip-level calculations).
[in] i_pYGradient partial derivatives of the texture coordinates with respect to the screen-space y coordinate (optional, base for mip-level calculations).
Returns:
s_ok if the function succeeds.

e_invalidparameters if one or more parameters were invalid.

void IMuli3DBaseShader::SetDevice class CMuli3DDevice i_pDevice  )  [protected]
 

Accessible by CMuli3D - Sets the rendering-device.

Parameters:
[in] i_pDevice the device.

void IMuli3DBaseShader::SetFloat uint32  i_iIndex,
float32  i_fValue
 

Sets a single float-constant.

Parameters:
[in] i_iIndex index of the constant.
[in] i_fValue value of the constant.

void IMuli3DBaseShader::SetMatrix uint32  i_iIndex,
const matrix44 &  i_matMatrix
 

Sets a matrix-constant.

Parameters:
[in] i_iIndex index of the constant.
[in] i_matMatrix value of the constant.

void IMuli3DBaseShader::SetVector uint32  i_iIndex,
const vector4 &  i_vVector
 

Sets a vector4-constant.

Parameters:
[in] i_iIndex index of the constant.
[in] i_vVector value of the constant.

const vector4 & IMuli3DBaseShader::vGetVector uint32  i_iIndex  ) 
 

Returns the value of a vector4-constant.

Parameters:
[in] i_iIndex index of the constant.

Documentation created with doxygen SourceForge.net Logo