58template <
typename PriorityKeyType, u
int8 NumBitsForIndex = 16>
68 checkfSlow((
InPriorityKey.PackedValue & ~(~0
ull >>
NumBitsForIndex)) == 0,
TEXT(
"In TVTTilePriorityAndIndex, the priority key is merged with the index into a single uint64. Thus the first N bits of the priority key will be ignored."));
71 template<
typename...
TArgs>
85 static_assert(
sizeof(
PriorityKeyType) ==
sizeof(
uint64),
"Unexpected size for TPriorityAndIndex. This struct should be kept as small as possible for the sorting to remain efficient");
#define checkSlow(expr)
Definition AssertionMacros.h:332
#define checkfSlow(expr, format,...)
Definition AssertionMacros.h:333
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
EVTProducerPriority
Definition VirtualTextureEnum.h:11
EVTInvalidatePriority
Definition VirtualTextureEnum.h:29
uint32 Offset
Definition VulkanMemory.cpp:4033
Definition VirtualTextureShared.h:30
uint8 vLevel
Definition VirtualTextureShared.h:33
uint8 vLogSize
Definition VirtualTextureShared.h:34
uint32 vAddress
Definition VirtualTextureShared.h:31
FPhysicalTileLocation pTileLocation
Definition VirtualTextureShared.h:32
FPageTableUpdate(const FPageTableUpdate &Other)=default
void Check(uint8 vDimensions)
Definition VirtualTextureShared.h:47
FPageTableUpdate()
Definition VirtualTextureShared.h:36
FPageTableUpdate & operator=(const FPageTableUpdate &Other)=default
FPageTableUpdate(const FPageTableUpdate &Update, uint32 Offset, uint8 vDimensions)
Definition VirtualTextureShared.h:40
Definition VirtualTextureShared.h:127
uint64 Pad
Definition VirtualTextureShared.h:153
uint64 MipLevel
Definition VirtualTextureShared.h:150
FVTLocalTilePriority()=default
uint64 InvalidatePriority
Definition VirtualTextureShared.h:151
FVTLocalTilePriority(EVTProducerPriority InProducerPriority, EVTInvalidatePriority InInvalidatePriority, uint8 InMipLevel)
Definition VirtualTextureShared.h:130
uint64 PackedValue
Definition VirtualTextureShared.h:146
FVTLocalTilePriority(uint64 InPackedValue)
Definition VirtualTextureShared.h:140
uint64 ProducerPriority
Definition VirtualTextureShared.h:152
Definition VirtualTextureShared.h:90
FVTRequestPriority()=default
uint64 Pad
Definition VirtualTextureShared.h:120
uint64 Streaming
Definition VirtualTextureShared.h:118
uint64 InvalidatePriority
Definition VirtualTextureShared.h:116
uint64 PackedValue
Definition VirtualTextureShared.h:111
FVTRequestPriority(uint64 InPackedValue)
Definition VirtualTextureShared.h:105
FVTRequestPriority(bool bInLocked, bool bInStreaming, EVTProducerPriority InProducerPriority, EVTInvalidatePriority InInvalidatePriority, uint32 InPagePriority)
Definition VirtualTextureShared.h:93
uint64 ProducerPriority
Definition VirtualTextureShared.h:117
uint64 PagePriority
Definition VirtualTextureShared.h:115
uint64 Locked
Definition VirtualTextureShared.h:119
Definition VirtualTextureShared.h:11
FPhysicalTileLocation()
Definition VirtualTextureShared.h:12
uint8 TileX
Definition VirtualTextureShared.h:24
uint8 TileY
Definition VirtualTextureShared.h:25
uint16 Packed
Definition VirtualTextureShared.h:21
FPhysicalTileLocation(const FIntVector &InVec)
Definition VirtualTextureShared.h:13
Definition VirtualTextureShared.h:60
TVTTilePriorityAndIndex(uint64 InIndex, PriorityKeyType &&InPriorityKey)
Definition VirtualTextureShared.h:63
TVTTilePriorityAndIndex(uint64 InIndex, TArgs &&... InArgs)
Definition VirtualTextureShared.h:72
PriorityKeyType GetPriorityKey()
Definition VirtualTextureShared.h:79
uint64 SortablePackedValue
Definition VirtualTextureShared.h:81
uint64 Index
Definition VirtualTextureShared.h:83
TVTTilePriorityAndIndex()=default
bool operator<(const TVTTilePriorityAndIndex< PriorityKeyType, NumBitsForIndex > &InOther) const
Definition VirtualTextureShared.h:77