Ult3D
Implementation of "Ultimate 3D Game Engine Design & Architecture" by Allan Sherrod
Loading...
Searching...
No Matches
Ult::MultiTexShader Class Reference

#include <MultiTexShader.h>

Inheritance diagram for Ult::MultiTexShader:
Ult::Effect

Public Member Functions

 MultiTexShader (const char *vs, const char *ps, const char *decalFile1, const char *decalFile2, std::vector< FilterType > *filters, RenderInterface *renderer)
 
 ~MultiTexShader ()
 
void ApplyEffect ()
 
void Release ()
 
- Public Member Functions inherited from Ult::Effect
 Effect ()
 
virtual ~Effect ()
 

Protected Attributes

ShaderHandle mShader
 
ParameterHandle mMvpParam
 
ParameterHandle mDecalParam1
 
ParameterHandle mDecalParam2
 
Texture mDecalTexture1
 
Texture mDecalTexture2
 
RenderInterfacemRenderer
 

Detailed Description

Represents a 3d shader that uses 2 textures.

Constructor & Destructor Documentation

◆ MultiTexShader()

Ult::MultiTexShader::MultiTexShader ( const char * vs,
const char * ps,
const char * decalFile1,
const char * decalFile2,
std::vector< FilterType > * filters,
RenderInterface * renderer )
inline

MultiTexShader constructor. Loads the shader and two textures from the input filenames and applies the input filters to the textures.

◆ ~MultiTexShader()

Ult::MultiTexShader::~MultiTexShader ( )
inline

MultiTexShader destructor.

Member Function Documentation

◆ ApplyEffect()

void Ult::MultiTexShader::ApplyEffect ( )
inlinevirtual

Make the renderer use this shader and textures in slots 1 and 2.

Implements Ult::Effect.

◆ Release()

void Ult::MultiTexShader::Release ( )
inlinevirtual

Free the loaded textures.

Reimplemented from Ult::Effect.

Member Data Documentation

◆ mDecalParam1

ParameterHandle Ult::MultiTexShader::mDecalParam1
protected

◆ mDecalParam2

ParameterHandle Ult::MultiTexShader::mDecalParam2
protected

◆ mDecalTexture1

Texture Ult::MultiTexShader::mDecalTexture1
protected

◆ mDecalTexture2

Texture Ult::MultiTexShader::mDecalTexture2
protected

◆ mMvpParam

ParameterHandle Ult::MultiTexShader::mMvpParam
protected

◆ mRenderer

RenderInterface* Ult::MultiTexShader::mRenderer
protected

◆ mShader

ShaderHandle Ult::MultiTexShader::mShader
protected

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