|
| #define | _ENABLE_PARTICLE_LOD_INGAME_ |
| |
| #define | _PARTICLES_USE_PREFETCH_ |
| |
| #define | PARTICLE_PREFETCH(Index) FPlatformMisc::Prefetch( ParticleData, ParticleStride * ParticleIndices[Index] ) |
| |
| #define | PARTICLE_INSTANCE_PREFETCH(Instance, Index) FPlatformMisc::Prefetch( Instance->ParticleData, Instance->ParticleStride * Instance->ParticleIndices[Index] ) |
| |
| #define | PARTICLE_OWNER_PREFETCH(Index) FPlatformMisc::Prefetch( Owner->ParticleData, Owner->ParticleStride * Owner->ParticleIndices[Index] ) |
| |
| #define | DECLARE_PARTICLE(Name, Address) FBaseParticle& Name = *((FBaseParticle*) (Address)); |
| |
| #define | DECLARE_PARTICLE_CONST(Name, Address) const FBaseParticle& Name = *((const FBaseParticle*) (Address)); |
| |
| #define | DECLARE_PARTICLE_PTR(Name, Address) FBaseParticle* Name = (FBaseParticle*) (Address); |
| |
| #define | BEGIN_UPDATE_LOOP |
| |
| #define | END_UPDATE_LOOP |
| |
| #define | CONTINUE_UPDATE_LOOP |
| |
| #define | SPAWN_INIT |
| |
| #define | PARTICLE_ELEMENT(Type, Name) |
| |
| #define | KILL_CURRENT_PARTICLE |
| |
| #define | INDEX_TYPEDATAMODULE (INDEX_NONE - 1) |
| |
| #define | INDEX_REQUIREDMODULE (INDEX_NONE - 2) |
| |
| #define | INDEX_SPAWNMODULE (INDEX_NONE - 3) |
| |
| #define | TRAIL_EMITTER_FLAG_FORCEKILL 0x00000000 |
| |
| #define | TRAIL_EMITTER_FLAG_DEADTRAIL 0x10000000 |
| |
| #define | TRAIL_EMITTER_FLAG_MIDDLE 0x20000000 |
| |
| #define | TRAIL_EMITTER_FLAG_START 0x40000000 |
| |
| #define | TRAIL_EMITTER_FLAG_END 0x80000000 |
| |
| #define | TRAIL_EMITTER_FLAG_MASK 0xf0000000 |
| |
| #define | TRAIL_EMITTER_PREV_MASK 0x0fffc000 |
| |
| #define | TRAIL_EMITTER_PREV_SHIFT 14 |
| |
| #define | TRAIL_EMITTER_NEXT_MASK 0x00003fff |
| |
| #define | TRAIL_EMITTER_NEXT_SHIFT 0 |
| |
| #define | TRAIL_EMITTER_NULL_PREV (TRAIL_EMITTER_PREV_MASK >> TRAIL_EMITTER_PREV_SHIFT) |
| |
| #define | TRAIL_EMITTER_NULL_NEXT (TRAIL_EMITTER_NEXT_MASK >> TRAIL_EMITTER_NEXT_SHIFT) |
| |
| #define | TRAIL_EMITTER_CHECK_FLAG(val, mask, flag) ((val & mask) == flag) |
| |
| #define | TRAIL_EMITTER_SET_FLAG(val, mask, flag) ((val & ~mask) | flag) |
| |
| #define | TRAIL_EMITTER_GET_PREVNEXT(val, mask, shift) ((val & mask) >> shift) |
| |
| #define | TRAIL_EMITTER_SET_PREVNEXT(val, mask, shift, setval) ((val & ~mask) | ((setval << shift) & mask)) |
| |
| #define | TRAIL_EMITTER_IS_START(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START) |
| |
| #define | TRAIL_EMITTER_SET_START(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START) |
| |
| #define | TRAIL_EMITTER_IS_END(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_END) |
| |
| #define | TRAIL_EMITTER_SET_END(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_END) |
| |
| #define | TRAIL_EMITTER_IS_MIDDLE(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_MIDDLE) |
| |
| #define | TRAIL_EMITTER_SET_MIDDLE(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_MIDDLE) |
| |
| #define | TRAIL_EMITTER_IS_ONLY(index) |
| |
| #define | TRAIL_EMITTER_SET_ONLY(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START) |
| |
| #define | TRAIL_EMITTER_IS_FORCEKILL(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_FORCEKILL) |
| |
| #define | TRAIL_EMITTER_SET_FORCEKILL(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_FORCEKILL) |
| |
| #define | TRAIL_EMITTER_IS_DEADTRAIL(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_DEADTRAIL) |
| |
| #define | TRAIL_EMITTER_SET_DEADTRAIL(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_DEADTRAIL) |
| |
| #define | TRAIL_EMITTER_IS_HEAD(index) (TRAIL_EMITTER_IS_START(index) || TRAIL_EMITTER_IS_DEADTRAIL(index)) |
| |
| #define | TRAIL_EMITTER_IS_HEADONLY(index) |
| |
| #define | TRAIL_EMITTER_GET_PREV(index) TRAIL_EMITTER_GET_PREVNEXT(index, TRAIL_EMITTER_PREV_MASK, TRAIL_EMITTER_PREV_SHIFT) |
| |
| #define | TRAIL_EMITTER_SET_PREV(index, prev) TRAIL_EMITTER_SET_PREVNEXT(index, TRAIL_EMITTER_PREV_MASK, TRAIL_EMITTER_PREV_SHIFT, prev) |
| |
| #define | TRAIL_EMITTER_GET_NEXT(index) TRAIL_EMITTER_GET_PREVNEXT(index, TRAIL_EMITTER_NEXT_MASK, TRAIL_EMITTER_NEXT_SHIFT) |
| |
| #define | TRAIL_EMITTER_SET_NEXT(index, next) TRAIL_EMITTER_SET_PREVNEXT(index, TRAIL_EMITTER_NEXT_MASK, TRAIL_EMITTER_NEXT_SHIFT, next) |
| |
| #define | BEAM2_TYPEDATA_LOCKED_MASK 0x80000000 |
| |
| #define | BEAM2_TYPEDATA_LOCKED(x) ((x & BEAM2_TYPEDATA_LOCKED_MASK) != 0) |
| |
| #define | BEAM2_TYPEDATA_SETLOCKED(x, Locked) (x = Locked ? (x | BEAM2_TYPEDATA_LOCKED_MASK) : (x & ~BEAM2_TYPEDATA_LOCKED_MASK)) |
| |
| #define | BEAM2_TYPEDATA_FREQUENCY_MASK 0x00fff000 |
| |
| #define | BEAM2_TYPEDATA_FREQUENCY_SHIFT 12 |
| |
| #define | BEAM2_TYPEDATA_FREQUENCY(x) ((x & BEAM2_TYPEDATA_FREQUENCY_MASK) >> BEAM2_TYPEDATA_FREQUENCY_SHIFT) |
| |
| #define | BEAM2_TYPEDATA_SETFREQUENCY(x, Freq) (x = ((x & ~BEAM2_TYPEDATA_FREQUENCY_MASK) | (Freq << BEAM2_TYPEDATA_FREQUENCY_SHIFT))) |
| |
|
| | DECLARE_LOG_CATEGORY_EXTERN (LogParticles, Log, All) |
| |
| void | Particle_SetColorFromVector (const FVector3f &InColorVec, const float InAlpha, FLinearColor &OutColor) |
| |
| | DECLARE_STATS_GROUP (TEXT("ParticlesOverview"), STATGROUP_ParticlesOverview, STATCAT_Advanced) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("GT Total"), STAT_ParticlesOverview_GT, STATGROUP_ParticlesOverview,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("GT Concurrent Total"), STAT_ParticlesOverview_GT_CNC, STATGROUP_ParticlesOverview,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("RT Total"), STAT_ParticlesOverview_RT, STATGROUP_ParticlesOverview,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("RT Concurrent Total"), STAT_ParticlesOverview_RT_CNC, STATGROUP_ParticlesOverview,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprite Particles"), STAT_SpriteParticles, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprite Ptcls Spawned"), STAT_SpriteParticlesSpawned, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprite Ptcls Updated"), STAT_SpriteParticlesUpdated, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprite Ptcls Killed"), STAT_SpriteParticlesKilled, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Particle Draw Calls"), STAT_ParticleDrawCalls, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sort Time RT"), STAT_SortingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Render Time RT"), STAT_SpriteRenderingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Tick Time GT"), STAT_SpriteTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Spawn Time GT"), STAT_SpriteSpawnTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("PSys Comp Tick Time GT"), STAT_PSysCompTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Collision Time GT"), STAT_ParticleCollisionTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle SkelMeshSurf Time GT"), STAT_ParticleSkelMeshSurfTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Pool Time RT"), STAT_ParticlePoolTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Compute Time GT,AT"), STAT_ParticleComputeTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Finalize Time GT"), STAT_ParticleFinalizeTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle GT Stall Time"), STAT_GTSTallTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Render Time RT"), STAT_ParticleRenderingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Particle Packing Time RT"), STAT_ParticlePackingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("SetTemplate Time GT"), STAT_ParticleSetTemplateTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Initialize Time GT"), STAT_ParticleInitializeTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Activate Time GT"), STAT_ParticleActivateTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Async Work Time"), STAT_ParticleAsyncTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Wait For ASync Time"), STAT_ParticleAsyncWaitTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Update Bounds Time GT"), STAT_ParticleUpdateBounds, STATGROUP_Particles,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("Ptcls Data GT Mem"), STAT_GTParticleData, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Ptcls Data GT Mem MAX"), STAT_GTParticleData_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Ptcls Data RT Mem"), STAT_RTParticleData, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Ptcls Data RT Mem MAX"), STAT_RTParticleData_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Ptcls Data RT Largest"), STAT_RTParticleData_Largest, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Ptcls Data RT Largest MAX"), STAT_RTParticleData_Largest_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynPSysComp Mem"), STAT_DynamicPSysCompMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynPSysComp Mem MAX"), STAT_DynamicPSysCompMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter Mem"), STAT_DynamicEmitterMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter Mem MAX"), STAT_DynamicEmitterMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter GTMem Waste"), STAT_DynamicEmitterGTMem_Waste, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter GTMem Largest"), STAT_DynamicEmitterGTMem_Largest, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter GTMem Waste MAX"), STAT_DynamicEmitterGTMem_Waste_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter GTMem Largest MAX"), STAT_DynamicEmitterGTMem_Largest_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynPSysComp Count"), STAT_DynamicPSysCompCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynPSysComp Count MAX"), STAT_DynamicPSysCompCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter Count"), STAT_DynamicEmitterCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynEmitter Count Max"), STAT_DynamicEmitterCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSprite Count"), STAT_DynamicSpriteCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSprite Max"), STAT_DynamicSpriteCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynSprite GT Mem"), STAT_DynamicSpriteGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSprite GT Mem Max"), STAT_DynamicSpriteGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSubUV Count"), STAT_DynamicSubUVCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSubUV Max"), STAT_DynamicSubUVCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynSubUV GT Mem"), STAT_DynamicSubUVGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynSubUV GT Mem Max"), STAT_DynamicSubUVGTMem_Max, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynMesh Count"), STAT_DynamicMeshCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynMesh Max"), STAT_DynamicMeshCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynMesh GT Mem"), STAT_DynamicMeshGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynMesh GT Mem Max"), STAT_DynamicMeshGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynBeam Count"), STAT_DynamicBeamCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynBeam Max"), STAT_DynamicBeamCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynBeam GT Mem"), STAT_DynamicBeamGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynBeam GT Mem Max"), STAT_DynamicBeamGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynRibbon Count"), STAT_DynamicRibbonCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynRibbon Max"), STAT_DynamicRibbonCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynRibbon GT Mem"), STAT_DynamicRibbonGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynRibbon GT Mem Max"), STAT_DynamicRibbonGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynAnimTrail Count"), STAT_DynamicAnimTrailCount, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynAnimTrail Max"), STAT_DynamicAnimTrailCount_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynAnimTrail GT Mem"), STAT_DynamicAnimTrailGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynAnimTrail GT Mem Max"), STAT_DynamicAnimTrailGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_MEMORY_STAT_EXTERN (TEXT("DynUntracked Mem"), STAT_DynamicUntrackedGTMem, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("DynUntracked Mem Max"), STAT_DynamicUntrackedGTMem_MAX, STATGROUP_ParticleMem,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprites"), STAT_GPUSpriteParticles, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sprites Spawned"), STAT_GPUSpritesSpawned, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sorted Emitters"), STAT_SortedGPUEmitters, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Sorted Particles"), STAT_SortedGPUParticles, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Free Tiles"), STAT_FreeGPUTiles, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Tick Time"), STAT_GPUSpriteTickTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Spawn Time"), STAT_GPUSpriteSpawnTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite PreRender Time"), STAT_GPUSpritePreRenderTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Sprite Render Time"), STAT_GPUSpriteRenderingTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("GPU Particle Tick Time"), STAT_GPUParticleTickTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Build Sim Commands"), STAT_GPUParticleBuildSimCmdsTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Misc1"), STAT_GPUParticleMisc1, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Misc2"), STAT_GPUParticleMisc2, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Misc3"), STAT_GPUParticleMisc3, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Injection Tick Time"), STAT_GPUParticlesInjectionTime, STATGROUP_GPUParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Execute Simulation Commands Time"), STAT_GPUParticlesSimulationCommands, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Single Iteration Emitters"), STAT_GPUSingleIterationEmitters, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Multi Iterations Emitters"), STAT_GPUMultiIterationsEmitters, STATGROUP_GPUParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Mesh Particles"), STAT_MeshParticles, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Mesh Render Time RT"), STAT_MeshRenderingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Mesh Tick Time GT,AT"), STAT_MeshTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Particles"), STAT_TrailParticles, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Ptcl Render Calls"), STAT_TrailParticlesRenderCalls, STATGROUP_TrailParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Ptcls Spawned"), STAT_TrailParticlesSpawned, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Tick Calls"), STAT_TrailParticlesTickCalls, STATGROUP_TrailParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Ptcls Killed"), STAT_TrailParticlesKilled, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Trail Ptcl Tris"), STAT_TrailParticlesTrianglesRendered, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Trail FillVertex Time RT"), STAT_TrailFillVertexTime, STATGROUP_TrailParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Trail FillIndex Time RT"), STAT_TrailFillIndexTime, STATGROUP_TrailParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Trail Render Time RT"), STAT_TrailRenderingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Trail Tick Time GT"), STAT_TrailTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("AnimTrail Notify Time GT"), STAT_AnimTrailNotifyTime, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Particles"), STAT_BeamParticles, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcl Render Calls"), STAT_BeamParticlesRenderCalls, STATGROUP_BeamParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcls Spawned"), STAT_BeamParticlesSpawned, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcl Update Calls"), STAT_BeamParticlesUpdateCalls, STATGROUP_BeamParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcls Updated"), STAT_BeamParticlesUpdated, STATGROUP_BeamParticles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcls Killed"), STAT_BeamParticlesKilled, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Beam Ptcl Tris"), STAT_BeamParticlesTrianglesRendered, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Beam Spawn Time GT"), STAT_BeamSpawnTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Beam FillVertex Time RT"), STAT_BeamFillVertexTime, STATGROUP_BeamParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Beam FillIndex Time RT"), STAT_BeamFillIndexTime, STATGROUP_BeamParticles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Beam Render Time RT"), STAT_BeamRenderingTime, STATGROUP_Particles,) |
| |
| | DECLARE_CYCLE_STAT_EXTERN (TEXT("Beam Tick Time GT"), STAT_BeamTickTime, STATGROUP_Particles,) |
| |
| | DECLARE_DWORD_COUNTER_STAT_EXTERN (TEXT("Mesh Particle Polys"), STAT_MeshParticlePolys, STATGROUP_Particles,) |
| |
| void | GetDynamicValueFromPayload (int32 InDynamicPayloadOffset, const FBaseParticle &InParticle, FVector4f &OutDynamicData) |
| |
| FVector3f | GetParticleBaseSize (const FBaseParticle &Particle, bool bKeepFlipScale=false) |
| |
| FVector2D | GetParticleSizeWithUVFlipInSign (const FBaseParticle &Particle, const FVector2D &ScaledSize) |
| |