Normal Map Lighting extension sub render state implementation.
More...
#include <OgreShaderExNormalMapLighting.h>
Normal Map Lighting extension sub render state implementation.
Derives from SubRenderState class.
◆ NormalMapSpace
Normal map space definition.
Enumerator |
---|
NMS_TANGENT | Normal map contains normal data in tangent space.
This is the default normal mapping behavior and it requires that the target mesh will have valid tangents within its vertex data.
|
NMS_OBJECT | Normal map contains normal data in object local space.
This normal mapping technique has the advantages of better visualization results, lack of artifacts that comes from texture mirroring usage, it doesn't requires tangent and it also saves some instruction in the vertex shader stage. The main drawback of using this kind of normal map is that the target object must be static in terms of local space rotations and translations.
|
◆ NormalMapLighting()
Ogre::RTShader::NormalMapLighting::NormalMapLighting |
( |
| ) |
|
Class default constructor.
◆ getType()
virtual const String& Ogre::RTShader::NormalMapLighting::getType |
( |
| ) |
const |
|
virtual |
◆ updateGpuProgramsParams()
◆ copyFrom()
virtual void Ogre::RTShader::NormalMapLighting::copyFrom |
( |
const SubRenderState & |
rhs | ) |
|
|
virtual |
◆ preAddToRenderState()
virtual bool Ogre::RTShader::NormalMapLighting::preAddToRenderState |
( |
const RenderState * |
renderState, |
|
|
Pass * |
srcPass, |
|
|
Pass * |
dstPass |
|
) |
| |
|
virtual |
◆ setTexCoordIndex()
void Ogre::RTShader::NormalMapLighting::setTexCoordIndex |
( |
unsigned int |
index | ) |
|
|
inline |
Set the index of the input vertex shader texture coordinate set.
◆ getTexCoordIndex()
unsigned int Ogre::RTShader::NormalMapLighting::getTexCoordIndex |
( |
| ) |
const |
|
inline |
Return the index of the input vertex shader texture coordinate set.
◆ setNormalMapSpace()
void Ogre::RTShader::NormalMapLighting::setNormalMapSpace |
( |
NormalMapSpace |
normalMapSpace | ) |
|
|
inline |
Set the normal map space.
- Parameters
-
normalMapSpace | The normal map space. |
◆ getNormalMapSpace()
NormalMapSpace Ogre::RTShader::NormalMapLighting::getNormalMapSpace |
( |
| ) |
const |
|
inline |
Return the normal map space.
◆ setNormalMapTextureName()
void Ogre::RTShader::NormalMapLighting::setNormalMapTextureName |
( |
const String & |
textureName | ) |
|
|
inline |
Set the normal map texture name.
◆ getNormalMapTextureName()
const String& Ogre::RTShader::NormalMapLighting::getNormalMapTextureName |
( |
| ) |
const |
|
inline |
Return the normal map texture name.
◆ setNormalMapFiltering()
Set the normal map filtering attributes.
- Parameters
-
minFilter | The desired min filter. |
magFilter | The desired mag filter. |
mipFilter | The desired mip filter. |
◆ getNormalMapFiltering()
Return the normal map filtering attributes.
- Parameters
-
minFilter | The desired min filter. |
magFilter | The desired mag filter. |
mipFilter | The desired mip filter. |
◆ setNormalMapAnisotropy()
void Ogre::RTShader::NormalMapLighting::setNormalMapAnisotropy |
( |
unsigned int |
anisotropy | ) |
|
|
inline |
Setup the normal map anisotropy value.
- Parameters
-
anisotropy | The anisotropy value. |
◆ getNormalMapAnisotropy()
unsigned int Ogre::RTShader::NormalMapLighting::getNormalMapAnisotropy |
( |
| ) |
const |
|
inline |
Return the normal map anisotropy value.
◆ setNormalMapMipBias()
void Ogre::RTShader::NormalMapLighting::setNormalMapMipBias |
( |
Real |
mipBias | ) |
|
|
inline |
Setup the normal map map mip bias value.
- Parameters
-
mipBias | The map mip bias value. |
◆ getNormalMapMipBias()
Real Ogre::RTShader::NormalMapLighting::getNormalMapMipBias |
( |
| ) |
const |
|
inline |
Return the normal map mip bias value.
◆ getExecutionOrder()
virtual int Ogre::RTShader::PerPixelLighting::getExecutionOrder |
( |
| ) |
const |
|
virtualinherited |
◆ createCpuSubPrograms()
virtual bool Ogre::RTShader::SubRenderState::createCpuSubPrograms |
( |
ProgramSet * |
programSet | ) |
|
|
virtualinherited |
Create sub programs that represents this sub render state as part of a program set.
The given program set contains CPU programs that represents a vertex shader and pixel shader. One should use these program class API to create a representation of the sub state he wished to implement.
- Parameters
-
programSet | container class of CPU and GPU programs that this sub state will affect on. |
Reimplemented in Ogre::RTShader::FFPTransform.
◆ getAccessor() [1/2]
◆ getAccessor() [2/2]
◆ Type
String Ogre::RTShader::NormalMapLighting::Type |
|
static |
The documentation for this class was generated from the following file: