关卡切换时RHI内存有一个尖峰

我们遇到了一个OOM的问题,在切图的时候,卸载旧地图的过程中,在 FVolumetricLightmapBrickAtlas::Remove 函数,出现了OOM,RHI内存出现了一个比较高的尖峰。在我们的项目中能够稳定复现,。

找到了两个相关的帖子:

[Content removed]

[Content removed]

但是没有找到正式或者稳定的解决方案​。

我们的引擎版本是 5.7​

[Image Removed]

[Image Removed]

[Image Removed]

[Attachment Removed]

Hi,

你好,我看出问题了,单帧内多次Insert/Remove确实会造成显存的峰值。

我觉得可以考虑改成这样的实现:TextureSet的Dimension的X和Y固定成MaxBricksInLayoutOneDim(256),然后Z按照FMath::RoundUpToPowerOfTwo来取整,然后只有当Z发生变化后,才重新做分配以及copy。

[Attachment Removed]

好的,感谢您的回复,我们这边先试一下~

[Attachment Removed]