72 UE_DEPRECATED(5.0,
"This method has been refactored to use an FRDGBuilder instead.")
85 return AddrSpaceAllocator.DimInTexels;
90 return AddrSpaceAllocator.DimInTexels;
124 uint32 TileSizeWithBorder;
147 uint32 VisibilityChannel : 2;
156 return SourceTexture ==
Other.SourceTexture;
165 struct FPendingUpload
169 uint32 VisibilityChannel : 2;
180 FSubAllocator AddrSpaceAllocator;
189 uint32 MaxDownSampleLevel;
230 return ResSize.GetTotalMemoryBytes();
283 return ResSize.GetTotalMemoryBytes();
288 return Mips[0].IndirectionDimensions.GetMax() > 0;
291#if WITH_EDITORONLY_DATA
293 UE_DEPRECATED(5.6,
"Distance fields are always generated from the UStaticMesh's base render data, and platform independent. Simplified version of function below removes now unused arguments.")
383 return ReferencedTasks.Num();
390 FName GetAssetTypeName()
const override;
393 int32 GetNumRemainingAssets()
const override;
394 void FinishAllCompilation()
override;
397 void ProcessPendingTasks();
426 void OnPostReachabilityAnalysis();
442 std::atomic<class IMeshUtilities*> MeshUtilities;
464#if UE_ENABLE_INCLUDE_ORDER_DEPRECATED_IN_5_4
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
#define RETURN_QUICK_DECLARE_CYCLE_STAT(StatId, GroupId)
Definition Stats.h:655
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
ENGINE_API FDistanceFieldAsyncQueue * GDistanceFieldAsyncQueue
Definition DistanceFieldAtlas.cpp:133
ENGINE_API TGlobalResource< FLandscapeTextureAtlas > GHeightFieldTextureAtlas
ENGINE_API TGlobalResource< FLandscapeTextureAtlas > GHFVisibilityTextureAtlas
void Init()
Definition LockFreeList.h:4
EQueuedWorkPriority
Definition QueuedThreadPool.h:14
void SetShaderParameters(FRHIBatchedShaderParameters &BatchedParameters, const FShaderParameterBindings &Bindings, const FShaderParametersMetadata *ParametersMetadata, const void *InParametersData)
Definition ShaderParameterStruct.cpp:883
FRWLock Lock
Definition UnversionedPropertySerialization.cpp:921
Definition Archive.h:1208
Definition AsyncCompilationHelpers.h:14
Definition DistanceFieldAtlas.h:307
FAsyncDistanceFieldTaskWorker(FAsyncDistanceFieldTask &InTask)
Definition DistanceFieldAtlas.h:309
void DoWork()
Definition DistanceFieldAtlas.cpp:461
TStatId GetStatId() const
Definition DistanceFieldAtlas.h:314
Definition DistanceFieldAtlas.h:327
FAsyncDistanceFieldTask()
Definition DistanceFieldAtlas.cpp:402
UStaticMesh * GenerateSource
Definition DistanceFieldAtlas.h:337
bool bGeneratedCardRepresentation
Definition DistanceFieldAtlas.h:344
FDistanceFieldVolumeData * GeneratedVolumeData
Definition DistanceFieldAtlas.h:342
bool bGenerateDistanceFieldAsIfTwoSided
Definition DistanceFieldAtlas.h:339
FSourceMeshDataForDerivedDataTask SourceMeshData
Definition DistanceFieldAtlas.h:335
UStaticMesh * StaticMesh
Definition DistanceFieldAtlas.h:336
float DistanceFieldResolutionScale
Definition DistanceFieldAtlas.h:338
const ITargetPlatform * TargetPlatform
Definition DistanceFieldAtlas.h:340
TUniquePtr< FAsyncTask< FAsyncDistanceFieldTaskWorker > > AsyncTask
Definition DistanceFieldAtlas.h:343
FString DDCKey
Definition DistanceFieldAtlas.h:341
Definition RenderDeferredCleanup.h:11
Definition IDelegateInstance.h:14
Definition DistanceFieldAtlas.h:349
static ENGINE_API FName GetStaticAssetTypeName()
Definition DistanceFieldAtlas.cpp:468
ENGINE_API void AddTask(FAsyncDistanceFieldTask *Task)
Definition DistanceFieldAtlas.cpp:692
ENGINE_API void BlockUntilBuildComplete(UStaticMesh *StaticMesh, bool bWarnIfBlocked)
Definition DistanceFieldAtlas.cpp:782
ENGINE_API void ProcessAsyncTasks(bool bLimitExecutionTime=false) override
Definition DistanceFieldAtlas.cpp:962
ENGINE_API void Shutdown() override
Definition DistanceFieldAtlas.cpp:1080
int32 GetNumOutstandingTasks() const
Definition DistanceFieldAtlas.h:380
ENGINE_API void CancelAllOutstandingBuilds()
Definition DistanceFieldAtlas.cpp:760
ENGINE_API void CancelBuilds(const TSet< UStaticMesh * > &InStaticMeshes)
Definition DistanceFieldAtlas.cpp:748
ENGINE_API void CancelBuild(UStaticMesh *StaticMesh)
Definition DistanceFieldAtlas.cpp:743
ENGINE_API void BlockUntilAllBuildsComplete()
Definition DistanceFieldAtlas.cpp:870
virtual ENGINE_API ~FDistanceFieldAsyncQueue()
Definition DistanceFieldAtlas.cpp:447
ENGINE_API FDistanceFieldAsyncQueue()
Definition DistanceFieldAtlas.cpp:423
Definition DistanceFieldAtlas.h:241
FBox3f LocalSpaceMeshBounds
Definition DistanceFieldAtlas.h:245
SIZE_T GetResourceSizeBytes() const
Definition DistanceFieldAtlas.h:279
uint64 Id
Definition DistanceFieldAtlas.h:260
bool IsValid() const
Definition DistanceFieldAtlas.h:286
ENGINE_API FDistanceFieldVolumeData()
Definition DistanceFieldAtlas.cpp:379
bool bMostlyTwoSided
Definition DistanceFieldAtlas.h:248
uint64 GetId() const
Definition DistanceFieldAtlas.h:302
TArray< uint8 > AlwaysLoadedMip
Definition DistanceFieldAtlas.h:255
bool bAsyncBuilding
Definition DistanceFieldAtlas.h:250
FByteBulkData StreamableMips
Definition DistanceFieldAtlas.h:258
TStaticArray< FSparseDistanceFieldMip, DistanceField::NumMips > Mips
Definition DistanceFieldAtlas.h:252
FName AssetName
Definition DistanceFieldAtlas.h:263
void GetResourceSizeEx(FResourceSizeEx &CumulativeResourceSize) const
Definition DistanceFieldAtlas.h:267
Definition DistanceFieldAtlas.h:53
ENGINE_API void AddAllocation(UTexture2D *Texture, uint32 VisibilityChannel=0)
Definition DistanceFieldAtlas.cpp:1136
ENGINE_API void UpdateAllocations(FRDGBuilder &GraphBuilder, ERHIFeatureLevel::Type InFeatureLevel)
Definition DistanceFieldAtlas.cpp:1287
ENGINE_API FVector4f GetAllocationScaleBias(uint32 Handle) const
Definition DistanceFieldAtlas.cpp:1455
ENGINE_API FRDGTexture * GetAtlasTexture(FRDGBuilder &GraphBuilder) const
Definition DistanceFieldAtlas.cpp:1460
uint32 GetSizeX() const
Definition DistanceFieldAtlas.h:83
bool HasAtlasTexture() const
Definition DistanceFieldAtlas.h:79
ENGINE_API uint32 GetAllocationHandle(UTexture2D *Texture) const
Definition DistanceFieldAtlas.cpp:1449
ENGINE_API void RemoveAllocation(UTexture2D *Texture)
Definition DistanceFieldAtlas.cpp:1165
ENGINE_API void InitializeIfNeeded()
Definition DistanceFieldAtlas.cpp:1094
ESubAllocType
Definition DistanceFieldAtlas.h:56
@ SAT_Height
Definition DistanceFieldAtlas.h:57
@ SAT_Visibility
Definition DistanceFieldAtlas.h:58
@ SAT_Num
Definition DistanceFieldAtlas.h:59
uint32 GetSizeY() const
Definition DistanceFieldAtlas.h:88
uint32 GetGeneration() const
Definition DistanceFieldAtlas.h:93
Definition NameTypes.h:617
Definition AsyncWork.h:663
Definition QueuedThreadPool.h:105
Definition RenderGraphBuilder.h:49
Definition RenderGraphResources.h:905
Definition RenderGraphResources.h:571
Definition RHIResources.h:2153
Definition RenderResource.h:37
Definition ScopeLock.h:141
Definition DerivedMeshDataTaskUtils.h:14
Definition DistanceFieldAtlas.h:199
void GetResourceSizeEx(FResourceSizeEx &CumulativeResourceSize) const
Definition DistanceFieldAtlas.h:233
FVector2f DistanceFieldToVolumeScaleBias
Definition DistanceFieldAtlas.h:216
FSparseDistanceFieldMip()
Definition DistanceFieldAtlas.h:202
SIZE_T GetResourceSizeBytes() const
Definition DistanceFieldAtlas.h:226
uint32 BulkSize
Definition DistanceFieldAtlas.h:218
FInt32Vector IndirectionDimensions
Definition DistanceFieldAtlas.h:212
uint32 BulkOffset
Definition DistanceFieldAtlas.h:217
friend FArchive & operator<<(FArchive &Ar, FSparseDistanceFieldMip &Mip)
Definition DistanceFieldAtlas.h:220
FVector3f VolumeToVirtualUVAdd
Definition DistanceFieldAtlas.h:215
int32 NumDistanceFieldBricks
Definition DistanceFieldAtlas.h:213
FVector3f VolumeToVirtualUVScale
Definition DistanceFieldAtlas.h:214
Definition StaticMeshResources.h:774
Definition ArrayView.h:139
UE_NODEBUG UE_FORCEINLINE_HINT SIZE_T GetAllocatedSize(void) const
Definition Array.h:1059
Definition AssetRegistryState.h:50
Definition RenderResource.h:543
Definition LockFreeList.h:898
Definition RefCounting.h:454
UE_FORCEINLINE_HINT bool IsValid() const
Definition RefCounting.h:594
Definition SparseArray.h:524
Definition StaticArray.h:26
Definition UniquePtr.h:107
Definition StaticMesh.h:593
Definition Texture2D.h:26
Definition DistanceFieldAtlas.h:36
constexpr int32 BrickSize
Definition DistanceFieldAtlas.h:41
constexpr int32 MeshDistanceFieldObjectBorder
Definition DistanceFieldAtlas.h:38
constexpr uint32 InvalidBrickIndex
Definition DistanceFieldAtlas.h:45
constexpr uint32 MaxIndirectionDimension
Definition DistanceFieldAtlas.h:49
constexpr int32 NumMips
Definition DistanceFieldAtlas.h:44
constexpr int32 BandSizeInVoxels
Definition DistanceFieldAtlas.h:43
constexpr EPixelFormat DistanceFieldFormat
Definition DistanceFieldAtlas.h:46
constexpr int32 UniqueDataBrickSize
Definition DistanceFieldAtlas.h:39
Definition SceneComponent.h:24
Type
Definition RHIFeatureLevel.h:20
uint32 GetTypeHash(const FKey &Key)
Definition BlackboardKey.h:35
constexpr int32 TileSize
Definition MegaLights.cpp:463
bool operator==(const FCachedAssetKey &A, const FCachedAssetKey &B)
Definition AssetDataMap.h:501
Definition AssetCompilingManager.h:25
Definition ResourceSize.h:31
Definition IAssetCompilingManager.h:25
Definition LightweightStats.h:416