ListTrackedTextures

ListTrackedTextures

#Overview

name: ListTrackedTextures

This variable is created as a Console Variable (cvar).

It is referenced in 3 C++ source files.

#Summary

#Usage in the C++ source code

The purpose of ListTrackedTextures is to provide a debugging tool for listing tracked textures in the Unreal Engine’s content streaming system. This function is part of the engine’s texture streaming and management functionality.

This setting variable is primarily used in the Unreal Engine’s content streaming subsystem, which is responsible for managing the loading and unloading of textures and other render assets dynamically during runtime. It’s specifically utilized in the Engine module, as evidenced by its presence in the Engine/Private/ directory.

The value of this variable is not set directly; instead, it’s used as a command that can be executed through the engine’s console or debugging interfaces. When called, it triggers the ListTrackedRenderAssets function, which presumably outputs information about tracked textures to a specified output device.

ListTrackedTextures interacts with other streaming-related functions and variables, such as ListTrackedRenderAssets and TrackRenderAssetEvent. It’s part of a larger system for managing and debugging render asset streaming.

Developers should be aware that this is primarily a debugging tool and should be used for development and troubleshooting purposes rather than in production code. It’s designed to help identify which textures are being tracked by the streaming system, which can be crucial for optimizing memory usage and streaming performance.

Best practices when using this variable include:

  1. Use it in conjunction with other streaming debugging tools to get a comprehensive view of the engine’s texture management.
  2. Be mindful of performance implications when using this in a running game, as it may cause additional overhead.
  3. Utilize this command during development to ensure that the correct textures are being tracked and managed by the streaming system.
  4. Consider using this in automated testing scenarios to verify correct texture streaming behavior.

#References in C++ code

#Callsites

This variable is referenced in the following C++ source code:

#Loc: <Workspace>/Engine/Source/Runtime/Engine/Private/ContentStreaming.cpp:228

Scope (from outer to inner):

file
function     void ListTrackedTextures

Source code excerpt:

}

void ListTrackedTextures(FOutputDevice& Ar, int32 NumTextures)
{
	ListTrackedRenderAssets(Ar, NumTextures);
}

/**
 * Checks a texture/mesh and tracks it if its name contains any of the tracked render asset names (GTrackedRenderAssetNames).

#Loc: <Workspace>/Engine/Source/Runtime/Engine/Private/ContentStreaming.cpp:346

Scope (from outer to inner):

file
function     void ListTrackedTextures

Source code excerpt:

{
}
void ListTrackedTextures( FOutputDevice& Ar, int32 NumTextures )
{
	ListTrackedRenderAssets(Ar, NumTextures);
}
bool TrackRenderAssetEvent(FStreamingRenderAsset* StreamingRenderAsset, UStreamableRenderAsset* RenderAsset, bool bForceMipLevelsToBeResident, const FRenderAssetStreamingManager* Manager)
{
	return false;

#Loc: <Workspace>/Engine/Source/Runtime/Engine/Private/Streaming/StreamingManagerTexture.cpp:2938

Scope (from outer to inner):

file
function     bool FRenderAssetStreamingManager::Exec

Source code excerpt:

		return HandleTrackRenderAssetCommand( Cmd, Ar );
	}
	else if (FParse::Command(&Cmd,TEXT("ListTrackedTextures"))
		|| FParse::Command(&Cmd, TEXT("ListTrackedRenderAssets")))
	{
		return HandleListTrackedRenderAssetsCommand( Cmd, Ar );
	}
	else if (FParse::Command(&Cmd,TEXT("DebugTrackedTextures"))
		|| FParse::Command(&Cmd, TEXT("DebugTrackedRenderAssets")))