Release notes
On this page
What’s New
Rendering
Control over new Depth Stencil texture cache stats
Optimized GPU Memory Management for Depth Stencil Textures
By restructuring how Depth Stencil (DS) textures are managed, Gameface now enables efficient sharing of DS textures between render targets. Previously, one Depth Stencil texture was allocated per render target even though that isn’t always necessary. Now, as long as texture sizes and sample counts align, multiple render targets can share a single DS texture, significantly reducing memory usage. While the exact savings depend on the specific UI, on average, it achieves at least a 2x reduction in DS-related memory consumption. As a result, Gameface now allows control over the amount of Depth Stencil textures and their total size in bytes. Currently, the default DS textures byte capacity is 8MB, while their count can go up to 32. However, you can configure these to suit your needs using the new enumeration entry cohtml::InternalCaches::ICACHE_DepthStencilTextures
with the View::QueueSetCacheCountSize
and View::QueueSetCacheBytesSize
APIs. The View::QueueClearCaches
method can be used to clear the whole DS textures cache. Additionally, the View::GetCacheCountStats
and View::GetCacheBytesStats
functions can be used to retrieve the DS textures' capacity statistics. Renoir automatically maintains these limits by pruning excess textures at the end of each frame, ensuring that DS textures stay within the defined capacity and memory constraints.
Changelog
Version 1.62.0
Released 18 Dec 2024
API | Added API for getting and setting the depth stencil textures cache |
Enhancement | Introduced a new internal cache and reuse logic for depth-stencil textures |
Enhancement | Added warning message when trying to set V8 flag --gc_interval in non-debug configurations |
Enhancement | Added new trace events in the inspector that show the creation and destruction of depth-stencil textures |
EnhancementUnreal Engine | Support for binary messages in Unreal Engine WebSockets integration |
EnhancementUnreal Engine | Added a configurable API for safe zones and letterboxing |
FixUnreal Engine | Fix a crash inside the TextToSpeach plugin that can use code from not yet loaded module |
FixUnreal Engine | Fix shipping compilation due to FRHIBreadcrumbEventScope and FRHIBreadcrumbData not available in some configurations |
Fix | Fixed sizing of elements with relative units on viewport change |
Fix | Prevent appending of elements in the constructor of a custom element |