Counter Strike : Global Offensive Source Code
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.
|
|
//====== Copyright � 1996-2005, Valve Corporation, All rights reserved. =======
//
// Purpose:
//
//=============================================================================
#include "cbase.h"
// NOTE: This has to be the last file included!
#include "tier0/memdbgon.h"
extern bool g_bDOFEnabled; extern float g_flDOFNearBlurDepth; extern float g_flDOFNearFocusDepth; extern float g_flDOFFarFocusDepth; extern float g_flDOFFarBlurDepth; extern float g_flDOFNearBlurRadius; extern float g_flDOFFarBlurRadius;
EHANDLE g_hDOFControllerInUse = INVALID_EHANDLE;
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
class C_EnvDOFController : public C_BaseEntity { DECLARE_CLASS( C_EnvDOFController, C_BaseEntity ); public: DECLARE_CLIENTCLASS();
C_EnvDOFController(); ~C_EnvDOFController(); virtual void OnDataChanged( DataUpdateType_t updateType );
private: bool m_bDOFEnabled; float m_flNearBlurDepth; float m_flNearFocusDepth; float m_flFarFocusDepth; float m_flFarBlurDepth; float m_flNearBlurRadius; float m_flFarBlurRadius;
private: C_EnvDOFController( const C_EnvDOFController & ); };
IMPLEMENT_CLIENTCLASS_DT( C_EnvDOFController, DT_EnvDOFController, CEnvDOFController ) RecvPropInt( RECVINFO(m_bDOFEnabled) ), RecvPropFloat( RECVINFO(m_flNearBlurDepth) ), RecvPropFloat( RECVINFO(m_flNearFocusDepth) ), RecvPropFloat( RECVINFO(m_flFarFocusDepth) ), RecvPropFloat( RECVINFO(m_flFarBlurDepth) ), RecvPropFloat( RECVINFO(m_flNearBlurRadius) ), RecvPropFloat( RECVINFO(m_flFarBlurRadius) ) END_RECV_TABLE()
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
C_EnvDOFController::C_EnvDOFController( void ) : m_bDOFEnabled( true ), m_flNearBlurDepth( 50.0f ), m_flNearFocusDepth( 100.0f ), m_flFarFocusDepth( 250.0f ), m_flFarBlurDepth( 1000.0f ), m_flNearBlurRadius( 0.0f ), // no near blur by default
m_flFarBlurRadius( 5.0f ) { }
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
C_EnvDOFController::~C_EnvDOFController( void ) { if ( g_hDOFControllerInUse == this ) { g_bDOFEnabled = false; } }
//-----------------------------------------------------------------------------
// Purpose:
//-----------------------------------------------------------------------------
void C_EnvDOFController::OnDataChanged( DataUpdateType_t updateType ) { BaseClass::OnDataChanged( updateType );
g_bDOFEnabled = m_bDOFEnabled && ( ( m_flNearBlurRadius > 0.0f ) || ( m_flFarBlurRadius > 0.0f ) ); g_flDOFNearBlurDepth = m_flNearBlurDepth; g_flDOFNearFocusDepth = m_flNearFocusDepth; g_flDOFFarFocusDepth = m_flFarFocusDepth; g_flDOFFarBlurDepth = m_flFarBlurDepth; g_flDOFNearBlurRadius = m_flNearBlurRadius; g_flDOFFarBlurRadius = m_flFarBlurRadius;
g_hDOFControllerInUse = this; }
|