14#include "ParticleHelper.generated.h"
16#define _ENABLE_PARTICLE_LOD_INGAME_
57#define _PARTICLES_USE_PREFETCH_
58#if defined(_PARTICLES_USE_PREFETCH_)
59 #define PARTICLE_PREFETCH(Index) FPlatformMisc::Prefetch( ParticleData, ParticleStride * ParticleIndices[Index] )
60 #define PARTICLE_INSTANCE_PREFETCH(Instance, Index) FPlatformMisc::Prefetch( Instance->ParticleData, Instance->ParticleStride * Instance->ParticleIndices[Index] )
61 #define PARTICLE_OWNER_PREFETCH(Index) FPlatformMisc::Prefetch( Owner->ParticleData, Owner->ParticleStride * Owner->ParticleIndices[Index] )
63 #define PARTICLE_PREFETCH(Index)
64 #define PARTICLE_INSTANCE_PREFETCH(Instance, Index)
65 #define PARTICLE_OWNER_PREFETCH(Index)
68#define DECLARE_PARTICLE(Name,Address) \
69 FBaseParticle& Name = *((FBaseParticle*) (Address));
71#define DECLARE_PARTICLE_CONST(Name,Address) \
72 const FBaseParticle& Name = *((const FBaseParticle*) (Address));
74#define DECLARE_PARTICLE_PTR(Name,Address) \
75 FBaseParticle* Name = (FBaseParticle*) (Address);
77#define BEGIN_UPDATE_LOOP \
79 int32& ActiveParticles = Context.Owner.ActiveParticles; \
80 int32 Offset = Context.Offset; \
81 uint32 CurrentOffset = Offset; \
82 float DeltaTime = Context.DeltaTime; \
83 const uint8* ParticleData = Context.Owner.ParticleData; \
84 const uint32 ParticleStride = Context.Owner.ParticleStride; \
85 uint16* ParticleIndices = Context.Owner.ParticleIndices; \
86 for(int32 i=ActiveParticles-1; i>=0; i--) \
88 const int32 CurrentIndex = ParticleIndices[i]; \
89 const uint8* ParticleBase = ParticleData + CurrentIndex * ParticleStride; \
90 FBaseParticle& Particle = *((FBaseParticle*) ParticleBase); \
91 if ((Particle.Flags & STATE_Particle_Freeze) == 0) \
94#define END_UPDATE_LOOP \
96 CurrentOffset = Offset; \
100#define CONTINUE_UPDATE_LOOP \
101 CurrentOffset = Offset; \
105 const int32 ActiveParticles = Context.Owner.ActiveParticles; \
106 const uint32 ParticleStride = Context.Owner.ParticleStride; \
107 uint32 CurrentOffset = Context.Offset; \
108 FBaseParticle* ParticleBase = Context.ParticleBase; \
109 FBaseParticle& Particle = *(ParticleBase);
111#define PARTICLE_ELEMENT(Type,Name) \
112 Type& Name = *((Type*)((uint8*)ParticleBase + CurrentOffset)); \
113 CurrentOffset += sizeof(Type);
115#define KILL_CURRENT_PARTICLE \
117 ParticleIndices[i] = ParticleIndices[ActiveParticles-1]; \
118 ParticleIndices[ActiveParticles-1] = CurrentIndex; \
171#define INDEX_TYPEDATAMODULE (INDEX_NONE - 1)
172#define INDEX_REQUIREDMODULE (INDEX_NONE - 2)
173#define INDEX_SPAWNMODULE (INDEX_NONE - 3)
476#define TRAIL_EMITTER_FLAG_FORCEKILL 0x00000000
479#define TRAIL_EMITTER_FLAG_DEADTRAIL 0x10000000
481#define TRAIL_EMITTER_FLAG_MIDDLE 0x20000000
483#define TRAIL_EMITTER_FLAG_START 0x40000000
485#define TRAIL_EMITTER_FLAG_END 0x80000000
488#define TRAIL_EMITTER_FLAG_MASK 0xf0000000
489#define TRAIL_EMITTER_PREV_MASK 0x0fffc000
490#define TRAIL_EMITTER_PREV_SHIFT 14
491#define TRAIL_EMITTER_NEXT_MASK 0x00003fff
492#define TRAIL_EMITTER_NEXT_SHIFT 0
494#define TRAIL_EMITTER_NULL_PREV (TRAIL_EMITTER_PREV_MASK >> TRAIL_EMITTER_PREV_SHIFT)
495#define TRAIL_EMITTER_NULL_NEXT (TRAIL_EMITTER_NEXT_MASK >> TRAIL_EMITTER_NEXT_SHIFT)
498#define TRAIL_EMITTER_CHECK_FLAG(val, mask, flag) ((val & mask) == flag)
499#define TRAIL_EMITTER_SET_FLAG(val, mask, flag) ((val & ~mask) | flag)
500#define TRAIL_EMITTER_GET_PREVNEXT(val, mask, shift) ((val & mask) >> shift)
501#define TRAIL_EMITTER_SET_PREVNEXT(val, mask, shift, setval) ((val & ~mask) | ((setval << shift) & mask))
504#define TRAIL_EMITTER_IS_START(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START)
505#define TRAIL_EMITTER_SET_START(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START)
507#define TRAIL_EMITTER_IS_END(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_END)
508#define TRAIL_EMITTER_SET_END(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_END)
510#define TRAIL_EMITTER_IS_MIDDLE(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_MIDDLE)
511#define TRAIL_EMITTER_SET_MIDDLE(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_MIDDLE)
514#define TRAIL_EMITTER_IS_ONLY(index) (TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START) && \
515 (TRAIL_EMITTER_GET_NEXT(index) == TRAIL_EMITTER_NULL_NEXT))
516#define TRAIL_EMITTER_SET_ONLY(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_START)
518#define TRAIL_EMITTER_IS_FORCEKILL(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_FORCEKILL)
519#define TRAIL_EMITTER_SET_FORCEKILL(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_FORCEKILL)
521#define TRAIL_EMITTER_IS_DEADTRAIL(index) TRAIL_EMITTER_CHECK_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_DEADTRAIL)
522#define TRAIL_EMITTER_SET_DEADTRAIL(index) TRAIL_EMITTER_SET_FLAG(index, TRAIL_EMITTER_FLAG_MASK, TRAIL_EMITTER_FLAG_DEADTRAIL)
524#define TRAIL_EMITTER_IS_HEAD(index) (TRAIL_EMITTER_IS_START(index) || TRAIL_EMITTER_IS_DEADTRAIL(index))
525#define TRAIL_EMITTER_IS_HEADONLY(index) ((TRAIL_EMITTER_IS_START(index) || TRAIL_EMITTER_IS_DEADTRAIL(index)) && \
526 (TRAIL_EMITTER_GET_NEXT(index) == TRAIL_EMITTER_NULL_NEXT))
529#define TRAIL_EMITTER_GET_PREV(index) TRAIL_EMITTER_GET_PREVNEXT(index, TRAIL_EMITTER_PREV_MASK, TRAIL_EMITTER_PREV_SHIFT)
530#define TRAIL_EMITTER_SET_PREV(index, prev) TRAIL_EMITTER_SET_PREVNEXT(index, TRAIL_EMITTER_PREV_MASK, TRAIL_EMITTER_PREV_SHIFT, prev)
531#define TRAIL_EMITTER_GET_NEXT(index) TRAIL_EMITTER_GET_PREVNEXT(index, TRAIL_EMITTER_NEXT_MASK, TRAIL_EMITTER_NEXT_SHIFT)
532#define TRAIL_EMITTER_SET_NEXT(index, next) TRAIL_EMITTER_SET_PREVNEXT(index, TRAIL_EMITTER_NEXT_MASK, TRAIL_EMITTER_NEXT_SHIFT, next)
611#define BEAM2_TYPEDATA_LOCKED_MASK 0x80000000
612#define BEAM2_TYPEDATA_LOCKED(x) ((x & BEAM2_TYPEDATA_LOCKED_MASK) != 0)
613#define BEAM2_TYPEDATA_SETLOCKED(x, Locked) (x = Locked ? (x | BEAM2_TYPEDATA_LOCKED_MASK) : (x & ~BEAM2_TYPEDATA_LOCKED_MASK))
615#define BEAM2_TYPEDATA_FREQUENCY_MASK 0x00fff000
616#define BEAM2_TYPEDATA_FREQUENCY_SHIFT 12
617#define BEAM2_TYPEDATA_FREQUENCY(x) ((x & BEAM2_TYPEDATA_FREQUENCY_MASK) >> BEAM2_TYPEDATA_FREQUENCY_SHIFT)
618#define BEAM2_TYPEDATA_SETFREQUENCY(x, Freq) (x = ((x & ~BEAM2_TYPEDATA_FREQUENCY_MASK) | (Freq << BEAM2_TYPEDATA_FREQUENCY_SHIFT)))
717 if (bAbsolute ==
false)
853template <
typename ElementType>
869 ArrayMax( ArraySize ),
899 return (
int32)(Data - Array);
1234 Ar << ParticleIndices;
1239 if (ParticleData.
Num())
1273 void*
operator new(
size_t Size);
1274 void operator delete(
void *RawMemory,
size_t Size);
1404 int32 ParticleCount,
const uint8* ParticleData,
int32 ParticleStride,
const uint16* ParticleIndices,
1412 checkf(0,
TEXT(
"GetDynamicVertexStride MUST be overridden"));
1421 checkf(0,
TEXT(
"GetDynamicParameterVertexStride MUST be overridden"));
1430 checkf(0,
TEXT(
"GetSourceData MUST be overridden"));
1439 checkf(0,
TEXT(
"GetIndexAllocInfo is not valid for this class."));
2281#if WITH_PARTICLE_PERF_STATS
2349 static void UpdateStats();
2461#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_6
#define NULL
Definition oodle2base.h:134
#define checkSlow(expr)
Definition AssertionMacros.h:332
#define check(expr)
Definition AssertionMacros.h:314
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
@ INDEX_NONE
Definition CoreMiscDefines.h:150
#define DECLARE_CYCLE_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:679
#define DECLARE_DWORD_COUNTER_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:682
#define DECLARE_STATS_GROUP(GroupDesc, GroupId, GroupCat)
Definition Stats.h:689
#define DECLARE_MEMORY_STAT_EXTERN(CounterName, StatId, GroupId, API)
Definition Stats.h:687
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
#define FVector
Definition IOSSystemIncludes.h:8
void Init()
Definition LockFreeList.h:4
#define DECLARE_LOG_CATEGORY_EXTERN(CategoryName, DefaultVerbosity, CompileTimeVerbosity)
Definition LogMacros.h:361
UE::Math::TVector< float > FVector3f
Definition MathFwd.h:73
UE::Math::TVector2< double > FVector2D
Definition MathFwd.h:48
#define UENUM(...)
Definition ObjectMacros.h:749
EDynamicEmitterType
Definition ParticleHelper.h:1121
@ DET_Mesh
Definition ParticleHelper.h:1124
@ DET_Custom
Definition ParticleHelper.h:1128
@ DET_Unknown
Definition ParticleHelper.h:1122
@ DET_AnimTrail
Definition ParticleHelper.h:1127
@ DET_Sprite
Definition ParticleHelper.h:1123
@ DET_Beam2
Definition ParticleHelper.h:1125
@ DET_Ribbon
Definition ParticleHelper.h:1126
void GetDynamicValueFromPayload(int32 InDynamicPayloadOffset, const FBaseParticle &InParticle, FVector4f &OutDynamicData)
Definition ParticleHelper.h:1015
EParticleDetailMode
Definition ParticleHelper.h:43
@ UMETA
Definition ParticleHelper.h:44
const int32 PDM_DefaultValue
Definition ParticleHelper.h:50
void Particle_SetColorFromVector(const FVector3f &InColorVec, const float InAlpha, FLinearColor &OutColor)
Definition ParticleHelper.h:126
EParticleStates
Definition ParticleHelper.h:219
@ STATE_Mask
Definition ParticleHelper.h:237
@ STATE_Particle_IgnoreCollisions
Definition ParticleHelper.h:225
@ STATE_Particle_DelayCollisions
Definition ParticleHelper.h:233
@ STATE_Particle_FreezeRotation
Definition ParticleHelper.h:229
@ STATE_Particle_Freeze
Definition ParticleHelper.h:223
@ STATE_Particle_JustSpawned
Definition ParticleHelper.h:221
@ STATE_CounterMask
Definition ParticleHelper.h:239
@ STATE_Particle_CollisionIgnoreCheck
Definition ParticleHelper.h:231
@ STATE_Particle_FreezeTranslation
Definition ParticleHelper.h:227
@ STATE_Particle_CollisionHasOccurred
Definition ParticleHelper.h:235
EParticleSignificanceLevel
Definition ParticleHelper.h:2398
ENGINE_API TGlobalResource< FNullDynamicParameterVertexBuffer > GNullDynamicParameterVertexBuffer
Definition ParticleVertexFactory.cpp:17
EParticleSystemInsignificanceReaction
Definition ParticleHelper.h:2414
FVector3f GetParticleBaseSize(const FBaseParticle &Particle, bool bKeepFlipScale=false)
Definition ParticleHelper.h:2382
FVector2D GetParticleSizeWithUVFlipInSign(const FBaseParticle &Particle, const FVector2D &ScaledSize)
Definition ParticleHelper.h:2387
uint32 Size
Definition VulkanMemory.cpp:4034
Definition Archive.h:1208
UE_FORCEINLINE_HINT bool IsLoading() const
Definition Archive.h:236
UE_FORCEINLINE_HINT bool IsObjectReferenceCollector() const
Definition Archive.h:456
Definition GlobalRenderResources.h:300
Definition GlobalRenderResources.h:216
Definition MaterialRenderProxy.h:102
Definition MeshElementCollector.h:26
Definition MeshParticleVertexFactory.h:46
Definition ParticleHelper.h:2355
virtual void InitRHI(FRHICommandListBase &RHICmdList) override
Definition ParticleHelper.h:2360
Definition OutputDevice.h:133
Definition ParticleHelper.h:2241
~FParticleDynamicData()
Definition ParticleHelper.h:2248
uint32 EmitterIndex
Definition ParticleHelper.h:2270
FParticleDynamicData()
Definition ParticleHelper.h:2243
void ClearEmitterDataArray()
Definition ParticleHelper.h:2257
FVector SystemPositionForMacroUVs
Definition ParticleHelper.h:2276
uint32 GetMemoryFootprint(void) const
Definition ParticleHelper.h:2267
TArray< FDynamicEmitterDataBase *, TInlineAllocator< 12 > > DynamicEmitterDataArray
Definition ParticleHelper.h:2273
float SystemRadiusForMacroUVs
Definition ParticleHelper.h:2279
Definition ParticleHelper.h:2429
TArray< class UParticleSystem *, TInlineAllocator< 32 > > SystemsToReset
Definition ParticleHelper.h:2432
ENGINE_API ~FParticleResetContext()
Definition ParticleSystemComponent.cpp:5496
ENGINE_API void AddTemplate(class UParticleSystem *Template)
Definition ParticleSystemComponent.cpp:5474
Definition ParticleSystemSceneProxy.h:37
Definition ParticleVertexFactory.h:31
Definition PrimitiveDrawInterface.h:19
Definition RHICommandList.h:455
FRHIBufferInitializer CreateBufferInitializer(const FRHIBufferCreateDesc &CreateDesc)
Definition RHICommandList.h:792
Definition SceneView.h:2212
Definition SceneView.h:1425
Definition PrimitiveSceneProxy.h:172
Definition RenderResource.h:474
FBufferRHIRef VertexBufferRHI
Definition RenderResource.h:489
UE_FORCEINLINE_HINT SizeType AddUninitialized()
Definition Array.h:1664
UE_REWRITE SizeType Num() const
Definition Array.h:1144
UE_NODEBUG UE_FORCEINLINE_HINT ElementType * GetData() UE_LIFETIMEBOUND
Definition Array.h:1027
Definition RenderResource.h:543
Definition ParticleHelper.h:855
bool Contains(const ElementType &Item) const
Definition ParticleHelper.h:910
int32 Find(const ElementType &Item) const
Definition ParticleHelper.h:892
TPreallocatedArrayProxy(uint8 *ArrayStart, int32 ArraySize)
Definition ParticleHelper.h:868
int32 Num() const
Definition ParticleHelper.h:915
TPreallocatedArrayProxy()
Definition ParticleHelper.h:859
ElementType & operator[](int32 Index)
Definition ParticleHelper.h:874
const ElementType & operator[](int32 Index) const
Definition ParticleHelper.h:881
Definition MaterialInterface.h:296
Definition ParticleEmitter.h:98
Definition ParticleLODLevel.h:22
Definition ParticleModuleBeamModifier.h:66
Definition ParticleModuleBeamNoise.h:24
Definition ParticleModuleBeamSource.h:26
Definition ParticleModuleBeamTarget.h:25
Definition ParticleModuleOrientationAxisLock.h:42
Definition ParticleModuleTrailSource.h:41
Definition ParticleModuleTypeDataBeam2.h:69
Definition ParticleModuleTypeDataMesh.h:63
Definition ParticleModule.h:149
Definition ParticleSpriteEmitter.h:28
Definition ParticleSystem.h:160
Definition StaticMesh.h:593
Definition SceneComponent.h:24
Type
Definition RHIFeatureLevel.h:20
@ false
Definition radaudio_common.h:23
U16 Index
Definition radfft.cpp:71
Definition ParticleHelper.h:814
FVector3f Tangent
Definition ParticleHelper.h:818
FVector3f Direction
Definition ParticleHelper.h:816
float InterpolationParameter
Definition ParticleHelper.h:822
float Length
Definition ParticleHelper.h:820
Definition ParticleHelper.h:1070
~FAsyncBufferFillData()
Definition ParticleHelper.h:1099
void * IndexData
Definition ParticleHelper.h:1086
void * VertexData
Definition ParticleHelper.h:1082
int32 VertexSize
Definition ParticleHelper.h:1080
int32 IndexCount
Definition ParticleHelper.h:1084
FMatrix WorldToLocal
Definition ParticleHelper.h:1074
FMatrix LocalToWorld
Definition ParticleHelper.h:1072
int32 OutTriangleCount
Definition ParticleHelper.h:1088
void * DynamicParameterData
Definition ParticleHelper.h:1090
FAsyncBufferFillData()
Definition ParticleHelper.h:1093
int32 VertexCount
Definition ParticleHelper.h:1078
const FSceneView * View
Definition ParticleHelper.h:1076
Definition ParticleHelper.h:590
FVector3f SourceVelocity
Definition ParticleHelper.h:593
uint32 SourcePointer
Definition ParticleHelper.h:592
int32 SourceIndex
Definition ParticleHelper.h:591
Definition ParticleHelper.h:181
FVector3f Velocity
Definition ParticleHelper.h:191
float OneOverMaxLifetime
Definition ParticleHelper.h:210
FVector3f BaseVelocity
Definition ParticleHelper.h:187
float Placeholder0
Definition ParticleHelper.h:211
FVector3f BaseSize
Definition ParticleHelper.h:195
int32 Flags
Definition ParticleHelper.h:200
float Placeholder1
Definition ParticleHelper.h:212
float RotationRate
Definition ParticleHelper.h:196
FVector OldLocation
Definition ParticleHelper.h:183
FVector Location
Definition ParticleHelper.h:184
float Rotation
Definition ParticleHelper.h:188
FVector3f Size
Definition ParticleHelper.h:199
float BaseRotationRate
Definition ParticleHelper.h:192
FLinearColor Color
Definition ParticleHelper.h:203
FLinearColor BaseColor
Definition ParticleHelper.h:206
float RelativeTime
Definition ParticleHelper.h:209
Definition ParticleHelper.h:621
FVector Direction
Definition ParticleHelper.h:643
float TravelRatio
Definition ParticleHelper.h:649
FVector SourcePoint
Definition ParticleHelper.h:623
float TargetStrength
Definition ParticleHelper.h:634
int32 Steps
Definition ParticleHelper.h:647
FVector SourceTangent
Definition ParticleHelper.h:625
FVector TargetPoint
Definition ParticleHelper.h:630
FVector TargetTangent
Definition ParticleHelper.h:632
int32 TriangleCount
Definition ParticleHelper.h:652
int32 Flags
Definition ParticleHelper.h:668
int32 InterpolationSteps
Definition ParticleHelper.h:640
double StepSize
Definition ParticleHelper.h:645
float SourceStrength
Definition ParticleHelper.h:627
int32 Lock_Max_NumNoisePoints
Definition ParticleHelper.h:637
Definition ParticleHelper.h:685
FVector Position
Definition ParticleHelper.h:692
void UpdatePosition(FVector &Value)
Definition ParticleHelper.h:697
void UpdateStrength(float &Value)
Definition ParticleHelper.h:739
uint32 bModifyStrength
Definition ParticleHelper.h:690
uint32 bModifyPosition
Definition ParticleHelper.h:686
uint32 bScalePosition
Definition ParticleHelper.h:687
uint32 bScaleStrength
Definition ParticleHelper.h:691
FVector Tangent
Definition ParticleHelper.h:693
uint32 bModifyTangent
Definition ParticleHelper.h:688
void UpdateTangent(FVector &Value, bool bAbsolute)
Definition ParticleHelper.h:712
uint32 bScaleTangent
Definition ParticleHelper.h:689
float Strength
Definition ParticleHelper.h:694
Definition ParticleHelper.h:679
int32 NoiseIndex
Definition ParticleHelper.h:680
Definition ParticleHelper.h:673
int32 ParticleIndex
Definition ParticleHelper.h:674
Definition ParticleHelper.h:1027
float BaseOffset
Definition ParticleHelper.h:1029
float Offset
Definition ParticleHelper.h:1031
Definition ParticleHelper.h:2209
virtual int32 FillVertexData(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:6120
FDynamicAnimTrailEmitterData(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:2210
virtual void RenderDebug(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const
Definition ParticleSystemRender.cpp:5976
virtual ~FDynamicAnimTrailEmitterData()
Definition ParticleHelper.h:2215
FDynamicTrailsEmitterReplayData Source
Definition ParticleHelper.h:2232
Definition ParticleHelper.h:1937
virtual void GetDynamicMeshElementsEmitter(const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
Definition ParticleSystemRender.cpp:2218
virtual void RenderDirectLine(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View) const
Definition ParticleSystemRender.cpp:2345
virtual void DoBufferFill(FAsyncBufferFillData &Me) const override
Definition ParticleSystemRender.cpp:2151
static const uint32 MaxBeams
Definition ParticleHelper.h:1938
int32 FillVertexData_NoNoise(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:2948
virtual int32 GetDynamicParameterVertexStride() const override
Definition ParticleHelper.h:1989
FDynamicBeam2EmitterReplayData Source
Definition ParticleHelper.h:2002
int32 FillData_InterpolatedNoise(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:4326
virtual void RenderLines(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View) const
Definition ParticleSystemRender.cpp:2371
virtual const FDynamicEmitterReplayDataBase & GetSource() const override
Definition ParticleHelper.h:1970
virtual void RenderDebug(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const override
Definition ParticleSystemRender.cpp:2787
static const uint32 MaxInterpolationPoints
Definition ParticleHelper.h:1939
int32 FillData_Noise(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:3361
virtual void GetIndexAllocInfo(int32 &OutNumIndices, int32 &OutStride) const override
Definition ParticleSystemRender.cpp:2791
~FDynamicBeam2EmitterData()
Definition ParticleSystemRender.cpp:2124
int32 FillIndexData(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:2911
static const uint32 MaxNoiseFrequency
Definition ParticleHelper.h:1940
int32 LastFramePreRendered
Definition ParticleHelper.h:2004
FDynamicBeam2EmitterData(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:1942
virtual int32 GetDynamicVertexStride(ERHIFeatureLevel::Type) const override
Definition ParticleHelper.h:1981
Definition ParticleHelper.h:1796
bool bUseSource
Definition ParticleHelper.h:1817
bool bRenderGeometry
Definition ParticleHelper.h:1836
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:1884
bool bRenderLines
Definition ParticleHelper.h:1838
int32 NoiseRateOffset
Definition ParticleHelper.h:1807
bool bHighFreqNoise_Enabled
Definition ParticleHelper.h:1815
int32 NoiseTessellation
Definition ParticleHelper.h:1822
int32 InterpolationPoints
Definition ParticleHelper.h:1833
bool bRenderTessellation
Definition ParticleHelper.h:1839
float NoiseLockRadius
Definition ParticleHelper.h:1827
int32 Sheets
Definition ParticleHelper.h:1820
bool bRenderDirectLine
Definition ParticleHelper.h:1837
FDynamicBeam2EmitterReplayData()
Definition ParticleHelper.h:1842
int32 TextureTile
Definition ParticleHelper.h:1830
float NoiseLockTime
Definition ParticleHelper.h:1826
int32 InterpolatedPointsOffset
Definition ParticleHelper.h:1806
int32 Frequency
Definition ParticleHelper.h:1821
bool bLowFreqNoise_Enabled
Definition ParticleHelper.h:1814
int32 TaperValuesOffset
Definition ParticleHelper.h:1811
int32 NextNoisePointsOffset
Definition ParticleHelper.h:1810
int32 UpVectorStepSize
Definition ParticleHelper.h:1802
int32 TargetNoisePointsOffset
Definition ParticleHelper.h:1809
int32 IndexStride
Definition ParticleHelper.h:1799
bool bTargetNoise
Definition ParticleHelper.h:1819
float NoiseTangentStrength
Definition ParticleHelper.h:1824
int32 VertexCount
Definition ParticleHelper.h:1797
int32 BeamDataOffset
Definition ParticleHelper.h:1805
TArray< int32 > TrianglesPerSheet
Definition ParticleHelper.h:1801
int32 NoiseDeltaTimeOffset
Definition ParticleHelper.h:1808
int32 IndexCount
Definition ParticleHelper.h:1798
uint8 TaperMethod
Definition ParticleHelper.h:1832
float NoiseTension
Definition ParticleHelper.h:1828
float NoiseRangeScale
Definition ParticleHelper.h:1823
int32 NoiseDistanceScaleOffset
Definition ParticleHelper.h:1812
float TextureTileDistance
Definition ParticleHelper.h:1831
FVector3f NoiseSpeed
Definition ParticleHelper.h:1825
bool bSmoothNoise_Enabled
Definition ParticleHelper.h:1816
bool bUseTarget
Definition ParticleHelper.h:1818
Definition ParticleHelper.h:1265
uint32 bValid
Definition ParticleHelper.h:1319
virtual ~FDynamicEmitterDataBase()
Definition ParticleHelper.h:1268
virtual const FMacroUVOverride & GetMacroUVOverride() const
Definition ParticleHelper.h:1312
virtual const FDynamicEmitterReplayDataBase & GetSource() const =0
TStatId StatID
Definition ParticleHelper.h:1315
virtual const FMaterialRenderProxy * GetMaterialRenderProxy()=0
int32 EmitterIndex
Definition ParticleHelper.h:1321
virtual void ReleaseRenderThreadResources(const FParticleSystemSceneProxy *InOwnerProxy)
Definition ParticleHelper.h:1290
virtual void GatherSimpleLights(const FParticleSystemSceneProxy *Proxy, const FSceneViewFamily &ViewFamily, FSimpleLightArray &OutParticleLights) const
Definition ParticleHelper.h:1306
uint32 bSelected
Definition ParticleHelper.h:1317
virtual void GetDynamicMeshElementsEmitter(const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const
Definition ParticleHelper.h:1294
virtual void UpdateRenderThreadResourcesEmitter(const FParticleSystemSceneProxy *InOwnerProxy)
Definition ParticleHelper.h:1281
Definition ParticleHelper.h:1174
FMacroUVOverride MacroUVOverride
Definition ParticleHelper.h:1190
virtual ~FDynamicEmitterReplayDataBase()
Definition ParticleHelper.h:1202
int32 ParticleStride
Definition ParticleHelper.h:1181
FDynamicEmitterReplayDataBase()
Definition ParticleHelper.h:1193
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:1207
FVector3f Scale
Definition ParticleHelper.h:1184
EDynamicEmitterType eEmitterType
Definition ParticleHelper.h:1176
FParticleDataContainer DataContainer
Definition ParticleHelper.h:1182
int32 SortMode
Definition ParticleHelper.h:1187
int32 ActiveParticleCount
Definition ParticleHelper.h:1179
Definition ParticleHelper.h:1644
virtual void GetDynamicMeshElementsEmitter(const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
Definition ParticleSystemRender.cpp:1168
void GetParticleTransform(const FBaseParticle &InParticle, const FParticleSystemSceneProxy *Proxy, const FSceneView *View, FMatrix &OutTransformMat) const
Definition ParticleSystemRender.cpp:1421
uint32 bUseMeshLockedAxis
Definition ParticleHelper.h:1771
uint32 bApplyPreRotation
Definition ParticleHelper.h:1769
virtual void UpdateRenderThreadResourcesEmitter(const FParticleSystemSceneProxy *InOwnerProxy) override
Definition ParticleSystemRender.cpp:1104
void CalculateParticleTransform(const FMatrix &ProxyLocalToWorld, const FVector &ParticleLocation, float ParticleRotation, const FVector3f &ParticleVelocity, const FVector3f &ParticleSize, const FVector3f &ParticlePayloadInitialOrientation, const FVector3f &ParticlePayloadRotation, const FVector &ParticlePayloadCameraOffset, const FVector3f &ParticlePayloadOrbitOffset, const FVector &ViewOrigin, const FVector3f &ViewDirection, FMatrix &OutTransformMat) const
Definition ParticleSystemRender.cpp:1523
void GetInstanceData(void *InstanceData, void *DynamicParameterData, void *PrevTransformBuffer, const FParticleSystemSceneProxy *Proxy, const FSceneView *View, uint32 InstanceFactor) const
Definition ParticleSystemRender.cpp:1874
bool bUseStaticMeshLODs
Definition ParticleHelper.h:1787
FDynamicMeshEmitterReplayData Source
Definition ParticleHelper.h:1756
virtual void GatherSimpleLights(const FParticleSystemSceneProxy *Proxy, const FSceneViewFamily &ViewFamily, FSimpleLightArray &OutParticleLights) const override
Definition ParticleSystemRender.cpp:1416
void GetParticlePrevTransform(const FBaseParticle &InParticle, const FParticleSystemSceneProxy *Proxy, const FSceneView *View, FMatrix &OutTransformMat) const
Definition ParticleSystemRender.cpp:1472
uint32 GetMeshLODIndexFromProxy(const FParticleSystemSceneProxy *InOwnerProxy) const
Definition ParticleSystemRender.cpp:1145
int32 LastFramePreRendered
Definition ParticleHelper.h:1758
virtual int32 GetDynamicParameterVertexStride() const override
Definition ParticleHelper.h:1729
uint8 CameraFacingOption
Definition ParticleHelper.h:1785
void SetupVertexFactory(FRHICommandListBase &RHICmdList, FMeshParticleVertexFactory *InVertexFactory, const FStaticMeshLODResources &LODResources, uint32 LODIdx) const
Definition ParticleSystemRender.cpp:2112
virtual int32 GetDynamicVertexStride(ERHIFeatureLevel::Type) const override
Definition ParticleHelper.h:1724
virtual void ReleaseRenderThreadResources(const FParticleSystemSceneProxy *InOwnerProxy) override
Definition ParticleSystemRender.cpp:1115
int32 LastCalculatedMeshLOD
Definition ParticleHelper.h:1789
uint32 MeshTypeDataOffset
Definition ParticleHelper.h:1764
TArray< FMaterialRenderProxy *, TInlineAllocator< 2 > > MeshMaterials
Definition ParticleHelper.h:1761
virtual const FDynamicEmitterReplayDataBase & GetSource() const override
Definition ParticleHelper.h:1748
UStaticMesh * StaticMesh
Definition ParticleHelper.h:1760
uint32 bUseCameraFacing
Definition ParticleHelper.h:1773
const FParticleMeshEmitterInstance * EmitterInstance
Definition ParticleHelper.h:1790
uint32 bFaceCameraDirectionRatherThanPosition
Definition ParticleHelper.h:1783
uint32 bApplyParticleRotationAsSpin
Definition ParticleHelper.h:1778
float LODSizeScale
Definition ParticleHelper.h:1788
virtual ~FDynamicMeshEmitterData()
Definition ParticleSystemRender.cpp:997
virtual const FDynamicSpriteEmitterReplayDataBase * GetSourceData() const override
Definition ParticleHelper.h:1737
Definition ParticleHelper.h:1593
int32 SubUVDataOffset
Definition ParticleHelper.h:1595
bool bScaleUV
Definition ParticleHelper.h:1598
int32 SubImages_Vertical
Definition ParticleHelper.h:1597
int32 SubUVInterpMethod
Definition ParticleHelper.h:1594
bool bMeshRotationActive
Definition ParticleHelper.h:1602
int32 MeshRotationOffset
Definition ParticleHelper.h:1599
uint8 MeshAlignment
Definition ParticleHelper.h:1601
int32 MeshMotionBlurOffset
Definition ParticleHelper.h:1600
FVector3f LockedAxis
Definition ParticleHelper.h:1603
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:1622
int32 SubImages_Horizontal
Definition ParticleHelper.h:1596
FDynamicMeshEmitterReplayData()
Definition ParticleHelper.h:1606
Definition ParticleHelper.h:2170
virtual const FDynamicRibbonEmitterReplayData * GetSourceData() const
Definition ParticleHelper.h:2191
virtual int32 FillVertexData(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:5411
uint32 RenderAxisOption
Definition ParticleHelper.h:2204
virtual void RenderDebug(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const
Definition ParticleSystemRender.cpp:5226
FDynamicRibbonEmitterReplayData Source
Definition ParticleHelper.h:2201
FDynamicRibbonEmitterData(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:2171
virtual ~FDynamicRibbonEmitterData()
Definition ParticleHelper.h:2176
Definition ParticleHelper.h:2056
FDynamicRibbonEmitterReplayData()
Definition ParticleHelper.h:2061
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:2068
int32 MaxTessellationBetweenParticles
Definition ParticleHelper.h:2058
Definition ParticleHelper.h:1366
uint32 bUsesDynamicParameter
Definition ParticleHelper.h:1483
virtual ~FDynamicSpriteEmitterDataBase()
Definition ParticleHelper.h:1374
virtual void RenderDebug(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const
Definition ParticleSystemRender.cpp:265
virtual const FDynamicSpriteEmitterReplayDataBase * GetSourceData() const
Definition ParticleHelper.h:1428
void SortSpriteParticles(int32 SortMode, bool bLocalSpace, int32 ParticleCount, const uint8 *ParticleData, int32 ParticleStride, const uint16 *ParticleIndices, const FSceneView *View, const FMatrix &LocalToWorld, FParticleOrder *ParticleOrder) const
Definition ParticleSystemRender.cpp:196
virtual int32 GetDynamicParameterVertexStride() const
Definition ParticleHelper.h:1419
const FMaterialRenderProxy * GetMaterialRenderProxy()
Definition ParticleHelper.h:1385
virtual void GetIndexAllocInfo(int32 &OutNumIndices, int32 &OutStride) const
Definition ParticleHelper.h:1437
FDynamicSpriteEmitterDataBase(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:1367
void BuildViewFillData(const FParticleSystemSceneProxy *Proxy, const FSceneView *InView, int32 InVertexCount, int32 InVertexSize, int32 InDynamicParameterVertexSize, FGlobalDynamicIndexBuffer &DynamicIndexBuffer, FGlobalDynamicVertexBuffer &DynamicVertexBuffer, FGlobalDynamicVertexBufferAllocation &DynamicVertexAllocation, FGlobalDynamicIndexBufferAllocation &DynamicIndexAllocation, FGlobalDynamicVertexBufferAllocation *DynamicParameterAllocation, FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:298
virtual int32 GetDynamicVertexStride(ERHIFeatureLevel::Type) const
Definition ParticleHelper.h:1410
virtual void DoBufferFill(FAsyncBufferFillData &Me) const
Definition ParticleHelper.h:1452
const FMaterialRenderProxy * MaterialResource
Definition ParticleHelper.h:1481
Definition ParticleHelper.h:1509
virtual int32 GetDynamicParameterVertexStride() const override
Definition ParticleHelper.h:1533
FDynamicSpriteEmitterData(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:1510
virtual int32 GetDynamicVertexStride(ERHIFeatureLevel::Type InFeatureLevel) const override
Definition ParticleHelper.h:1525
virtual void UpdateRenderThreadResourcesEmitter(const FParticleSystemSceneProxy *InOwnerProxy) override
Definition ParticleSystemRender.cpp:865
FDynamicSpriteEmitterReplayData Source
Definition ParticleHelper.h:1584
bool GetVertexAndIndexData(void *VertexData, void *DynamicParameterVertexData, void *FillIndexData, FParticleOrder *ParticleOrder, const FVector &InCameraPosition, const FMatrix &InLocalToWorld, uint32 InstanceFactor) const
Definition ParticleSystemRender.cpp:413
FParticleSpriteUniformParameters UniformParameters
Definition ParticleHelper.h:1587
virtual const FDynamicEmitterReplayDataBase & GetSource() const override
Definition ParticleHelper.h:1576
~FDynamicSpriteEmitterData()
Definition ParticleHelper.h:1515
virtual void GatherSimpleLights(const FParticleSystemSceneProxy *Proxy, const FSceneViewFamily &ViewFamily, FSimpleLightArray &OutParticleLights) const override
Definition ParticleSystemRender.cpp:653
virtual const FDynamicSpriteEmitterReplayDataBase * GetSourceData() const override
Definition ParticleHelper.h:1541
virtual void GetDynamicMeshElementsEmitter(const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
Definition ParticleSystemRender.cpp:675
Definition ParticleHelper.h:1327
uint8 LockAxisFlag
Definition ParticleHelper.h:1346
float MaxFacingCameraBlendDistance
Definition ParticleHelper.h:1353
int32 MaxDrawCount
Definition ParticleHelper.h:1334
struct FParticleRequiredModule * RequiredModule
Definition ParticleHelper.h:1329
int32 LightDataOffset
Definition ParticleHelper.h:1337
FVector3f LWCTile
Definition ParticleHelper.h:1333
uint8 ScreenAlignment
Definition ParticleHelper.h:1345
bool bUseLocalSpace
Definition ParticleHelper.h:1343
int32 OrbitModuleOffset
Definition ParticleHelper.h:1335
uint8 EmitterRenderMode
Definition ParticleHelper.h:1347
int32 SubImages_Horizontal
Definition ParticleHelper.h:1341
float InvDeltaSeconds
Definition ParticleHelper.h:1332
virtual void Serialize(FArchive &Ar)
Definition ParticleEmitterInstances.cpp:4051
int32 CameraPayloadOffset
Definition ParticleHelper.h:1339
bool bUseVelocityForMotionBlur
Definition ParticleHelper.h:1350
bool bLockAxis
Definition ParticleHelper.h:1344
float LightVolumetricScatteringIntensity
Definition ParticleHelper.h:1338
uint8 EmitterNormalsMode
Definition ParticleHelper.h:1348
UMaterialInterface * MaterialInterface
Definition ParticleHelper.h:1328
FVector2f PivotOffset
Definition ParticleHelper.h:1349
bool bRemoveHMDRoll
Definition ParticleHelper.h:1351
FDynamicSpriteEmitterReplayDataBase()
Definition ParticleEmitterInstances.cpp:4015
FVector3f NormalsSphereCenter
Definition ParticleHelper.h:1330
int32 DynamicParameterDataOffset
Definition ParticleHelper.h:1336
int32 SubImages_Vertical
Definition ParticleHelper.h:1342
~FDynamicSpriteEmitterReplayDataBase()
Definition ParticleEmitterInstances.cpp:4045
int32 SubUVDataOffset
Definition ParticleHelper.h:1340
float MinFacingCameraBlendDistance
Definition ParticleHelper.h:1352
FVector3f NormalsCylinderDirection
Definition ParticleHelper.h:1331
Definition ParticleHelper.h:1489
FDynamicSpriteEmitterReplayData()
Definition ParticleHelper.h:1491
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:1497
Definition ParticleHelper.h:2078
virtual const FDynamicEmitterReplayDataBase & GetSource() const override
Definition ParticleHelper.h:2108
uint32 bRenderTessellation
Definition ParticleHelper.h:2160
virtual void RenderDebug(const FParticleSystemSceneProxy *Proxy, FPrimitiveDrawInterface *PDI, const FSceneView *View, bool bCrosses) const override
Definition ParticleSystemRender.cpp:5116
virtual int32 FillIndexData(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:5128
uint32 bClipSourceSegement
Definition ParticleHelper.h:2156
virtual void DoBufferFill(FAsyncBufferFillData &Me) const override
Definition ParticleHelper.h:2120
FDynamicTrailsEmitterReplayData * SourcePointer
Definition ParticleHelper.h:2152
~FDynamicTrailsEmitterData()
Definition ParticleSystemRender.cpp:4951
virtual int32 GetDynamicVertexStride(ERHIFeatureLevel::Type) const override
Definition ParticleHelper.h:2134
uint32 bTextureTileDistance
Definition ParticleHelper.h:2161
float DistanceTessellationStepSize
Definition ParticleHelper.h:2163
uint32 bRenderParticles
Definition ParticleHelper.h:2158
uint32 bRenderTangents
Definition ParticleHelper.h:2159
virtual void GetDynamicMeshElementsEmitter(const FParticleSystemSceneProxy *Proxy, const FSceneView *View, const FSceneViewFamily &ViewFamily, int32 ViewIndex, FMeshElementCollector &Collector) const override
Definition ParticleSystemRender.cpp:4973
virtual int32 FillVertexData(struct FAsyncBufferFillData &Data) const
Definition ParticleSystemRender.cpp:5208
float TangentTessellationScalar
Definition ParticleHelper.h:2164
virtual void GetIndexAllocInfo(int32 &OutNumIndices, int32 &OutStride) const override
Definition ParticleSystemRender.cpp:5121
virtual int32 GetDynamicParameterVertexStride() const override
Definition ParticleHelper.h:2142
float TextureTileDistance
Definition ParticleHelper.h:2165
uint32 bRenderGeometry
Definition ParticleHelper.h:2157
int32 LastFramePreRendered
Definition ParticleHelper.h:2154
virtual const FDynamicTrailsEmitterReplayData * GetSourceData() const override
Definition ParticleHelper.h:2114
FDynamicTrailsEmitterData(const UParticleModuleRequired *RequiredModule)
Definition ParticleHelper.h:2079
Definition ParticleHelper.h:2009
int32 IndexStride
Definition ParticleHelper.h:2013
FDynamicTrailsEmitterReplayData()
Definition ParticleHelper.h:2023
int32 IndexCount
Definition ParticleHelper.h:2012
int32 TrailDataOffset
Definition ParticleHelper.h:2016
int32 TrailCount
Definition ParticleHelper.h:2019
int32 MaxActiveParticleCount
Definition ParticleHelper.h:2018
int32 VertexCount
Definition ParticleHelper.h:2011
int32 Sheets
Definition ParticleHelper.h:2020
int32 PrimitiveCount
Definition ParticleHelper.h:2010
virtual void Serialize(FArchive &Ar)
Definition ParticleHelper.h:2036
Definition ParticleHelper.h:1003
float DynamicParameterValue[4]
Definition ParticleHelper.h:1005
Definition ParticleHelper.h:579
float ImageIndex
Definition ParticleHelper.h:582
float RandomImageTime
Definition ParticleHelper.h:583
Definition GlobalRenderResources.h:263
Definition GlobalRenderResources.h:195
Definition ParticleHelper.h:597
float InverseExposureBlend
Definition ParticleHelper.h:602
bool bAffectsTranslucency
Definition ParticleHelper.h:604
float RadiusScale
Definition ParticleHelper.h:600
bool bHighQuality
Definition ParticleHelper.h:605
float LightExponent
Definition ParticleHelper.h:601
bool bValid
Definition ParticleHelper.h:603
FVector3f ColorScale
Definition ParticleHelper.h:598
uint64 LightId
Definition ParticleHelper.h:599
Definition ParticleHelper.h:848
int32 LastSelectedIndex
Definition ParticleHelper.h:849
Definition ParticleHelper.h:1156
bool bOverride
Definition ParticleHelper.h:1159
friend FArchive & operator<<(FArchive &Ar, FMacroUVOverride &O)
Definition ParticleHelper.h:1163
float Radius
Definition ParticleHelper.h:1160
FVector3f Position
Definition ParticleHelper.h:1161
FMacroUVOverride()
Definition ParticleHelper.h:1157
static UE_FORCEINLINE_HINT void * Memzero(void *Dest, SIZE_T Count)
Definition UnrealMemory.h:131
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160
Definition ParticleHelper.h:837
FVector3f BaseParticlePrevVelocity
Definition ParticleHelper.h:838
FVector3f PayloadPrevRotation
Definition ParticleHelper.h:840
FVector3f BaseParticlePrevSize
Definition ParticleHelper.h:839
float BaseParticlePrevRotation
Definition ParticleHelper.h:842
float PayloadPrevCameraOffset
Definition ParticleHelper.h:843
FVector3f PayloadPrevOrbitOffset
Definition ParticleHelper.h:841
Definition ParticleHelper.h:460
float DynamicValue[4]
Definition ParticleHelper.h:462
Definition ParticleHelper.h:466
FVector4f PrevTransform1
Definition ParticleHelper.h:468
FVector4f PrevTransform2
Definition ParticleHelper.h:469
FVector4f PrevTransform0
Definition ParticleHelper.h:467
Definition ParticleHelper.h:439
FVector4f Velocity
Definition ParticleHelper.h:447
int16 SubUVParams[4]
Definition ParticleHelper.h:450
float RelativeTime
Definition ParticleHelper.h:456
float SubUVLerp
Definition ParticleHelper.h:453
FVector4f Transform[3]
Definition ParticleHelper.h:444
FLinearColor Color
Definition ParticleHelper.h:441
Definition ParticleHelper.h:827
FVector3f CurContinuousRotation
Definition ParticleHelper.h:831
FVector3f InitialOrientation
Definition ParticleHelper.h:828
FVector3f InitRotation
Definition ParticleHelper.h:829
FVector3f RotationRate
Definition ParticleHelper.h:832
FVector3f Rotation
Definition ParticleHelper.h:830
FVector3f RotationRateBase
Definition ParticleHelper.h:833
Definition ParticleHelper.h:929
int32 SourceIndex
Definition ParticleHelper.h:931
Definition ParticleHelper.h:938
FVector3f RotationRate
Definition ParticleHelper.h:948
FVector3f PreviousOffset
Definition ParticleHelper.h:950
FVector3f Offset
Definition ParticleHelper.h:942
FVector3f Rotation
Definition ParticleHelper.h:944
FVector3f BaseRotationRate
Definition ParticleHelper.h:946
FVector3f BaseOffset
Definition ParticleHelper.h:940
Definition ParticleEmitterInstances.h:992
Definition ParticleHelper.h:432
float DynamicValue[4]
Definition ParticleHelper.h:434
Definition ParticleHelper.h:404
float ParticleId
Definition ParticleHelper.h:412
float SubImageIndex
Definition ParticleHelper.h:418
FLinearColor Color
Definition ParticleHelper.h:420
float Tex_V2
Definition ParticleHelper.h:427
FVector2f Size
Definition ParticleHelper.h:414
FVector3f Position
Definition ParticleHelper.h:406
float Tex_U2
Definition ParticleHelper.h:426
float RelativeTime
Definition ParticleHelper.h:408
FVector3f OldPosition
Definition ParticleHelper.h:410
float Tex_V
Definition ParticleHelper.h:423
float Rotation
Definition ParticleHelper.h:416
float Tex_U
Definition ParticleHelper.h:422
Definition ParticleHelper.h:974
uint8 Padding1
Definition ParticleHelper.h:978
uint8 Padding3
Definition ParticleHelper.h:980
uint8 Padding2
Definition ParticleHelper.h:979
uint8 CurrentLODBoundsCheckCount
Definition ParticleHelper.h:976
Definition ParticleHelper.h:965
FVector3f UsedDampingFactor
Definition ParticleHelper.h:966
float Delay
Definition ParticleHelper.h:969
int32 UsedCollisions
Definition ParticleHelper.h:968
FVector3f UsedDampingFactorRotation
Definition ParticleHelper.h:967
Definition ParticleHelper.h:1132
void Alloc(int32 InParticleDataNumBytes, int32 InParticleIndicesNumShorts)
Definition ParticleEmitterInstances.cpp:308
uint16 * ParticleIndices
Definition ParticleHelper.h:1137
FParticleDataContainer()
Definition ParticleHelper.h:1139
int32 MemBlockSize
Definition ParticleHelper.h:1133
~FParticleDataContainer()
Definition ParticleHelper.h:1147
int32 ParticleDataNumBytes
Definition ParticleHelper.h:1134
void Free()
Definition ParticleEmitterInstances.cpp:321
uint8 * ParticleData
Definition ParticleHelper.h:1136
int32 ParticleIndicesNumShorts
Definition ParticleHelper.h:1135
Definition ParticleHelper.h:987
uint32 bBurstEventsPresent
Definition ParticleHelper.h:991
uint32 bSpawnEventsPresent
Definition ParticleHelper.h:988
int32 DeathTrackingCount
Definition ParticleHelper.h:994
uint32 bDeathEventsPresent
Definition ParticleHelper.h:989
int32 SpawnTrackingCount
Definition ParticleHelper.h:993
int32 BurstTrackingCount
Definition ParticleHelper.h:996
int32 CollisionTrackingCount
Definition ParticleHelper.h:995
uint32 bCollisionEventsPresent
Definition ParticleHelper.h:990
Definition ParticleEmitterInstances.h:891
Definition ParticleHelper.h:1044
FParticleOrder(int32 InParticleIndex, uint32 InC)
Definition ParticleHelper.h:1058
float Z
Definition ParticleHelper.h:1049
int32 ParticleIndex
Definition ParticleHelper.h:1045
uint32 C
Definition ParticleHelper.h:1050
FParticleOrder(int32 InParticleIndex, float InZ)
Definition ParticleHelper.h:1053
Definition ParticlePerfStats.h:302
Definition ParticleHelper.h:1036
FRandomStream RandomStream
Definition ParticleHelper.h:1037
Definition ParticleModuleRequired.h:108
Definition ParticleHelper.h:957
float CurrentDistanceTravelled
Definition ParticleHelper.h:958
Definition ParticleEmitterInstances.h:839
Definition ParticleHelper.h:373
FVector3f Position
Definition ParticleHelper.h:377
FVector2f Size
Definition ParticleHelper.h:385
float ParticleId
Definition ParticleHelper.h:383
FLinearColor Color
Definition ParticleHelper.h:391
float Rotation
Definition ParticleHelper.h:387
float RelativeTime
Definition ParticleHelper.h:379
FVector2f UV
Definition ParticleHelper.h:375
float SubImageIndex
Definition ParticleHelper.h:389
FVector3f OldPosition
Definition ParticleHelper.h:381
Definition ParticleHelper.h:350
FVector3f OldPosition
Definition ParticleHelper.h:356
FLinearColor Color
Definition ParticleHelper.h:366
FVector2f Size
Definition ParticleHelper.h:360
float Rotation
Definition ParticleHelper.h:362
FVector3f Position
Definition ParticleHelper.h:352
float ParticleId
Definition ParticleHelper.h:358
float SubImageIndex
Definition ParticleHelper.h:364
float RelativeTime
Definition ParticleHelper.h:354
Definition ParticleHelper.h:2441
Type
Definition ParticleHelper.h:2443
@ SkipCookingEmittersBasedOnDetailMode
Definition ParticleHelper.h:2446
@ LatestVersion
Definition ParticleHelper.h:2452
@ FixLegacySpawningBugs
Definition ParticleHelper.h:2447
@ VersionPlusOne
Definition ParticleHelper.h:2451
@ AddEpicDetailMode
Definition ParticleHelper.h:2448
@ BeforeCustomVersionWasAdded
Definition ParticleHelper.h:2445
static const FGuid GUID
Definition ParticleHelper.h:2455
Definition ParticleHelper.h:397
float DynamicValue[4]
Definition ParticleHelper.h:399
Definition RHIResources.h:1417
FRHIBufferCreateDesc & SetInitActionInitializer()
Definition RHIResources.h:1542
FRHIBufferCreateDesc & SetInitialState(ERHIAccess InInitialState)
Definition RHIResources.h:1528
static FRHIBufferCreateDesc CreateVertex(const TCHAR *InDebugName)
Definition RHIResources.h:1438
FRHIBufferCreateDesc & AddUsage(EBufferUsageFlags InUsage)
Definition RHIResources.h:1524
Definition RHIBufferInitializer.h:12
void WriteData(const void *Source, size_t Size)
Definition RHIBufferInitializer.h:37
Definition RandomStream.h:20
Definition ParticleHelper.h:803
int32 SourceIndex
Definition ParticleHelper.h:809
FVector3f Tangent
Definition ParticleHelper.h:805
FVector3f Up
Definition ParticleHelper.h:807
Definition StaticMeshResources.h:426
Definition ParticleHelper.h:757
int32 Flags
Definition ParticleHelper.h:779
float PinchScaleFactor
Definition ParticleHelper.h:795
float SpawnDelta
Definition ParticleHelper.h:787
uint32 bInterpolatedSpawn
Definition ParticleHelper.h:797
int32 TriangleCount
Definition ParticleHelper.h:783
int32 TrailIndex
Definition ParticleHelper.h:781
uint32 bMovementSpawned
Definition ParticleHelper.h:799
int32 RenderingInterpCount
Definition ParticleHelper.h:793
float SpawnTime
Definition ParticleHelper.h:785
int32 SpawnedTessellationPoints
Definition ParticleHelper.h:791
float TiledU
Definition ParticleHelper.h:789
Definition LightweightStats.h:416
static CORE_API TQuat< double > FindBetweenNormals(const TVector< double > &Normal1, const TVector< double > &Normal2)
Definition UnrealMath.cpp:1440
T Z
Definition Vector.h:68
T Y
Definition Vector.h:65
T X
Definition Vector.h:62