When building very large textures (such as virtual textures) we allocate very large intermediate buffers for compression at full 4 channel float precision.
For a 64K texture this can be 64GB in size and triggers an OOM (see stack attached).
Avoiding this probably involves splitting the compression (and other similar processing) work into tasks/tiles and recombining.
In project QAGame load level TM-RuntimeVirtualTexture.
Select the VirtualTexture actor.
In the details panel set StreamingLevels to 9.
Select the Build button in the details panel and wait for the (virtual) texture to build.
Observe crash.
Note that this is how I encountered the crash - it's an existing path for generating a new virtual texture programmatically.
My guess is it can probably also be reproduced by trying to import a 64K texture, but I didn't try that.
There's no existing public thread on this issue, so head over to Questions & Answers just mention UE-99997 in the post.
5 |
Component | RAD - Oodle |
---|---|
Affects Versions | 4.26 |
Created | Sep 21, 2020 |
---|---|
Resolved | Mar 3, 2022 |
Updated | Mar 23, 2022 |