FTextureMipDataProvider

[FTextureMipDataProvider](API\Runtime\Engine\Streaming\FTextureMipDataProvider) defines the update steps and interface to implement the mip data strategy used in FTextureStreamIn.

Windows
MacOS
Linux

References

Module

Engine

Header

/Engine/Source/Runtime/Engine/Public/Streaming/TextureMipDataProvider.h

Include

#include "Streaming/TextureMipDataProvider.h"

Syntax

class FTextureMipDataProvider

Remarks

FTextureMipDataProvider defines the update steps and interface to implement the mip data strategy used in FTextureStreamIn. It allows to decouples where the texture mip data source from the texture update. Typical implementations are using DDC, disk files, internet server or dynamically generated.

Variables

Name Description

Protected variable

const int32

 

CurrentFirstLODIdx

The resident first LOD resource index. With domain = [0, ResourceState.NumLODs[. NOT THE ASSET LOD INDEX!

Protected variable

const int32

 

PendingFirstLODIdx

The requested first LOD resource index. With domain = [0, ResourceState.NumLODs[. NOT THE ASSET LOD INDEX!

Protected variable

const FStreamab...

 

ResourceState

The streamable state requested.

Constructors

Name Description

Public function

FTextureMipDataProvider

(
    const UTexture* Texture,
    ETickState InTickState,
    ETickThread InTickThread
)

Constructor, defining the first tick step and thread.

Destructors

Name Description

Public function Virtual

~FTextureMipDataProvider()

Functions

Name Description

Public function Virtual

void

 

AbortPollMips()

Abort anything that could be stalling the update in PollMips().

Protected function

void

 

AdvanceTo

(
    ETickState InState,
    ETickThread InThread
)

Helper to set the next tick state and thread. Validates that the progression is coherent.

Public function

void

 

Cancel

(
    const FTextureUpdateSyncOptions& S...
)

Cancel the progression and release any temporary resources.

Public function

void

 

CleanUp

(
    const FTextureUpdateSyncOptions& S...
)

Release any temporary data and objects that where used for the update.

Public function Const

ETickThread

 

GetCancelThread()

Returns on which thread Cancel() must be called in the texture update (from FTextureStreamIn) to release ressources safely and correctly. ETickThread::None when ready to delete this.

Public function

int32

 

GetMips

(
    const FTextureUpdateContext& Conte...,
    int32 StartingMipIndex,
    const FTextureMipInfoArray& MipInf...,
    const FTextureUpdateSyncOptions& S...
)

Acquire the mips this provider will handle.

Public function Const

ETickState

 

GetNextTickState()

Get the next tick state and thread for the mip allocator. Used by FTextureStreamIn to schedule correctly the update between FTextureMipAllocator and FTextureMipDataProvider.

Public function Const

ETickThread

 

GetNextTickThread()

Public function

void

 

Init

(
    const FTextureUpdateContext& Conte...,
    const FTextureUpdateSyncOptions& S...
)

Initialize data prelimary to the GetMips() step.

Public function

bool

 

PollMips

(
    const FTextureUpdateSyncOptions& S...
)

Check if each mip handled by this mip data provider have been updated correctly.

Enums

Name

Description

Public enum

ETickState

Public enum

ETickThread

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss