UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
ParticleModuleBeamModifier.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
10#pragma once
11
12#include "CoreMinimal.h"
18#include "ParticleModuleBeamModifier.generated.h"
19
22class UParticleSystemComponent;
23struct FCurveEdEntry;
25
27UENUM()
29{
31 PEB2MT_Source UMETA(DisplayName="Source"),
33 PEB2MT_Target UMETA(DisplayName="Target"),
35};
36
37USTRUCT()
39{
41
42
43 UPROPERTY(EditAnywhere, Category=BeamModifierOptions)
44 uint32 bModify:1;
45
47 UPROPERTY(EditAnywhere, Category=BeamModifierOptions)
48 uint32 bScale:1;
49
51 UPROPERTY(EditAnywhere, Category=BeamModifierOptions)
52 uint32 bLock:1;
53
54
56 : bModify(false)
57 , bScale(false)
58 , bLock(false)
59 {
60 }
61
62};
63
64UCLASS(editinlinenew, hidecategories=Object, meta=(DisplayName = "Beam Modifier"))
66{
68
69
70 UPROPERTY(EditAnywhere, Category=Modifier)
72
74 UPROPERTY(EditAnywhere, Category=Position)
75 struct FBeamModifierOptions PositionOptions;
76
78 UPROPERTY(EditAnywhere, Category=Position)
80
82 UPROPERTY(EditAnywhere, Category=Tangent)
83 struct FBeamModifierOptions TangentOptions;
84
86 UPROPERTY(EditAnywhere, Category=Tangent)
88
90 UPROPERTY(EditAnywhere, Category=Tangent)
91 uint32 bAbsoluteTangent:1;
92
94 UPROPERTY(EditAnywhere, Category=Strength)
95 struct FBeamModifierOptions StrengthOptions;
96
98 UPROPERTY(EditAnywhere, Category=Strength)
99 struct FRawDistributionFloat Strength;
100
102 void InitializeDefaults();
103
104 //Begin UObject Interface
105#if WITH_EDITOR
106 virtual void PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent) override;
107#endif // WITH_EDITOR
108 virtual void PostInitProperties() override;
109 //End Uobject Interface
110
111 //Begin UParticleModule Interface
112 virtual void Spawn(const FSpawnContext& Context) override;
113 virtual void Update(const FUpdateContext& Context) override;
114 virtual uint32 RequiredBytes(UParticleModuleTypeDataBase* TypeData) override;
115 virtual void AutoPopulateInstanceProperties(UParticleSystemComponent* PSysComp) override;
116 virtual void GetCurveObjects(TArray<FParticleCurvePair>& OutCurves) override;
117 virtual bool AddModuleCurvesToEditor(UInterpCurveEdSetup* EdSetup, TArray<const FCurveEdEntry*>& OutCurveEntries) override;
118 virtual void GetParticleSysParamsUtilized(TArray<FString>& ParticleSysParamList) override;
119 //End UParticleModule Interface
120
121
122 // @ todo document
123 void GetDataPointers(FParticleEmitterInstance* Owner, const uint8* ParticleBase,
127
128 // @ todo document
129 void GetDataPointerOffsets(FParticleEmitterInstance* Owner, const uint8* ParticleBase,
130 int32& CurrentOffset, int32& BeamDataOffset, int32& SourceModifierOffset,
132};
133
134
135
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_UCLASS_BODY(...)
Definition ObjectMacros.h:768
#define UCLASS(...)
Definition ObjectMacros.h:776
#define UENUM(...)
Definition ObjectMacros.h:749
#define USTRUCT(...)
Definition ObjectMacros.h:746
#define GENERATED_USTRUCT_BODY(...)
Definition ObjectMacros.h:767
BeamModifierType
Definition ParticleModuleBeamModifier.h:29
@ UMETA
Definition ParticleModuleBeamModifier.h:31
@ PEB2MT_MAX
Definition ParticleModuleBeamModifier.h:34
uint8_t uint8
Definition binka_ue_file_header.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition Array.h:670
Definition EnumAsByte.h:22
Definition InterpCurveEdSetup.h:105
Definition ParticleModuleBeamBase.h:60
Definition ParticleModuleBeamModifier.h:66
Definition ParticleModuleTypeDataBase.h:18
@ false
Definition radaudio_common.h:23
Definition ParticleHelper.h:621
Definition ParticleModuleBeamModifier.h:39
Definition ParticleHelper.h:685
Definition InterpCurveEdSetup.h:15
Definition ParticleEmitterInstances.h:226
Definition UnrealType.h:6865
Definition DistributionFloat.h:28
Definition DistributionVector.h:59