raSystem  1.0 bata
raMaterial Class Reference

#include <raMaterial.h>

Inheritance diagram for raMaterial:
raCMaterial raProceduralMaterial raTexturedMaterial raEntitySDKMaterial raGPUHeightmapMaterial raRTTMaterial raRFMaterial

Public Member Functions

 raMaterial (raSmartPointer< raDirectX > dx, raString EffectFile, raString Technique)
 
 ~raMaterial (void)
 
virtual bool Create ()
 
virtual bool Destroy ()
 
virtual bool CreateVertexLayout (const D3D11_INPUT_ELEMENT_DESC *pLayout, UINT nemElements, ID3D11InputLayout **ppInputLayout)
 
virtual void Setup ()
 
virtual void SetupPerFrame (const raLight *Light, const raMatrix *pView=NULL, const raMatrix *pProj=NULL)
 
virtual void SetupPerObject (const raMatrix &mWorld, const raMatrix &mWorldView, const raMatrix &mWorldViewProjection)
 
void SetAmbientColor (raColor Ambient)
 
void SetDiffuseColor (raColor Diffuse)
 
void SetTechnique (LPCSTR TechniqueName)
 
ID3DX11EffectGetEffect (void)
 
ID3DX11EffectTechniqueGetEffectTechnique (LPCSTR techniqueName="")
 
raString GetTechniqueName (void)
 
raString GetEffectFileName (void)
 
void SelectTechnique (raString techniqueName)
 

Public Attributes

bool m_bSelected
 

Static Public Attributes

static raEffectMap m_effects
 

Protected Member Functions

void CreateEffectFromCompiledFile (raString strFilename, DWORD dwShaderFlags)
 

Protected Attributes

raSmartPointer< raDirectXm_dx
 
raString m_EffectFileName
 
raString m_TechniqueName
 
ID3DX11Effectm_pEffect
 
ID3DX11EffectTechniquem_pTechnique
 
ID3DX11EffectVectorVariablem_pMaterialDiffuseColorVariable
 
ID3DX11EffectVectorVariablem_pMaterialAmbientVariable
 
ID3DX11EffectScalarVariablem_pSelectedVariable
 
raColor m_DiffuseColor
 
raColor m_AmbientColor
 

Detailed Description

Definition at line 5 of file raMaterial.h.

Constructor & Destructor Documentation

◆ raMaterial()

raMaterial::raMaterial ( raSmartPointer< raDirectX dx,
raString  EffectFile,
raString  Technique 
)

Definition at line 35 of file raMaterial.cpp.

◆ ~raMaterial()

raMaterial::~raMaterial ( void  )

Definition at line 53 of file raMaterial.cpp.

Member Function Documentation

◆ Create()

bool raMaterial::Create ( void  )
virtual

◆ CreateEffectFromCompiledFile()

void raMaterial::CreateEffectFromCompiledFile ( raString  strFilename,
DWORD  dwShaderFlags 
)
protected

Definition at line 7 of file raMaterial.cpp.

◆ CreateVertexLayout()

bool raMaterial::CreateVertexLayout ( const D3D11_INPUT_ELEMENT_DESC *  pLayout,
UINT  nemElements,
ID3D11InputLayout **  ppInputLayout 
)
virtual

Definition at line 104 of file raMaterial.cpp.

◆ Destroy()

bool raMaterial::Destroy ( void  )
virtual

Reimplemented in raGPUHeightmapMaterial, raRTTMaterial, raProceduralMaterial, and raTexturedMaterial.

Definition at line 99 of file raMaterial.cpp.

◆ GetEffect()

ID3DX11Effect* raMaterial::GetEffect ( void  )
inline

Definition at line 30 of file raMaterial.h.

◆ GetEffectFileName()

raString raMaterial::GetEffectFileName ( void  )
inline

Definition at line 39 of file raMaterial.h.

◆ GetEffectTechnique()

ID3DX11EffectTechnique* raMaterial::GetEffectTechnique ( LPCSTR  techniqueName = "")
inline

Definition at line 31 of file raMaterial.h.

◆ GetTechniqueName()

raString raMaterial::GetTechniqueName ( void  )
inline

Definition at line 38 of file raMaterial.h.

◆ SelectTechnique()

void raMaterial::SelectTechnique ( raString  techniqueName)
inline

Definition at line 41 of file raMaterial.h.

◆ SetAmbientColor()

void raMaterial::SetAmbientColor ( raColor  Ambient)
inline

Definition at line 22 of file raMaterial.h.

◆ SetDiffuseColor()

void raMaterial::SetDiffuseColor ( raColor  Diffuse)
inline

Definition at line 23 of file raMaterial.h.

◆ SetTechnique()

void raMaterial::SetTechnique ( LPCSTR  TechniqueName)
inline

Definition at line 24 of file raMaterial.h.

◆ Setup()

void raMaterial::Setup ( )
virtual

◆ SetupPerFrame()

void raMaterial::SetupPerFrame ( const raLight Light,
const raMatrix pView = NULL,
const raMatrix pProj = NULL 
)
virtual

Definition at line 135 of file raMaterial.cpp.

◆ SetupPerObject()

void raMaterial::SetupPerObject ( const raMatrix mWorld,
const raMatrix mWorldView,
const raMatrix mWorldViewProjection 
)
virtual

Definition at line 121 of file raMaterial.cpp.

Member Data Documentation

◆ m_AmbientColor

raColor raMaterial::m_AmbientColor
protected

Definition at line 64 of file raMaterial.h.

◆ m_bSelected

bool raMaterial::m_bSelected

Definition at line 49 of file raMaterial.h.

◆ m_DiffuseColor

raColor raMaterial::m_DiffuseColor
protected

Definition at line 63 of file raMaterial.h.

◆ m_dx

raSmartPointer<raDirectX> raMaterial::m_dx
protected

Definition at line 53 of file raMaterial.h.

◆ m_EffectFileName

raString raMaterial::m_EffectFileName
protected

Definition at line 54 of file raMaterial.h.

◆ m_effects

raEffectMap raMaterial::m_effects
static

Definition at line 48 of file raMaterial.h.

◆ m_pEffect

ID3DX11Effect* raMaterial::m_pEffect
protected

Definition at line 57 of file raMaterial.h.

◆ m_pMaterialAmbientVariable

ID3DX11EffectVectorVariable* raMaterial::m_pMaterialAmbientVariable
protected

Definition at line 60 of file raMaterial.h.

◆ m_pMaterialDiffuseColorVariable

ID3DX11EffectVectorVariable* raMaterial::m_pMaterialDiffuseColorVariable
protected

Definition at line 59 of file raMaterial.h.

◆ m_pSelectedVariable

ID3DX11EffectScalarVariable* raMaterial::m_pSelectedVariable
protected

Definition at line 61 of file raMaterial.h.

◆ m_pTechnique

ID3DX11EffectTechnique* raMaterial::m_pTechnique
protected

Definition at line 58 of file raMaterial.h.

◆ m_TechniqueName

raString raMaterial::m_TechniqueName
protected

Definition at line 55 of file raMaterial.h.


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