40#define MAX_TEXTURE_SOURCE_SLICES 6
79#if WITH_EDITORONLY_DATA
89 UE_DEPRECATED(5.1,
"Setting DerivedData is sufficient to control this state.")
112 virtual bool IsProxy()
const {
return false; }
293 : UpdateListLink(
NULL)
294 , bOnlyUpdateOnce(
false)
356 bool bOnlyUpdateOnce;
406 return GPUMask & ActiveGPUMask;
550 UE_DEPRECATED(5.1,
"Texture2DRHI is deprecated. Use TextureRHI instead.")
557 int32 TargetSizeX,TargetSizeY;
638 UE_DEPRECATED(5.4,
"Use FRenderTarget's ReadPixels, which is functionally equivalent")
#define NULL
Definition oodle2base.h:134
#define check(expr)
Definition AssertionMacros.h:314
#define LowLevelFatalError(Format,...)
Definition AssertionMacros.h:554
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
return true
Definition ExternalRpcRegistry.cpp:601
EFileRegionType
Definition FileRegions.h:15
const bool
Definition NetworkReplayStreaming.h:178
@ AM_Wrap
Definition RHIDefinitions.h:340
#define TexCreate_Virtual
Definition RHIDefinitions.h:1215
ECubeFace
Definition RHIDefinitions.h:525
@ SF_Point
Definition RHIDefinitions.h:327
ETextureCreateFlags
Definition RHIDefinitions.h:1091
@ TEXTUREGROUP_MAX
Definition TextureDefines.h:124
ENGINE_API FName GetDefaultTextureFormatName(const class ITargetPlatform *TargetPlatform, const class UTexture *Texture, int32 LayerIndex, bool bSupportCompressedVolumeTexture, int32 Unused_BlockSize, bool bSupportFilteredFloat32Textures)
ENGINE_API void GetDefaultTextureFormatNamePerLayer(TArray< FName > &OutFormatNames, const class ITargetPlatform *TargetPlatform, const class UTexture *Texture, bool bSupportCompressedVolumeTexture, int32 Unused_BlockSize, bool bSupportFilteredFloat32Textures)
Definition Texture.cpp:4552
ENGINE_API void GetAllDefaultTextureFormats(const class ITargetPlatform *TargetPlatform, TArray< FName > &OutFormats)
Definition Texture.cpp:4616
CORE_API bool IsInRenderingThread()
Definition ThreadingBase.cpp:273
EVTProducerPriority
Definition VirtualTextureEnum.h:11
Definition Archive.h:1208
Definition TextureResource.h:286
static ENGINE_API void UpdateResources(FRHICommandListImmediate &RHICmdList)
Definition TextureRenderTarget.cpp:600
static bool IsUpdateNeeded()
Definition TextureResource.h:318
ENGINE_API void ResetSceneTextureExtentsHistory()
Definition TextureRenderTarget.cpp:674
ENGINE_API void RemoveFromDeferredUpdateList()
Definition TextureRenderTarget.cpp:669
ENGINE_API void FlushDeferredResourceUpdate(FRHICommandListImmediate &RHICmdList)
Definition TextureRenderTarget.cpp:626
ENGINE_API void AddToDeferredUpdateList(bool OnlyUpdateOnce)
Definition TextureRenderTarget.cpp:645
virtual void UpdateDeferredResource(FRHICommandListImmediate &RHICmdList, bool bClearRenderTarget=true)=0
FDeferredUpdateResource()
Definition TextureResource.h:292
static void ResetNeedsUpdate()
Definition TextureResource.h:313
Definition Float16Color.h:13
Definition NameTypes.h:617
Definition UnrealType.h:3087
Definition RHICommandList.h:455
Definition RHITextureReference.h:8
Definition RHIResources.h:2153
FRHITexture * GetTexture2D()
Definition RHIResources.h:2317
uint32 GetNumMips() const
Definition RHIResources.h:2338
FRHITexture * GetTexture2DArray()
Definition RHIResources.h:2319
ETextureCreateFlags GetFlags() const
Definition RHIResources.h:2344
FRHITexture * GetTexture3D()
Definition RHIResources.h:2321
RENDERCORE_API void UpdateRHI(FRHICommandListBase &RHICmdList)
Definition RenderResource.cpp:225
Definition UnrealClient.h:30
virtual ENGINE_API bool ReadPixels(TArray< FColor > &OutImageData, FReadSurfaceDataFlags InFlags=FReadSurfaceDataFlags(RCM_UNorm, CubeFace_MAX), FIntRect InSrcRect=FIntRect(0, 0, 0, 0))
Definition UnrealClient.cpp:54
ENGINE_API bool ReadFloat16Pixels(TArray< FFloat16Color > &OutImageData, ECubeFace CubeFace)
Definition UnrealClient.cpp:88
Definition SceneCaptureRendering.cpp:1008
Definition ScenePrivate.h:2875
Definition StreamableTextureResource.h:20
Definition Texture2DArrayResource.h:18
Definition TextureResource.h:250
ENGINE_API void WriteRawToTexture_RenderThread(TArrayView64< const uint8 > RawData)
Definition Texture2DDynamic.cpp:94
virtual ENGINE_API void ReleaseRHI() override
Definition Texture2DDynamic.cpp:80
virtual ENGINE_API void InitRHI(FRHICommandListBase &RHICmdList) override
Definition Texture2DDynamic.cpp:39
ENGINE_API FTextureRHIRef GetTexture2DRHI()
Definition Texture2DDynamic.cpp:88
virtual ENGINE_API uint32 GetSizeX() const override
Definition Texture2DDynamic.cpp:27
virtual ENGINE_API uint32 GetSizeY() const override
Definition Texture2DDynamic.cpp:33
Definition ResourceArray.h:178
Definition Texture2DResource.h:16
Definition Texture3DResource.h:65
Definition TextureRenderTarget2DArrayResource.h:12
Definition TextureResource.h:433
virtual void UpdateDeferredResource(FRHICommandListImmediate &RHICmdList, bool bClearRenderTarget=true) override
Definition TextureRenderTarget2D.cpp:619
void Resize(int32 NewSizeX, int32 NewSizeY, int32 NewNumMips)
Definition TextureRenderTarget2D.cpp:661
virtual FIntPoint GetSizeXY() const override
Definition TextureRenderTarget2D.cpp:691
FUnorderedAccessViewRHIRef GetUnorderedAccessViewRHI()
Definition TextureResource.h:519
EPixelFormat GetFormat() const
Definition TextureResource.h:448
virtual void InitRHI(FRHICommandListBase &RHICmdList) override
Definition TextureRenderTarget2D.cpp:523
virtual void ClampSize(int32 SizeX, int32 SizeY) override
Definition TextureRenderTarget2D.cpp:476
virtual float GetDisplayGamma() const override
Definition TextureRenderTarget2D.cpp:721
void Resize(FRHICommandListBase &RHICmdList, int32 NewSizeX, int32 NewSizeY, bool bAutoGenerateMips)
Definition TextureResource.h:534
virtual ~FTextureRenderTarget2DResource()
ETextureCreateFlags GetCreateFlags()
Definition TextureRenderTarget2D.cpp:491
virtual uint32 GetSizeX() const override
Definition TextureRenderTarget2D.cpp:675
virtual class FTextureRenderTarget2DResource * GetTextureRenderTarget2DResource() override
Definition TextureResource.h:460
virtual void ReleaseRHI() override
Definition TextureRenderTarget2D.cpp:598
FLinearColor GetClearColor()
Definition TextureResource.h:443
virtual uint32 GetSizeY() const override
Definition TextureRenderTarget2D.cpp:683
Definition TextureResource.h:566
FTextureRenderTargetCubeResource(const class UTextureRenderTargetCube *InOwner)
Definition TextureResource.h:573
virtual class FTextureRenderTargetCubeResource * GetTextureRenderTargetCubeResource()
Definition TextureResource.h:581
FUnorderedAccessViewRHIRef GetUnorderedAccessViewRHI()
Definition TextureResource.h:622
Definition TextureResource.h:363
virtual uint32 GetSizeY() const override=0
virtual class FTextureRenderTarget2DResource * GetTextureRenderTarget2DResource()
Definition TextureResource.h:382
virtual class FTextureRenderTargetVolumeResource * GetTextureRenderTargetVolumeResource()
Definition TextureResource.h:384
void SetGPUMask(FRHIGPUMask InGPUMask)
Definition TextureResource.h:418
FTextureRenderTargetResource()
Definition TextureResource.h:368
virtual const FTextureRHIRef & GetShaderResourceTexture() const override
Definition TextureRenderTarget.cpp:545
virtual class FTextureRenderTarget2DArrayResource * GetTextureRenderTarget2DArrayResource()
Definition TextureResource.h:383
virtual float GetDisplayGamma() const override
Definition TextureRenderTarget.cpp:568
virtual void ClampSize(int32 SizeX, int32 SizeY)
Definition TextureResource.h:387
void SetActiveGPUMask(FRHIGPUMask InGPUMask)
Definition TextureResource.h:410
static ENGINE_API bool IsSupportedFormat(EPixelFormat Format)
Definition TextureRenderTarget.cpp:517
virtual uint32 GetSizeX() const override=0
virtual class FTextureRenderTargetCubeResource * GetTextureRenderTargetCubeResource()
Definition TextureResource.h:385
virtual FRHIGPUMask GetGPUMask(FRHICommandListImmediate &RHICmdList) const final override
Definition TextureResource.h:404
Definition TextureRenderTargetVolumeResource.h:12
Definition TextureResource.h:103
virtual const FVirtualTexture2DResource * GetVirtualTexture2DResource() const
Definition TextureResource.h:125
virtual FVirtualTexture2DResource * GetVirtualTexture2DResource()
Definition TextureResource.h:119
FRHITexture * GetTexture2DRHI() const
Definition TextureResource.h:138
virtual const FStreamableTextureResource * GetStreamableTextureResource() const
Definition TextureResource.h:124
FRHITexture * GetTexture2DArrayRHI() const
Definition TextureResource.h:148
virtual const FTexture3DResource * GetTexture3DResource() const
Definition TextureResource.h:122
virtual const FTexture2DResource * GetTexture2DResource() const
Definition TextureResource.h:121
virtual const FTexture2DArrayResource * GetTexture2DArrayResource() const
Definition TextureResource.h:123
virtual FTexture2DResource * GetTexture2DResource()
Definition TextureResource.h:115
FTextureReferenceRHIRef TextureReferenceRHI
Definition TextureResource.h:171
virtual bool IsProxy() const
Definition TextureResource.h:112
virtual FStreamableTextureResource * GetStreamableTextureResource()
Definition TextureResource.h:118
FRHITexture * GetTexture3DRHI() const
Definition TextureResource.h:143
void SetTextureReference(FRHITextureReference *TextureReference)
Definition TextureResource.h:153
int32 GetCurrentMipCount() const
Definition TextureResource.h:128
bool IsTextureRHIPartiallyResident() const
Definition TextureResource.h:133
FTextureResource()
Definition TextureResource.h:106
virtual FTexture2DArrayResource * GetTexture2DArrayResource()
Definition TextureResource.h:117
FRHITextureReference * GetTextureReference() const
Definition TextureResource.h:158
virtual FTexture3DResource * GetTexture3DResource()
Definition TextureResource.h:116
virtual ~FTextureResource()
Definition TextureResource.h:107
Definition RenderResource.h:354
FTextureRHIRef TextureRHI
Definition RenderResource.h:358
Definition TextureResource.h:175
ENGINE_API FVirtualTexture2DResource()
Definition Texture2D.cpp:1536
EVTProducerPriority VirtualTextureStreamingPriority
Definition TextureResource.h:238
virtual ENGINE_API uint32 GetNumLayers() const
Definition Texture2D.cpp:1897
FVirtualTextureProducerHandle ProducerHandle
Definition TextureResource.h:245
TEnumAsByte< ESamplerAddressMode > AddressU
Definition TextureResource.h:231
TEnumAsByte< ESamplerAddressMode > AddressV
Definition TextureResource.h:232
virtual ENGINE_API FIntPoint GetPhysicalTextureSize(uint32 LayerIndex) const
Definition Texture2D.cpp:1916
ENGINE_API void ReleaseAllocatedVT()
Definition Texture2D.cpp:1847
virtual ENGINE_API uint32 GetNumTilesY() const
Definition Texture2D.cpp:1881
virtual ENGINE_API uint32 GetTileSize() const
Definition Texture2D.cpp:1902
virtual ENGINE_API FIntPoint GetSizeInBlocks() const
Definition Texture2D.cpp:1871
FName PackageName
Definition TextureResource.h:226
bool bRequiresSinglePhysicalPool
Definition TextureResource.h:237
ETextureCreateFlags TexCreateFlags
Definition TextureResource.h:234
virtual ENGINE_API uint32 GetNumMips() const
Definition Texture2D.cpp:1891
struct FVirtualTextureBuiltData * VTData
Definition TextureResource.h:242
virtual ENGINE_API uint32 GetNumTilesX() const
Definition Texture2D.cpp:1876
int32 FirstMipToUse
Definition TextureResource.h:240
virtual ENGINE_API uint32 GetSizeY() const override
Definition Texture2D.cpp:1861
virtual const FVirtualTexture2DResource * GetVirtualTexture2DResource() const
Definition TextureResource.h:187
class IAllocatedVirtualTexture * AllocatedVT
Definition TextureResource.h:244
uint32 FullNameHash
Definition TextureResource.h:228
virtual ENGINE_API EPixelFormat GetFormat(uint32 LayerIndex) const
Definition Texture2D.cpp:1866
virtual FVirtualTexture2DResource * GetVirtualTexture2DResource()
Definition TextureResource.h:185
virtual ENGINE_API uint32 GetBorderSize() const
Definition Texture2D.cpp:1886
virtual ENGINE_API uint32 GetSizeX() const override
Definition Texture2D.cpp:1856
TEnumAsByte< ESamplerFilter > Filter
Definition TextureResource.h:230
class IAllocatedVirtualTexture * GetAllocatedVT() const
Definition TextureResource.h:206
FName TextureName
Definition TextureResource.h:224
virtual ENGINE_API ~FVirtualTexture2DResource()
Definition Texture2D.cpp:1590
ENGINE_API class IAllocatedVirtualTexture * AcquireAllocatedVT()
Definition Texture2D.cpp:1825
uint32 GetAllocatedvAddress() const
Definition Texture2D.cpp:1907
bool bSinglePhysicalSpace
Definition TextureResource.h:236
const FVirtualTextureProducerHandle & GetProducerHandle() const
Definition TextureResource.h:196
virtual ENGINE_API void InitRHI(FRHICommandListBase &RHICmdList) override
Definition Texture2D.cpp:1594
virtual ENGINE_API void ReleaseRHI() override
Definition Texture2D.cpp:1817
Definition VirtualTexturing.h:374
Definition VirtualTexturing.h:289
Definition EnumAsByte.h:22
UE_FORCEINLINE_HINT bool IsValid() const
Definition RefCounting.h:594
Definition DerivedData.h:80
bool HasData() const
Definition DerivedData.h:101
Definition Texture2DArray.h:16
Definition Texture2DDynamic.h:35
Definition Texture2D.h:26
Definition TextureRenderTarget2D.h:104
Definition TextureRenderTargetCube.h:22
Definition Texture.h:1219
@ false
Definition radaudio_common.h:23
SGPU_CONSTEXPR bool ContainsAll(FRHIGPUMask Rhs) const
Definition MultiGPU.h:126
Definition TextureResource.h:46
FTexture2DMipMap & operator=(FTexture2DMipMap &&)=default
FTexture2DMipMap(FTexture2DMipMap &&)=default
FTexture2DMipMap(uint32 InSizeX, uint32 InSizeY, uint32 InSizeZ=0)
Definition TextureResource.h:61
~FTexture2DMipMap()=default
uint16 SizeZ
Definition TextureResource.h:57
FByteBulkData BulkData
Definition TextureResource.h:50
FTexture2DMipMap & operator=(const FTexture2DMipMap &)=default
PRAGMA_DISABLE_DEPRECATION_WARNINGS FTexture2DMipMap()=default
FTexture2DMipMap(const FTexture2DMipMap &)=default
uint16 SizeX
Definition TextureResource.h:53
uint16 SizeY
Definition TextureResource.h:55
UE::FDerivedData DerivedData
Definition TextureResource.h:48
Definition VirtualTextureBuiltData.h:131
Definition RendererInterface.h:494
Definition VirtualTexturing.h:33