This repository has been archived by the owner on Aug 6, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit e0b3d19
Showing
3,050 changed files
with
1,217,106 additions
and
0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============// | ||
// | ||
// Purpose: | ||
// | ||
// $NoKeywords: $ | ||
//=============================================================================// | ||
#include "cbase.h" | ||
#include "ProxyEntity.h" | ||
#include "materialsystem/IMaterial.h" | ||
#include "materialsystem/IMaterialVar.h" | ||
|
||
// memdbgon must be the last include file in a .cpp file!!! | ||
#include "tier0/memdbgon.h" | ||
|
||
// $sineVar : name of variable that controls the alpha level (float) | ||
class CAlphaMaterialProxy : public CEntityMaterialProxy | ||
{ | ||
public: | ||
CAlphaMaterialProxy(); | ||
virtual ~CAlphaMaterialProxy(); | ||
virtual bool Init( IMaterial *pMaterial, KeyValues *pKeyValues ); | ||
virtual void OnBind( C_BaseEntity *pEntity ); | ||
|
||
private: | ||
IMaterialVar *m_AlphaVar; | ||
}; | ||
|
||
CAlphaMaterialProxy::CAlphaMaterialProxy() | ||
{ | ||
m_AlphaVar = NULL; | ||
} | ||
|
||
CAlphaMaterialProxy::~CAlphaMaterialProxy() | ||
{ | ||
} | ||
|
||
|
||
bool CAlphaMaterialProxy::Init( IMaterial *pMaterial, KeyValues *pKeyValues ) | ||
{ | ||
bool foundVar; | ||
m_AlphaVar = pMaterial->FindVar( "$alpha", &foundVar, false ); | ||
return foundVar; | ||
} | ||
|
||
void CAlphaMaterialProxy::OnBind( C_BaseEntity *pEnt ) | ||
{ | ||
if (m_AlphaVar) | ||
{ | ||
m_AlphaVar->SetFloatValue( pEnt->m_clrRender->a ); | ||
} | ||
} | ||
|
||
EXPOSE_INTERFACE( CAlphaMaterialProxy, IMaterialProxy, "Alpha" IMATERIAL_PROXY_INTERFACE_VERSION ); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,51 @@ | ||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============// | ||
// | ||
// Purpose: | ||
// | ||
// $NoKeywords: $ | ||
//=============================================================================// | ||
#include "cbase.h" | ||
#include "BaseAnimatedTextureProxy.h" | ||
|
||
// memdbgon must be the last include file in a .cpp file!!! | ||
#include "tier0/memdbgon.h" | ||
|
||
class CAnimatedEntityTextureProxy : public CBaseAnimatedTextureProxy | ||
{ | ||
public: | ||
CAnimatedEntityTextureProxy() {} | ||
virtual ~CAnimatedEntityTextureProxy() {} | ||
|
||
virtual float GetAnimationStartTime( void* pBaseEntity ); | ||
virtual void AnimationWrapped( void* pC_BaseEntity ); | ||
|
||
}; | ||
|
||
EXPOSE_INTERFACE( CAnimatedEntityTextureProxy, IMaterialProxy, "AnimatedEntityTexture" IMATERIAL_PROXY_INTERFACE_VERSION ); | ||
|
||
float CAnimatedEntityTextureProxy::GetAnimationStartTime( void* pArg ) | ||
{ | ||
IClientRenderable *pRend = (IClientRenderable *)pArg; | ||
if (!pRend) | ||
return 0.0f; | ||
|
||
C_BaseEntity* pEntity = pRend->GetIClientUnknown()->GetBaseEntity(); | ||
if (pEntity) | ||
{ | ||
return pEntity->GetTextureAnimationStartTime(); | ||
} | ||
return 0.0f; | ||
} | ||
|
||
void CAnimatedEntityTextureProxy::AnimationWrapped( void* pArg ) | ||
{ | ||
IClientRenderable *pRend = (IClientRenderable *)pArg; | ||
if (!pRend) | ||
return; | ||
|
||
C_BaseEntity* pEntity = pRend->GetIClientUnknown()->GetBaseEntity(); | ||
if (pEntity) | ||
{ | ||
pEntity->TextureAnimationWrapped(); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============// | ||
// | ||
// Purpose: | ||
// | ||
//=============================================================================// | ||
|
||
#include "cbase.h" | ||
#include "BaseAnimatedTextureProxy.h" | ||
|
||
// memdbgon must be the last include file in a .cpp file!!! | ||
#include "tier0/memdbgon.h" | ||
|
||
class CAnimatedOffsetTextureProxy : public CBaseAnimatedTextureProxy | ||
{ | ||
public: | ||
CAnimatedOffsetTextureProxy() : m_flFrameOffset( 0.0f ) {} | ||
|
||
virtual ~CAnimatedOffsetTextureProxy() {} | ||
|
||
virtual float GetAnimationStartTime( void* pBaseEntity ); | ||
virtual void OnBind( void *pBaseEntity ); | ||
|
||
protected: | ||
|
||
float m_flFrameOffset; | ||
}; | ||
|
||
EXPOSE_INTERFACE( CAnimatedOffsetTextureProxy, IMaterialProxy, "AnimatedOffsetTexture" IMATERIAL_PROXY_INTERFACE_VERSION ); | ||
|
||
//----------------------------------------------------------------------------- | ||
// Purpose: | ||
// Input : pArg - | ||
// Output : float | ||
//----------------------------------------------------------------------------- | ||
float CAnimatedOffsetTextureProxy::GetAnimationStartTime( void* pArg ) | ||
{ | ||
return m_flFrameOffset; | ||
} | ||
|
||
//----------------------------------------------------------------------------- | ||
// Purpose: | ||
// Input : *pBaseEntity - | ||
//----------------------------------------------------------------------------- | ||
void CAnimatedOffsetTextureProxy::OnBind( void *pBaseEntity ) | ||
{ | ||
C_BaseEntity* pEntity = (C_BaseEntity*)pBaseEntity; | ||
|
||
if ( pEntity ) | ||
{ | ||
m_flFrameOffset = pEntity->GetTextureAnimationStartTime(); | ||
} | ||
|
||
// Call into the base class | ||
CBaseAnimatedTextureProxy::OnBind( pBaseEntity ); | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============// | ||
// | ||
// Purpose: | ||
// | ||
// $NoKeywords: $ | ||
//=============================================================================// | ||
#include "cbase.h" | ||
#include "BaseAnimatedTextureProxy.h" | ||
|
||
// memdbgon must be the last include file in a .cpp file!!! | ||
#include "tier0/memdbgon.h" | ||
|
||
class CAnimatedTextureProxy : public CBaseAnimatedTextureProxy | ||
{ | ||
public: | ||
CAnimatedTextureProxy() {} | ||
virtual ~CAnimatedTextureProxy() {} | ||
virtual float GetAnimationStartTime( void* pBaseEntity ); | ||
}; | ||
|
||
EXPOSE_INTERFACE( CAnimatedTextureProxy, IMaterialProxy, "AnimatedTexture" IMATERIAL_PROXY_INTERFACE_VERSION ); | ||
|
||
#pragma warning (disable : 4100) | ||
|
||
float CAnimatedTextureProxy::GetAnimationStartTime( void* pBaseEntity ) | ||
{ | ||
return 0; | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
//========= Copyright © 1996-2005, Valve Corporation, All rights reserved. ============// | ||
// | ||
// Purpose: Acts exactly like "AnimatedTexture", but ONLY if the texture | ||
// it's working on matches the desired texture to work on. | ||
// | ||
// This assumes that some other proxy will be switching out the textures. | ||
// | ||
// $NoKeywords: $ | ||
//=============================================================================// | ||
#include "cbase.h" | ||
#include "materialsystem/IMaterialProxy.h" | ||
#include "materialsystem/IMaterialVar.h" | ||
#include "materialsystem/IMaterial.h" | ||
#include "materialsystem/ITexture.h" | ||
#include "BaseAnimatedTextureProxy.h" | ||
#include "utlstring.h" | ||
#include <KeyValues.h> | ||
|
||
// memdbgon must be the last include file in a .cpp file!!! | ||
#include "tier0/memdbgon.h" | ||
|
||
class CAnimateSpecificTexture : public CBaseAnimatedTextureProxy | ||
{ | ||
private: | ||
CUtlString m_OnlyAnimateOnTexture; | ||
public: | ||
virtual float GetAnimationStartTime( void* pBaseEntity ) { return 0; } | ||
virtual bool Init( IMaterial *pMaterial, KeyValues *pKeyValues ); | ||
virtual void OnBind( void *pC_BaseEntity ); | ||
virtual void Release( void ) { delete this; } | ||
}; | ||
|
||
bool CAnimateSpecificTexture::Init( IMaterial *pMaterial, KeyValues *pKeyValues ) | ||
{ | ||
char const* pszAnimateOnTexture = pKeyValues->GetString( "onlyAnimateOnTexture" ); | ||
if( !pszAnimateOnTexture ) | ||
return false; | ||
|
||
m_OnlyAnimateOnTexture.Set( pszAnimateOnTexture ); | ||
|
||
return CBaseAnimatedTextureProxy::Init( pMaterial, pKeyValues ); | ||
} | ||
|
||
void CAnimateSpecificTexture::OnBind( void *pC_BaseEntity ) | ||
{ | ||
if( FStrEq( m_AnimatedTextureVar->GetTextureValue()->GetName(), m_OnlyAnimateOnTexture ) ) | ||
{ | ||
CBaseAnimatedTextureProxy::OnBind( pC_BaseEntity ); | ||
} | ||
//else do nothing | ||
} | ||
|
||
EXPOSE_INTERFACE( CAnimateSpecificTexture, IMaterialProxy, "AnimateSpecificTexture" IMATERIAL_PROXY_INTERFACE_VERSION ); |
Oops, something went wrong.