OpenBarnyard
 
Loading...
Searching...
No Matches
AGrassMaterial Class Reference

#include <AGrassMaterial.h>

Inheritance diagram for AGrassMaterial:
AGrassMaterialHAL

Public Types

using ThisClass = AGrassMaterial
 
using BaseClass = Toshi::TMaterial
 
using BLENDMODE = TINT
 

Public Member Functions

virtual Toshi::TClass * GetClass () override
 
 AGrassMaterial ()
 
 ~AGrassMaterial ()
 
virtual TBOOL Create (BLENDMODE a_eBlendMode)
 
virtual void SetBlendMode (BLENDMODE a_eBlendMode)
 
void SetTexture (TUINT a_uiStage, Toshi::TTexture *a_pTexture)
 

Static Public Member Functions

static Toshi::TObject * CreateTObject ()
 
static Toshi::TObject * CreateTObjectInPlace (void *a_pPtr)
 
static void InitialiseClass ()
 
static void DeinitialiseClass ()
 
static __forceinline Toshi::TClass * GetClassStatic ()
 
static void InitialiseStatic ()
 

Static Public Attributes

static constexpr Toshi::TClass * PARENTCLASS = & Toshi::TMaterial::ms_oClass
 
static Toshi::TClass ms_oClass = Toshi::TClass( "AGrassMaterial", AGrassMaterial::PARENTCLASS, AGrassMaterial::CreateTObject, AGrassMaterial::CreateTObjectInPlace, AGrassMaterial::InitialiseClass, AGrassMaterial::DeinitialiseClass, 0, 1, sizeof( AGrassMaterial ), alignof( AGrassMaterial ) )
 

Protected Attributes

Toshi::TTexture * m_aTextures [AWorldMaterial::MAX_TEXTURES]
 
BLENDMODE m_eBlendMode
 

Detailed Description

Definition at line 7 of file AGrassMaterial.h.

Member Typedef Documentation

◆ BaseClass

using AGrassMaterial::BaseClass = Toshi::TMaterial

Definition at line 11 of file AGrassMaterial.h.

◆ BLENDMODE

Definition at line 13 of file AGrassMaterial.h.

◆ ThisClass

Definition at line 11 of file AGrassMaterial.h.

Constructor & Destructor Documentation

◆ AGrassMaterial()

AGrassMaterial::AGrassMaterial ( )

Definition at line 17 of file AGrassMaterial.cpp.

18 : m_eBlendMode( 0 )
19{
20 m_aTextures[ 0 ] = TNULL;
21 m_aTextures[ 1 ] = TNULL;
22 m_aTextures[ 2 ] = TNULL;
23 m_aTextures[ 3 ] = TNULL;
24}
#define TNULL
Definition Typedefs.h:23
BLENDMODE m_eBlendMode
Toshi::TTexture * m_aTextures[AWorldMaterial::MAX_TEXTURES]

◆ ~AGrassMaterial()

AGrassMaterial::~AGrassMaterial ( )

Definition at line 28 of file AGrassMaterial.cpp.

29{
30 TRegMaterial* pRegMaterial = GetRegMaterial();
31
32 if ( pRegMaterial != TNULL )
33 {
34 TOrderTable::DeregisterMaterial( pRegMaterial );
35 }
36}
static void DeregisterMaterial(TRegMaterial *a_pRegMat)

Member Function Documentation

◆ Create()

TBOOL AGrassMaterial::Create ( BLENDMODE a_eBlendMode)
virtual

Definition at line 38 of file AGrassMaterial.cpp.

39{
40 SetBlendMode( a_eBlendMode );
41 return TMaterial::Create();
42}
virtual TBOOL Create()
Definition TMaterial.cpp:40
virtual void SetBlendMode(BLENDMODE a_eBlendMode)

◆ CreateTObject()

Toshi::TObject * AGrassMaterial::CreateTObject ( )
static

Definition at line 14 of file AGrassMaterial.cpp.

◆ CreateTObjectInPlace()

Toshi::TObject * AGrassMaterial::CreateTObjectInPlace ( void * a_pPtr)
static

Definition at line 14 of file AGrassMaterial.cpp.

◆ DeinitialiseClass()

void AGrassMaterial::DeinitialiseClass ( )
static

Definition at line 14 of file AGrassMaterial.cpp.

◆ GetClass()

Toshi::TClass * AGrassMaterial::GetClass ( )
overridevirtual

Reimplemented in AGrassMaterialHAL.

Definition at line 14 of file AGrassMaterial.cpp.

◆ GetClassStatic()

static __forceinline Toshi::TClass * AGrassMaterial::GetClassStatic ( )
inlinestatic

Definition at line 11 of file AGrassMaterial.h.

◆ InitialiseClass()

void AGrassMaterial::InitialiseClass ( )
static

Definition at line 14 of file AGrassMaterial.cpp.

◆ InitialiseStatic()

static void AGrassMaterial::InitialiseStatic ( )
static

◆ SetBlendMode()

void AGrassMaterial::SetBlendMode ( BLENDMODE a_eBlendMode)
virtual

Definition at line 44 of file AGrassMaterial.cpp.

45{
46 m_eBlendMode = a_eBlendMode;
47 m_Flags &= ~FLAGS_BLENDING;
48
49 if ( a_eBlendMode != 0 )
50 m_Flags |= FLAGS_BLENDING;
51}

◆ SetTexture()

void AGrassMaterial::SetTexture ( TUINT a_uiStage,
Toshi::TTexture * a_pTexture )
inline

Definition at line 27 of file AGrassMaterial.h.

28 {
30 m_aTextures[ a_uiStage ] = a_pTexture;
31 }
#define TASSERT(X,...)
Definition Defines.h:138
static constexpr TUINT MAX_TEXTURES

Member Data Documentation

◆ m_aTextures

Toshi::TTexture* AGrassMaterial::m_aTextures[AWorldMaterial::MAX_TEXTURES]
protected

Definition at line 34 of file AGrassMaterial.h.

◆ m_eBlendMode

BLENDMODE AGrassMaterial::m_eBlendMode
protected

Definition at line 35 of file AGrassMaterial.h.

◆ ms_oClass

Toshi::TClass AGrassMaterial::ms_oClass = Toshi::TClass( "AGrassMaterial", AGrassMaterial::PARENTCLASS, AGrassMaterial::CreateTObject, AGrassMaterial::CreateTObjectInPlace, AGrassMaterial::InitialiseClass, AGrassMaterial::DeinitialiseClass, 0, 1, sizeof( AGrassMaterial ), alignof( AGrassMaterial ) )
static

Definition at line 11 of file AGrassMaterial.h.

◆ PARENTCLASS

Toshi::TClass* AGrassMaterial::PARENTCLASS = & Toshi::TMaterial::ms_oClass
staticconstexpr

Definition at line 11 of file AGrassMaterial.h.


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