18template <
int32 SHOrder>
81 return &Sample.Position.X;
188 return bAddedToScene;
201 return OctreeForRendering == &
Data->HighQualityLightmapOctree;
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define FVector
Definition IOSSystemIncludes.h:8
UE::Math::TVector< float > FVector3f
Definition MathFwd.h:73
TVolumeLightingSample< 3 > FVolumeLightingSample
Definition PrecomputedLightVolume.h:65
TVolumeLightingSample< 2 > FVolumeLightingSample2Band
Definition PrecomputedLightVolume.h:66
TOctree2< FVolumeLightingSample, FLightVolumeOctreeSemantics > FLightVolumeOctree
Definition PrecomputedLightVolume.h:94
USkinnedMeshComponent float
Definition SkinnedMeshComponent.h:60
#define STRUCT_OFFSET(struc, member)
Definition UnrealTemplate.h:218
uint32 Offset
Definition VulkanMemory.cpp:4033
Definition Archive.h:1208
Definition GenericOctree.h:42
Definition GenericOctreePublic.h:15
Definition PrecomputedLightVolume.h:98
ENGINE_API void AddHighQualityLightingSample(const FVolumeLightingSample &NewHighQualitySample)
Definition PrecomputedLightVolume.cpp:280
SIZE_T GetAllocatedBytes() const
Definition PrecomputedLightVolume.cpp:317
bool IsInitialized() const
Definition PrecomputedLightVolume.h:124
~FPrecomputedLightVolumeData()
Definition PrecomputedLightVolume.cpp:108
ENGINE_API void InvalidateLightingCache()
Definition PrecomputedLightVolume.cpp:304
friend FArchive & operator<<(FArchive &Ar, FPrecomputedLightVolumeData &Volume)
Definition PrecomputedLightVolume.cpp:147
ENGINE_API void FinalizeSamples()
Definition PrecomputedLightVolume.cpp:293
ENGINE_API void AddLowQualityLightingSample(const FVolumeLightingSample &NewLowQualitySample)
Definition PrecomputedLightVolume.cpp:286
FBox & GetBounds()
Definition PrecomputedLightVolume.h:129
ENGINE_API FPrecomputedLightVolumeData()
Definition PrecomputedLightVolume.cpp:102
Definition PrecomputedLightVolume.h:151
ENGINE_API void InterpolateIncidentRadianceBlock(const FBoxCenterAndExtent &BoundingBox, const FIntVector &QueryCellDimensions, const FIntVector &DestCellDimensions, const FIntVector &DestCellPosition, TArray< float > &AccumulatedWeights, TArray< FSHVectorRGB2 > &AccumulatedIncidentRadiance) const
Definition PrecomputedLightVolume.cpp:423
double GetNodeLevelExtent(int32 Level) const
Definition PrecomputedLightVolume.h:191
ENGINE_API void RemoveFromScene(FSceneInterface *Scene)
Definition PrecomputedLightVolume.cpp:363
bool IsAddedToScene() const
Definition PrecomputedLightVolume.h:186
ENGINE_API void AddToScene(class FSceneInterface *Scene, class UMapBuildDataRegistry *Registry, FGuid LevelBuildDataId)
Definition PrecomputedLightVolume.cpp:337
ENGINE_API void DebugDrawSamples(class FPrimitiveDrawInterface *PDI, bool bDrawDirectionalShadowing) const
Definition PrecomputedLightVolume.cpp:501
ENGINE_API bool IntersectBounds(const FBoxSphereBounds &InBounds) const
Definition PrecomputedLightVolume.cpp:514
~FPrecomputedLightVolume()
Definition PrecomputedLightVolume.cpp:333
const FPrecomputedLightVolumeData * Data
Definition PrecomputedLightVolume.h:204
bool IsUsingHighQualityLightMap() const
Definition PrecomputedLightVolume.h:199
ENGINE_API void SetData(const FPrecomputedLightVolumeData *NewData, FSceneInterface *Scene)
Definition PrecomputedLightVolume.cpp:378
SIZE_T GetAllocatedBytes() const
ENGINE_API FPrecomputedLightVolume()
Definition PrecomputedLightVolume.cpp:326
ENGINE_API void ApplyWorldOffset(const FVector &InOffset)
Definition PrecomputedLightVolume.cpp:525
ENGINE_API void InterpolateIncidentRadiancePoint(const FVector &Position, float &AccumulatedWeight, float &AccumulatedDirectionalLightShadowing, FSHVectorRGB3 &AccumulatedIncidentRadiance, FVector &SkyBentNormal) const
Definition PrecomputedLightVolume.cpp:384
Definition PrimitiveDrawInterface.h:19
Definition SceneInterface.h:106
Definition GenericOctree.h:378
FReal GetNodeLevelExtent(int32 Level) const
Definition GenericOctree.h:982
Definition ContainerAllocationPolicies.h:830
Definition PrecomputedLightVolume.h:20
FVector3f Position
Definition PrecomputedLightVolume.h:23
FVector GetSkyBentNormalUnpacked() const
Definition PrecomputedLightVolume.h:57
TSHVectorRGB< SHOrder > Lighting
Definition PrecomputedLightVolume.h:33
float DirectionalLightShadowing
Definition PrecomputedLightVolume.h:39
TVolumeLightingSample()
Definition PrecomputedLightVolume.h:41
TVolumeLightingSample(const TVolumeLightingSample< 2 > &Other)
friend FArchive & operator<<(FArchive &Ar, TVolumeLightingSample< SHOrder > &Sample)
TVolumeLightingSample(const TVolumeLightingSample< 3 > &Other)
FColor PackedSkyBentNormal
Definition PrecomputedLightVolume.h:36
void SetPackedSkyBentNormal(FVector InSkyBentNormal)
Definition PrecomputedLightVolume.h:52
float Radius
Definition PrecomputedLightVolume.h:25
Definition MapBuildDataRegistry.h:295
uint8 G
Definition Color.h:492
uint8 R
Definition Color.h:492
uint8 B
Definition Color.h:492
Definition PrecomputedLightVolume.h:68
FDefaultAllocator ElementAllocator
Definition PrecomputedLightVolume.h:73
static void SetElementId(const FVolumeLightingSample &Element, FOctreeElementId2 Id)
Definition PrecomputedLightVolume.h:84
static void ApplyOffset(FVolumeLightingSample &Element, FVector Offset)
Definition PrecomputedLightVolume.h:88
@ MaxNodeDepth
Definition PrecomputedLightVolume.h:70
@ MaxElementsPerLeaf
Definition PrecomputedLightVolume.h:69
static const float * GetBoundingBox(const FVolumeLightingSample &Sample)
Definition PrecomputedLightVolume.h:76
Definition BoxSphereBounds.h:25