52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
//
|
|
//
|
|
// win_lightefects.h
|
|
//
|
|
// Declaration of class for pixel shader light effects
|
|
//
|
|
//
|
|
|
|
|
|
#ifndef _WIN_LIGHTEFFECTS_H_
|
|
#define _WIN_LIGHTEFFECTS_H_
|
|
|
|
|
|
class LightEffects
|
|
{
|
|
public:
|
|
LPDIRECT3DCUBETEXTURE8 m_pCubeMap; // Normalization cubemap
|
|
LPDIRECT3DTEXTURE8 m_pBumpMap;
|
|
// LPDIRECT3DTEXTURE8 m_pSpecularMap;
|
|
LPDIRECT3DVOLUMETEXTURE8 m_pFalloffMap;
|
|
DWORD m_dwVertexShaderLight;
|
|
DWORD m_dwPixelShaderLight;
|
|
/*DWORD m_dwVertexShaderSpecular_Dynamic;
|
|
DWORD m_dwPixelShaderSpecular_Dynamic;
|
|
DWORD m_dwVertexShaderSpecular_Static;
|
|
DWORD m_dwPixelShaderSpecular_Static;*/
|
|
DWORD m_dwVertexShaderEnvironment;
|
|
DWORD m_dwVertexShaderBump;
|
|
DWORD m_dwPixelShaderBump;
|
|
bool m_bInLightPhase;
|
|
bool m_bInitialized;
|
|
|
|
public:
|
|
LightEffects();
|
|
virtual ~LightEffects();
|
|
|
|
bool Initialize();
|
|
void ProcessVertices(D3DXVECTOR3* pPtLightPos);
|
|
bool RenderDynamicLights();
|
|
/*bool RenderStaticLights();
|
|
void RenderSpecular();
|
|
bool RenderSpecular_Dynamic();
|
|
bool RenderSpecular_Static();*/
|
|
bool RenderEnvironment();
|
|
void RenderBump();
|
|
bool CreateNormalizationCubeMap( DWORD dwSize, LPDIRECT3DCUBETEXTURE8* ppCubeMap );
|
|
void StartLightPhase();
|
|
void EndLightPhase();
|
|
};
|
|
|
|
|
|
#endif |