You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
3.3 KiB
97 lines
3.3 KiB
//========= Copyright Valve Corporation, All rights reserved. ============// |
|
// |
|
// Purpose: |
|
// |
|
//============================================================================= |
|
#include "cbase.h" |
|
|
|
extern bool g_bUseCustomAutoExposureMin; |
|
extern bool g_bUseCustomAutoExposureMax; |
|
extern bool g_bUseCustomBloomScale; |
|
extern float g_flCustomAutoExposureMin; |
|
extern float g_flCustomAutoExposureMax; |
|
extern float g_flCustomBloomScale; |
|
extern float g_flCustomBloomScaleMinimum; |
|
|
|
EHANDLE g_hTonemapControllerInUse = NULL; |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: |
|
//----------------------------------------------------------------------------- |
|
class C_EnvTonemapController : public C_BaseEntity |
|
{ |
|
DECLARE_CLASS( C_EnvTonemapController, C_BaseEntity ); |
|
public: |
|
DECLARE_CLIENTCLASS(); |
|
|
|
C_EnvTonemapController(); |
|
~C_EnvTonemapController(); |
|
virtual void OnDataChanged( DataUpdateType_t updateType ); |
|
|
|
private: |
|
bool m_bUseCustomAutoExposureMin; |
|
bool m_bUseCustomAutoExposureMax; |
|
bool m_bUseCustomBloomScale; |
|
float m_flCustomAutoExposureMin; |
|
float m_flCustomAutoExposureMax; |
|
float m_flCustomBloomScale; |
|
float m_flCustomBloomScaleMinimum; |
|
private: |
|
C_EnvTonemapController( const C_EnvTonemapController & ); |
|
}; |
|
|
|
IMPLEMENT_CLIENTCLASS_DT( C_EnvTonemapController, DT_EnvTonemapController, CEnvTonemapController ) |
|
RecvPropInt( RECVINFO(m_bUseCustomAutoExposureMin) ), |
|
RecvPropInt( RECVINFO(m_bUseCustomAutoExposureMax) ), |
|
RecvPropInt( RECVINFO(m_bUseCustomBloomScale) ), |
|
RecvPropFloat( RECVINFO(m_flCustomAutoExposureMin) ), |
|
RecvPropFloat( RECVINFO(m_flCustomAutoExposureMax) ), |
|
RecvPropFloat( RECVINFO(m_flCustomBloomScale) ), |
|
RecvPropFloat( RECVINFO(m_flCustomBloomScaleMinimum) ), |
|
END_RECV_TABLE() |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: |
|
//----------------------------------------------------------------------------- |
|
C_EnvTonemapController::C_EnvTonemapController( void ) |
|
{ |
|
m_bUseCustomAutoExposureMin = false; |
|
m_bUseCustomAutoExposureMax = false; |
|
m_bUseCustomBloomScale = false; |
|
m_flCustomAutoExposureMin = 0; |
|
m_flCustomAutoExposureMax = 0; |
|
m_flCustomBloomScale = 0.0f; |
|
m_flCustomBloomScaleMinimum = 0.0f; |
|
} |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: |
|
//----------------------------------------------------------------------------- |
|
C_EnvTonemapController::~C_EnvTonemapController( void ) |
|
{ |
|
if ( g_hTonemapControllerInUse == this ) |
|
{ |
|
g_bUseCustomAutoExposureMin = false; |
|
g_bUseCustomAutoExposureMax = false; |
|
g_bUseCustomBloomScale = false; |
|
} |
|
} |
|
|
|
//----------------------------------------------------------------------------- |
|
// Purpose: |
|
//----------------------------------------------------------------------------- |
|
void C_EnvTonemapController::OnDataChanged( DataUpdateType_t updateType ) |
|
{ |
|
BaseClass::OnDataChanged(updateType); |
|
|
|
g_bUseCustomAutoExposureMin = m_bUseCustomAutoExposureMin; |
|
g_bUseCustomAutoExposureMax = m_bUseCustomAutoExposureMax; |
|
g_bUseCustomBloomScale = m_bUseCustomBloomScale; |
|
g_flCustomAutoExposureMin = m_flCustomAutoExposureMin; |
|
g_flCustomAutoExposureMax = m_flCustomAutoExposureMax; |
|
g_flCustomBloomScale = m_flCustomBloomScale; |
|
g_flCustomBloomScaleMinimum = m_flCustomBloomScaleMinimum; |
|
|
|
g_hTonemapControllerInUse = this; |
|
} |
|
|
|
|