User:JacobsDevelop/GlowArticle: Difference between revisions
Jump to navigation
Jump to search
Important:This part is quite long, but fortunately most of this part is just copying/pasting code from one file to another with small changes
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{WIP|[[User:JacobsDevelop|JacobsDevelop]] ([[User talk:JacobsDevelop|talk]])}} | {{WIP|[[User:JacobsDevelop|JacobsDevelop]] ([[User talk:JacobsDevelop|talk]])}} | ||
__FORCETOC__ | |||
=Activation= | =Activation= | ||
Revision as of 11:48, 22 April 2022
Activation
- Add GLOWS_ENABLE to the preprocessor directives on your client and server projects (don't forget to add it for release and debug, too!)
- Add the following line to ClientModeShared::DoPostScreenSpaceEffects:
g_GlowObjectManager.RenderGlowEffects( pSetup, 0 );
Materials Required:
SDK2013_TF2_GlowOutlineMaterials.zip
- Precache the effect by placing this code in clientmode_shared.cpp (search for other references of CLIENTEFFECT_REGISTER_BEGIN for usage example):
CLIENTEFFECT_REGISTER_BEGIN( PrecachePostProcessingEffectsGlow )
CLIENTEFFECT_MATERIAL( "dev/glow_color" )
CLIENTEFFECT_MATERIAL( "dev/halo_add_to_screen" )
CLIENTEFFECT_REGISTER_END_CONDITIONAL( engine->GetDXSupportLevel() >= 90 )
Don't forget to add the include defintion for the precache system!
#include "clienteffectprecachesystem.h"
(Optional) Transferring getters and setters from CBaseCombatCharacter

Usage
If you followed this step
To start a glow, call:
myObject->AddGlowEffect(); //Make it glow
To update a glow, call:
myObject->UpdateGlowEffect(); //Update glow
To stop a glow, call:
myObject->RemoveGlowEffect(); //Make it stop glowing