42 lines
1.2 KiB
C
42 lines
1.2 KiB
C
|
|
#pragma once
|
||
|
|
|
||
|
|
class CEtOptionController
|
||
|
|
{
|
||
|
|
public:
|
||
|
|
CEtOptionController(void);
|
||
|
|
virtual ~CEtOptionController(void);
|
||
|
|
|
||
|
|
protected:
|
||
|
|
SGraphicOption m_Option;
|
||
|
|
|
||
|
|
public:
|
||
|
|
enum ReloadType
|
||
|
|
{
|
||
|
|
RELOAD_NONE,
|
||
|
|
RELOAD_TERRAIN_MATERIAL,
|
||
|
|
RELOAD_ALL_MATERIAL,
|
||
|
|
};
|
||
|
|
void Initialize( SGraphicOption &Option );
|
||
|
|
void ValidateOption();
|
||
|
|
void GenerateOptionMacro();
|
||
|
|
void SetGraphicOption( SGraphicOption &Option );
|
||
|
|
void GetGraphicOption( SGraphicOption &Option ) { Option = m_Option; }
|
||
|
|
|
||
|
|
ShadowType GetShadowType() { return m_Option.DynamicShadowType; }
|
||
|
|
bool IsEnableDynamicShadow() { return m_Option.DynamicShadowType != ST_NONE; }
|
||
|
|
|
||
|
|
void CheckShadowMap();
|
||
|
|
|
||
|
|
WaterQuality GetWaterQuality() { return m_Option.WaterQuality; }
|
||
|
|
int GetMaxDirLightCount() { return m_Option.nMaxDirLightCount; }
|
||
|
|
int GetMaxPointLightCount() { return m_Option.nMaxPointLightCount; }
|
||
|
|
int GetMaxSpotLightCount() { return m_Option.nMaxSpotLightcount; }
|
||
|
|
|
||
|
|
bool IsEnableDOF() { return m_Option.bEnableDOF; }
|
||
|
|
bool IsEnableMotionBlur() { return m_Option.bEnableMotionBlur; }
|
||
|
|
|
||
|
|
int GetGraphicQuality() { return m_Option.nGraphicQuality; }
|
||
|
|
};
|
||
|
|
|
||
|
|
extern CEtOptionController g_OptionController;
|
||
|
|
inline CEtOptionController *GetEtOptionController() { return &g_OptionController; }
|