Description

The issue appears to be caused by a mismatch in the value returned by GetResourceSizeBytes(EResourceSizeMode::Exclusive) between InitResources() and ReleaseResources().

At InitResources(), the reported size includes Nanite-related data. However, by the time ReleaseResources() is called, the Nanite data is already reduced or no longer present. As a result, the value subtracted during release is smaller than the value added during initialization.

Steps to Reproduce
  1. Duplicate the following Static Mesh into the project directory:
    /Engine/EditorMeshes/Cascade/BackgroundCube
  2. Enable Nanite on the duplicated mesh.
  3. Create a new Empty Level and place the Nanite-enabled mesh in the level.
  4. Create a new Basic Level, and add the previous level as a SubLevel.
  5. Implement a mechanism to repeatedly load and unload the SubLevel.
    Example: In the Level Blueprint, bind a key input event.
    Use Load Stream Level and Unload Stream Level nodes to toggle the SubLevel.
  6. Package and run the project.
  7. Execute console command: stat memory
  8. Repeatedly load and unload the SubLevel.

Results:
STAT_StaticMeshTotalMemory increases after each load/unload cycle.

Expected Results:
Repeated load/unload cycles should not cause cumulative increases in this stat.

Have Comments or More Details?

There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-367793 in the post.

0
Login to Vote

Unresolved
ComponentUE - Rendering - Architecture
Affects Versions5.7
CreatedFeb 26, 2026
UpdatedFeb 26, 2026
View Jira Issue