OpenBarnyard
 
Loading...
Searching...
No Matches
ASkinShader.h
Go to the documentation of this file.
1#pragma once
2#include <Render/TShader.h>
3#include <Toshi/TSingleton.h>
4
5class ASkinMaterial;
6class ASkinMesh;
7
8class ASkinShader : public Toshi::TShader
9 , public Toshi::TSingleton<ASkinShader>
10{
11public:
12 TDECLARE_CLASS( ASkinShader, Toshi::TShader );
13
14public:
17
18 //-----------------------------------------------------------------------------
19 // Own methods
20 //-----------------------------------------------------------------------------
21 virtual void EnableRenderEnvMap( TBOOL a_bEnable );
22 virtual TBOOL IsHighEndSkinning();
23 virtual void EnableHighEndSkinning( TBOOL a_bEnable );
25 virtual TBOOL IsLightScattering();
26 virtual void SetLightScattering( TBOOL a_bEnable );
28 virtual void SetAlphaBlendMaterial( TBOOL a_bIsAlphaBlendMaterial );
29 virtual ASkinMaterial* CreateMaterial( const TCHAR* a_szName ) = 0;
30 virtual ASkinMesh* CreateMesh( const TCHAR* a_szName ) = 0;
31 virtual TINT AddLight( const Toshi::TVector3& a_rPosition, TFLOAT a_fIntensity ) = 0;
32 virtual void SetLight( TINT a_iIndex, const Toshi::TVector3& a_rPosition, TFLOAT a_fIntensity ) = 0;
33 virtual void RemoveLight( TINT a_iIndex ) = 0;
34 virtual void EnableClouds( TBOOL a_bEnabled );
35 virtual TBOOL IsEnabledClouds();
37 virtual void SetPointLights( TBOOL a_bEnabled );
39
40protected:
41 union
42 {
45 };
49};
Shader system for the Toshi engine.
int32_t TINT32
Definition Typedefs.h:12
char TCHAR
Definition Typedefs.h:20
uint8_t TUINT8
Definition Typedefs.h:17
float TFLOAT
Definition Typedefs.h:4
int TINT
Definition Typedefs.h:7
bool TBOOL
Definition Typedefs.h:6
virtual void EnableRenderEnvMap(TBOOL a_bEnable)
TUINT8 m_SomeColourComponents[8]
Definition ASkinShader.h:43
TDECLARE_CLASS(ASkinShader, Toshi::TShader)
virtual ASkinMesh * CreateMesh(const TCHAR *a_szName)=0
virtual TBOOL IsCapablePointLights()
virtual void SetPointLights(TBOOL a_bEnabled)
virtual ASkinMaterial * CreateMaterial(const TCHAR *a_szName)=0
TFLOAT m_Unk3
Definition ASkinShader.h:47
virtual void SetLightScattering(TBOOL a_bEnable)
virtual TBOOL IsEnabledClouds()
virtual void EnableClouds(TBOOL a_bEnabled)
virtual TBOOL IsPointLightsEnabled()
virtual void SetAlphaBlendMaterial(TBOOL a_bIsAlphaBlendMaterial)
virtual TBOOL IsHighEndSkinning()
virtual TBOOL IsLightScattering()
virtual void SetLight(TINT a_iIndex, const Toshi::TVector3 &a_rPosition, TFLOAT a_fIntensity)=0
virtual TINT AddLight(const Toshi::TVector3 &a_rPosition, TFLOAT a_fIntensity)=0
virtual void RemoveLight(TINT a_iIndex)=0
TINT32 m_SomeColour
Definition ASkinShader.h:44
virtual void EnableHighEndSkinning(TBOOL a_bEnable)
virtual TBOOL IsCapableHighEndSkinning()
virtual TBOOL IsAlphaBlendMaterial()