UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SlateUTextureResource.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
6#include "Misc/App.h"
8#include "TextureResource.h"
9#include "Engine/Texture.h"
10
13{
14public:
17
21 virtual uint32 GetWidth() const;
22 virtual uint32 GetHeight() const;
23 virtual ESlateShaderResource::Type GetType() const;
24 virtual ESlatePostRT GetUsedSlatePostBuffers() const override;
25 virtual bool RequiresVirtualTextureFeedback() const override;
26
29 {
31 {
32 FTexture* TextureResource = TextureObject->GetResource();
33 TextureResource->LastRenderTime = FApp::GetCurrentTime();
34
35 return TextureResource->TextureRHI;
36 }
37
38 return FTextureRHIRef();
39 }
40
42
43
44#if SLATE_CHECK_UOBJECT_RENDER_RESOURCES
45 virtual void CheckForStaleResources() const override;
46#endif
47
48protected:
49#if SLATE_CHECK_UOBJECT_RENDER_RESOURCES
50 void UpdateDebugName();
51#endif
52
55
56#if SLATE_CHECK_UOBJECT_RENDER_RESOURCES
57 // Used to guard against crashes when the material object is deleted. This is expensive so we do not do it in shipping
59 FName DebugName;
60#endif
61
66};
67
68
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
ESlatePostRT
Definition SlateRendererTypes.h:15
TRefCountPtr< FRHITexture > FTextureRHIRef
Definition StereoRenderTargetManager.h:15
uint32_t uint32
Definition binka_ue_file_header.h:6
static FORCEINLINE double GetCurrentTime()
Definition App.h:602
Definition NameTypes.h:617
Definition SlateUTextureResource.h:13
virtual ~FSlateBaseUTextureResource()
Definition SlateUTextureResource.cpp:26
UTexture * TextureObject
Definition SlateUTextureResource.h:54
virtual ESlatePostRT GetUsedSlatePostBuffers() const override
Definition SlateUTextureResource.cpp:45
FTextureRHIRef AccessRHIResource()
Definition SlateUTextureResource.h:28
virtual uint32 GetWidth() const
Definition SlateUTextureResource.cpp:30
virtual bool RequiresVirtualTextureFeedback() const override
Definition SlateUTextureResource.cpp:50
bool CachedIsVirtualTexture
Definition SlateUTextureResource.h:65
ESlatePostRT CachedSlatePostBuffers
Definition SlateUTextureResource.h:63
virtual ESlateShaderResource::Type GetType() const
Definition SlateUTextureResource.cpp:40
virtual uint32 GetHeight() const
Definition SlateUTextureResource.cpp:35
UTexture * GetTextureObject() const
Definition SlateUTextureResource.h:41
Definition SlateShaderResource.h:129
Definition SlateShaderResource.h:44
void CheckForStaleResources() const
Definition SlateShaderResource.h:90
Definition SlateUTextureResource.h:71
FSlateShaderResourceProxy * Proxy
Definition SlateUTextureResource.h:85
static TSharedPtr< FSlateUTextureResource > NullResource
Definition SlateUTextureResource.h:73
void UpdateTexture(UTexture *InTexture)
Definition SlateUTextureResource.cpp:131
void ResetTexture()
Definition SlateUTextureResource.cpp:179
virtual ~FSlateUTextureResource()
Definition SlateUTextureResource.cpp:123
Definition RenderResource.h:354
FTextureRHIRef TextureRHI
Definition RenderResource.h:358
double LastRenderTime
Definition RenderResource.h:367
Definition SharedPointer.h:692
Definition Texture.h:1219
ENGINE_API FTextureResource * GetResource()
Definition Texture.cpp:250
Type
Definition SlateShaderResource.h:21
Definition WeakObjectPtrTemplates.h:25