FTEQW
Documentation of the FTE engine source tree.
r_part.c File Reference

Functions

void R_Clutter_Init (void)
 
unsigned int R_Clutter_Random (clutter_build_ctx_t *ctx)
 
float R_Clutter_FRandom (clutter_build_ctx_t *ctx)
 
void R_Clutter_Emit (batch_t **batches)
 
void R_Clutter_Purge (void)
 
void P_ParticleEffect_f (void)
 
void P_InitParticleSystem (void)
 
void P_ShutdownParticleSystem (void)
 
int P_FindParticleType (const char *efname)
 
void P_Shutdown (void)
 
entity_tTraceLineR (vec3_t start, vec3_t end, vec3_t impact, vec3_t normal, qboolean bsponly)
 
float CL_TraceLine (vec3_t start, vec3_t end, vec3_t impact, vec3_t normal, int *ent)
 
void P_EmitEffect (vec3_t pos, vec3_t orientation[3], unsigned int modeleflags, int type, trailkey_t *tk)
 
void P_DefaultTrail (unsigned int entityeffects, unsigned int modelflags, int *trailid, int *trailpalidx)
 

Variables

float r_avertexnormals [NUMVERTEXNORMALS][3]
 
cvar_t r_clutter_density = CVARD("r_clutter_density", "0", "Scaler for clutter counts. 0 disables clutter completely.\nClutter requires shaders with 'fte_clutter MODEL SPACING SCALEMIN SCALEMAX ZOFS ANGLEMIN ANGLEMAX' terms")
 
cvar_t r_clutter_distance = CVARD("r_clutter_distance", "1024", "Distance at which clutter will become invisible.")
 
particleengine_t pe_null
 
particleengine_t pe_classic
 
particleengine_t pe_darkplaces
 
particleengine_t pe_qmb
 
particleengine_t pe_script
 
particleengine_tparticlesystem []
 
cvar_t r_decal_noperpendicular = CVARD("r_decal_noperpendicular", "1", "When enabled, decals will not be generated on planes at a steep angle from clipped decal orientation.")
 
cvar_t r_rockettrail = CVARFC("r_rockettrail", "1", CVAR_SEMICHEAT, R_Rockettrail_Callback)
 
cvar_t r_grenadetrail = CVARFC("r_grenadetrail", "1", CVAR_SEMICHEAT, R_Grenadetrail_Callback)
 
cvar_t r_particlesystem = CVARFC("r_particlesystem", "script", CVAR_SEMICHEAT|CVAR_ARCHIVE|CVAR_NOSET, R_ParticleSystem_Callback)
 
cvar_t r_particledesc = CVARAF("r_particledesc", "", "r_particlesdesc", CVAR_SEMICHEAT|CVAR_ARCHIVE)
 
cvar_t r_bouncysparks
 
cvar_t r_part_rain
 
cvar_t r_bloodstains
 
cvar_t gl_part_flame
 
cvar_t r_part_rain_quantity = CVARF("r_part_rain_quantity", "1", CVAR_ARCHIVE)
 
cvar_t r_particle_tracelimit = CVARFD("r_particle_tracelimit", "0x7fffffff", CVAR_ARCHIVE, "Number of traces to allow per frame for particle physics.")
 
cvar_t r_part_sparks = CVAR("r_part_sparks", "1")
 
cvar_t r_part_sparks_trifan = CVAR("r_part_sparks_trifan", "1")
 
cvar_t r_part_sparks_textured = CVAR("r_part_sparks_textured", "1")
 
cvar_t r_part_beams = CVAR("r_part_beams", "1")
 
cvar_t r_part_contentswitch = CVARFD("r_part_contentswitch", "1", CVAR_ARCHIVE, "Enable particle effects to change based on content (ex. water).")
 
cvar_t r_part_density = CVARF("r_part_density", "1", CVAR_ARCHIVE)
 
cvar_t r_part_classic_expgrav = CVARFD("r_part_classic_expgrav", "10", CVAR_ARCHIVE, "Scaler for how fast classic explosion particles should accelerate due to gravity. 1 for like vanilla, 10 for like zquake.")
 
cvar_t r_part_classic_opaque = CVARFD("r_part_classic_opaque", "0", CVAR_ARCHIVE, "Disables transparency on classic particles, for the oldskool look.")
 
cvar_t r_part_classic_square = CVARFD("r_part_classic_square", "0", CVAR_ARCHIVE, "Enables square particles, for the oldskool look.")
 
cvar_t r_part_maxparticles = CVAR("r_part_maxparticles", "65536")
 
cvar_t r_part_maxdecals = CVAR("r_part_maxdecals", "8192")
 
particleengine_tpe
 

Function Documentation

◆ CL_TraceLine()

float CL_TraceLine ( vec3_t  start,
vec3_t  end,
vec3_t  impact,
vec3_t  normal,
int ent 
)

◆ P_DefaultTrail()

void P_DefaultTrail ( unsigned int  entityeffects,
unsigned int  modelflags,
int trailid,
int trailpalidx 
)

◆ P_EmitEffect()

void P_EmitEffect ( vec3_t  pos,
vec3_t  orientation[3],
unsigned int  modeleflags,
int  type,
trailkey_t tk 
)

◆ P_FindParticleType()

int P_FindParticleType ( const char *  efname)

◆ P_InitParticleSystem()

void P_InitParticleSystem ( void  )

◆ P_ParticleEffect_f()

void P_ParticleEffect_f ( void  )

◆ P_Shutdown()

void P_Shutdown ( void  )

◆ P_ShutdownParticleSystem()

void P_ShutdownParticleSystem ( void  )

◆ R_Clutter_Emit()

void R_Clutter_Emit ( batch_t **  batches)

◆ R_Clutter_FRandom()

float R_Clutter_FRandom ( clutter_build_ctx_t *  ctx)

◆ R_Clutter_Init()

void R_Clutter_Init ( void  )

◆ R_Clutter_Purge()

void R_Clutter_Purge ( void  )

◆ R_Clutter_Random()

unsigned int R_Clutter_Random ( clutter_build_ctx_t *  ctx)

◆ TraceLineR()

entity_t * TraceLineR ( vec3_t  start,
vec3_t  end,
vec3_t  impact,
vec3_t  normal,
qboolean  bsponly 
)

Variable Documentation

◆ gl_part_flame

cvar_t gl_part_flame
extern

◆ particlesystem

particleengine_t* particlesystem[]
Initial value:
=
{
#ifdef PSET_SCRIPT
#endif
#ifdef PSET_CLASSIC
#endif
NULL,
}
particleengine_t pe_darkplaces
Definition: r_part.c:535
particleengine_t pe_script
Definition: p_script.c:7741
particleengine_t pe_qmb
Definition: r_part.c:536
particleengine_t pe_null
Definition: p_null.c:51
particleengine_t pe_classic
Definition: p_classic.c:1150

◆ pe

◆ pe_classic

particleengine_t pe_classic
extern

◆ pe_darkplaces

particleengine_t pe_darkplaces

◆ pe_null

particleengine_t pe_null
extern

◆ pe_qmb

◆ pe_script

particleengine_t pe_script
extern

◆ r_avertexnormals

float r_avertexnormals[NUMVERTEXNORMALS][3]
Initial value:
= {
#include "anorms.h"
}

◆ r_bloodstains

cvar_t r_bloodstains
extern

◆ r_bouncysparks

cvar_t r_bouncysparks
extern

◆ r_clutter_density

cvar_t r_clutter_density = CVARD("r_clutter_density", "0", "Scaler for clutter counts. 0 disables clutter completely.\nClutter requires shaders with 'fte_clutter MODEL SPACING SCALEMIN SCALEMAX ZOFS ANGLEMIN ANGLEMAX' terms")

◆ r_clutter_distance

cvar_t r_clutter_distance = CVARD("r_clutter_distance", "1024", "Distance at which clutter will become invisible.")

◆ r_decal_noperpendicular

cvar_t r_decal_noperpendicular = CVARD("r_decal_noperpendicular", "1", "When enabled, decals will not be generated on planes at a steep angle from clipped decal orientation.")

◆ r_grenadetrail

cvar_t r_grenadetrail = CVARFC("r_grenadetrail", "1", CVAR_SEMICHEAT, R_Grenadetrail_Callback)

◆ r_part_beams

cvar_t r_part_beams = CVAR("r_part_beams", "1")

◆ r_part_classic_expgrav

cvar_t r_part_classic_expgrav = CVARFD("r_part_classic_expgrav", "10", CVAR_ARCHIVE, "Scaler for how fast classic explosion particles should accelerate due to gravity. 1 for like vanilla, 10 for like zquake.")

◆ r_part_classic_opaque

cvar_t r_part_classic_opaque = CVARFD("r_part_classic_opaque", "0", CVAR_ARCHIVE, "Disables transparency on classic particles, for the oldskool look.")

◆ r_part_classic_square

cvar_t r_part_classic_square = CVARFD("r_part_classic_square", "0", CVAR_ARCHIVE, "Enables square particles, for the oldskool look.")

◆ r_part_contentswitch

cvar_t r_part_contentswitch = CVARFD("r_part_contentswitch", "1", CVAR_ARCHIVE, "Enable particle effects to change based on content (ex. water).")

◆ r_part_density

cvar_t r_part_density = CVARF("r_part_density", "1", CVAR_ARCHIVE)

◆ r_part_maxdecals

cvar_t r_part_maxdecals = CVAR("r_part_maxdecals", "8192")

◆ r_part_maxparticles

cvar_t r_part_maxparticles = CVAR("r_part_maxparticles", "65536")

◆ r_part_rain

cvar_t r_part_rain
extern

◆ r_part_rain_quantity

cvar_t r_part_rain_quantity = CVARF("r_part_rain_quantity", "1", CVAR_ARCHIVE)

◆ r_part_sparks

cvar_t r_part_sparks = CVAR("r_part_sparks", "1")

◆ r_part_sparks_textured

cvar_t r_part_sparks_textured = CVAR("r_part_sparks_textured", "1")

◆ r_part_sparks_trifan

cvar_t r_part_sparks_trifan = CVAR("r_part_sparks_trifan", "1")

◆ r_particle_tracelimit

cvar_t r_particle_tracelimit = CVARFD("r_particle_tracelimit", "0x7fffffff", CVAR_ARCHIVE, "Number of traces to allow per frame for particle physics.")

◆ r_particledesc

cvar_t r_particledesc = CVARAF("r_particledesc", "", "r_particlesdesc", CVAR_SEMICHEAT|CVAR_ARCHIVE)

◆ r_particlesystem

cvar_t r_particlesystem = CVARFC("r_particlesystem", "script", CVAR_SEMICHEAT|CVAR_ARCHIVE|CVAR_NOSET, R_ParticleSystem_Callback)

◆ r_rockettrail

cvar_t r_rockettrail = CVARFC("r_rockettrail", "1", CVAR_SEMICHEAT, R_Rockettrail_Callback)