16#define UE_METAL_RHI_SUPPORT_CLEAR_UAV_WITH_BLIT_ENCODER 1
70 return SubRange.location;
75 return SubRange.length;
96 return Buffer->gpuAddress() +
GetOffset();
103 bMarkedDeleted =
true;
114 bool bMarkedDeleted =
false;
119#if METAL_RHI_RAYTRACING
136 void SetLabel(
const FString& Label)
183 checkf(!
HasLinkedViews(),
TEXT(
"All linked views must have been removed before the underlying resource can be deleted."));
188 return LinkedViews !=
nullptr;
224 , Device (MetalDevice)
228 , TotalTextureSize (0)
277 void ReleaseDrawableTexture();
282 void MakeAliasable(
void);
294#if PLATFORM_SUPPORTS_BINDLESS_RENDERING
297 return BindlessHandle;
336#if PLATFORM_SUPPORTS_BINDLESS_RENDERING
406 return GetStride() == 2 ? MTL::IndexTypeUInt16 : MTL::IndexTypeUInt32;
409#if METAL_RHI_RAYTRACING
448#if ENABLE_LOW_LEVEL_MEM_TRACKER || UE_MEMORY_TRACE_ENABLED
495 , FTextureBufferBacked
496#if METAL_RHI_RAYTRACING
503 Null = TStorage::IndexOfType<FEmptyVariantState>(),
504 TextureView = TStorage::IndexOfType<MTLTexturePtr>(),
505 BufferView = TStorage::IndexOfType<FBufferView>(),
507#if METAL_RHI_RAYTRACING
542#if METAL_RHI_RAYTRACING
560#if METAL_RHI_RAYTRACING
583#if PLATFORM_SUPPORTS_BINDLESS_RENDERING
589 return BindlessHandle;
607#if UE_METAL_RHI_SUPPORT_CLEAR_UAV_WITH_BLIT_ENCODER
611#if PLATFORM_SUPPORTS_BINDLESS_RENDERING
618 return BindlessHandle;
628 virtual void Clear()
override;
629 virtual bool Poll()
const override;
648#if METAL_RHI_RAYTRACING
653#if PLATFORM_SUPPORTS_MESH_SHADERS
689#if PLATFORM_SUPPORTS_MESH_SHADERS
742#if METAL_RHI_RAYTRACING
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define check(expr)
Definition AssertionMacros.h:314
#define checkf(expr, format,...)
Definition AssertionMacros.h:315
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
EResourceLockMode
Definition RHIDefinitions.h:785
@ RLM_Num
Definition RHIDefinitions.h:789
constexpr uint32 HashCombine(uint32 A, uint32 C)
Definition TypeHash.h:36
FRWLock Lock
Definition UnversionedPropertySerialization.cpp:921
uint32 Offset
Definition VulkanMemory.cpp:4033
uint32 Size
Definition VulkanMemory.cpp:4034
Definition MetalRHIContext.h:48
Definition NameTypes.h:617
Definition RHIResources.h:966
Definition RHIResources.h:1581
uint32 GetStride() const
Definition RHIResources.h:1601
Definition RHICommandList.h:455
Definition RHIResources.h:1018
Definition RHIResources.h:2387
Definition RHIResources.h:978
Definition RHIResources.h:1058
Definition RHIResources.h:960
Definition RHIResources.h:972
Definition RHIResources.h:3729
Definition RHIResources.h:3755
Definition RHIResources.h:2444
Definition RHIResources.h:3863
Definition RHIShaderLibrary.h:13
Definition RHIResources.h:3304
Definition RHIResources.h:3981
Definition RHIResources.h:2153
virtual FRHIDescriptorHandle GetDefaultBindlessHandle() const
Definition RHIResources.h:2177
Definition RHIResources.h:3294
Definition RHIResources.h:725
Definition RHIResources.h:954
virtual FRHIDescriptorHandle GetBindlessHandle() const
Definition RHIResources.h:3249
Definition RHIResources.h:1265
Definition RHICommandList.h:5170
Definition SharedPointer.h:692
Definition FunctionFwd.h:19
U & Get() UE_LIFETIMEBOUND
Definition TVariant.h:146
SIZE_T GetIndex() const
Definition TVariant.h:231
Definition MetalResources.h:474
uint32 Offset
Definition MetalResources.h:477
uint32 Size
Definition MetalResources.h:478
EPixelFormat Format
Definition MetalResources.h:479
MTLTexturePtr Texture
Definition MetalResources.h:475
bool bIsBuffer
Definition MetalResources.h:480
FTextureBufferBacked(MTLTexturePtr Texture, FMetalBufferPtr Buffer, uint32 Offset, uint32 Size, EPixelFormat Format, bool bIsBuffer)
Definition MetalResources.h:482
FMetalBufferPtr Buffer
Definition MetalResources.h:476
Definition MetalResources.h:163
FMetalTextureCreateDesc & operator=(const FMetalTextureCreateDesc &Other)
Definition MetalTexture.cpp:528
MTL::PixelFormat MTLFormat
Definition MetalResources.h:169
bool bIsRenderTarget
Definition MetalResources.h:170
MTLTextureDescriptorPtr Desc
Definition MetalResources.h:168
uint8 FormatKey
Definition MetalResources.h:171
Definition RHIResources.h:1417
Definition RHIDefinitions.h:1401
Definition DynamicRHI.h:149
Definition DynamicRHI.h:198
Definition RHIResources.h:1938
Definition RHIResources.h:2648
Definition ResourceArray.h:10