UTIL ParticleTracer: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Amicdict moved page UTIL ParticleTracer to UTIL ParticleTracer/en: Move english page to subpage to prepare for use of {{MultiPage}}.)
m ({{lang}} -> {{Language subpage}})
Line 1: Line 1:
{{lang|UTIL ParticleTracer|title=UTIL_ParticleTracer}}[[Category:UTIL]]
{{Language subpage}}[[Category:UTIL]]
UTIL_ParticleTracer is a [[UTIL]] provided in the Source code for dispatching bullet tracer effects with the [[Orange Box]] [[particle system]]. It works by setting control points 0 and 1, where 0 is where the tracer starts and point 1 is where the tracer ends. The particle effect should implement the [[Particle_System_Initializers#Move_Particles_Between_2_Control_Points|Move Particles Between 2 Control Points]] initializer.  
UTIL_ParticleTracer is a [[UTIL]] provided in the Source code for dispatching bullet tracer effects with the [[Orange Box]] [[particle system]]. It works by setting control points 0 and 1, where 0 is where the tracer starts and point 1 is where the tracer ends. The particle effect should implement the [[Particle_System_Initializers#Move_Particles_Between_2_Control_Points|Move Particles Between 2 Control Points]] initializer.  



Revision as of 19:27, 22 April 2023

English (en)Translate (Translate)

UTIL_ParticleTracer is a UTIL provided in the Source code for dispatching bullet tracer effects with the Orange Box particle system. It works by setting control points 0 and 1, where 0 is where the tracer starts and point 1 is where the tracer ends. The particle effect should implement the Move Particles Between 2 Control Points initializer.

Usage

//-----------------------------------------------------------------------------
// Purpose: Make a tracer using a particle effect
//-----------------------------------------------------------------------------
void UTIL_ParticleTracer( const char *pszTracerEffectName, const Vector &vecStart, const Vector &vecEnd, 
				 int iEntIndex, int iAttachment, bool bWhiz )
{
	int iParticleIndex = GetParticleSystemIndex( pszTracerEffectName );
	UTIL_Tracer( vecStart, vecEnd, iEntIndex, iAttachment, 0, bWhiz, "ParticleTracer", iParticleIndex );
}


Examples

You can override the default tracer in basecombatweapon_shared.cpp by replacing the switch statement around line 749:

UTIL_ParticleTracer("tracer_bullet", vNewSrc, tr.endpos, entindex(), iAttachment, iTracerType == TRACER_LINE_AND_WHIZ);