Navigation
API > API/Developer > API/Developer/TextureFormat
Description
Calculate the number of streaming mips for the given set of texture properties. This must work off of properties that can (eventually) be calculated without running a full texture build.
Texture mips are split in to two large groups: streaming and non-streaming (aka "inline"). Note that "inline" is sometimes used as a verb to mean "load off of disk and place in our bulk data". "Inline" textures are loaded with the texture asset, and streaming textures are loaded on demand. Generally, 7 of the smallest mips are inlined, however some platforms pack a lot of mips in to a single allocation ("packed mip tail" = NumMipsInTail). Those mips must all be inlined.
This function is used primarily for determining where to put mips in the DDC. Runtime inlining is subject to further constraints and must use the GetNumNonStreamingMipsDirect() function.
InNumMips The total mips that the texture contains. InExtendedData If the texture is being built for a platform that provides extended data, pass it here. For platforms that don't need it (i.e. PC), this should be nullptr. InEngineParameters Holds a vairety of engine configuration constants, create with GenerateEngineParameters()
| Name | GetNumStreamingMipsDirect |
| Type | function |
| Header File | /Engine/Source/Developer/TextureFormat/Public/Interfaces/ITextureFormat.h |
| Include Path | #include "Interfaces/ITextureFormat.h" |
static int32 GetNumStreamingMipsDirect
(
int32 InNumMips,
bool bInCubeMap,
bool bInVolumeTexture,
bool bInTextureArray,
const FEncodedTextureExtendedData * InExtendedData,
const FTextureEngineParameters & InEngineParameters
)