Project

General

Profile

SO3Engine
SO3::ShaderGeneratorTechniqueResolverListener Class Reference

#include <SO3Root.h>

Inheritance diagram for SO3::ShaderGeneratorTechniqueResolverListener:

Public Member Functions

virtual Ogre::Technique * handleSchemeNotFound (unsigned short schemeIndex, const Ogre::String &schemeName, Ogre::Material *originalMaterial, unsigned short lodIndex, const Ogre::Renderable *rend)
 
virtual bool afterIlluminationPassesCreated (Ogre::Technique *tech)
 
virtual bool beforeIlluminationPassesCleared (Ogre::Technique *tech)
 

Detailed Description

This class demonstrates basic usage of the RTShader system. It sub class the material manager listener class and when a target scheme callback is invoked with the shader generator scheme it tries to create an equivalent shader based technique based on the default technique of the given material.

Definition at line 55 of file SO3Root.h.

Member Function Documentation

◆ afterIlluminationPassesCreated()

bool SO3::ShaderGeneratorTechniqueResolverListener::afterIlluminationPassesCreated ( Ogre::Technique *  tech)
virtual

Definition at line 2629 of file SO3Root.cpp.

◆ beforeIlluminationPassesCleared()

bool SO3::ShaderGeneratorTechniqueResolverListener::beforeIlluminationPassesCleared ( Ogre::Technique *  tech)
virtual

Definition at line 2641 of file SO3Root.cpp.

◆ handleSchemeNotFound()

Ogre::Technique * SO3::ShaderGeneratorTechniqueResolverListener::handleSchemeNotFound ( unsigned short  schemeIndex,
const Ogre::String &  schemeName,
Ogre::Material *  originalMaterial,
unsigned short  lodIndex,
const Ogre::Renderable *  rend 
)
virtual

This is the hook point where shader based technique will be created. It will be called whenever the material manager won't find appropriate technique that satisfy the target scheme name. If the scheme name is out target RT Shader System scheme name we will try to create shader generated technique for it.

Definition at line 2358 of file SO3Root.cpp.


The documentation for this class was generated from the following files: