Release notes

What’s new

Content Development

Blending With Game Content

Gameface now supports blending of DOM elements with the 3D scene texture behind the UI. DOM elements can utilize the mix-blend-mode property and their colors can be properly blended with the game content behind them.

Particles that blend with game content

Particles that blend with game content

For more details, see the documentation for Blending With Game Content

Player CLI enhanced options

The Player now supports the --remote-debugging-port command line argument and passing URLs without using the --url CLA, for example Player.exe coui://uiresources/MyUI.html. This change aims to improve the compatibility between the Player and third-party tools that have integration with Chrome or the Inspector protocol, for example when using Visual Studio Code debugging.

Migration guide

Changes to ScriptCompiler

In this release, we have removed the possibility to pass ST_Unknown to ScriptCompiler::Compile(). The user is responsible to pass the correct script type ST_Classic or ST_Module to ScriptCompiler::Compile(). That’s important because the produced optimizedData is different and it will be rejected by V8 if it is not correct. If you are not sure of which type is the script, you can try passing ST_Classic first and if the return value is nullptr, try with ST_Module. However, this is not recommended because modules that don’t contain specific keywords like import/export might be successfully compiled as normal scripts.

Gameface will issue a warning if the optimizedData is pre-compiled as module and used as script or vice-versa:

Based on the supplied isCompiledAsModule in IAsyncResourceResponse::ReceiveOptimizedData(), Gameface will issue a warning if the optimizedData is used in the wrong place: "Trying to initialize module <name> with optimizedData precompiled as a script instead of a module." / "Trying to initialize normal script <name> with optimizedData precompiled as a module.".

Changelog

Version 1.68.0


Released 04 Jul 2025
FeatureAdded support for blending UI content with the game content behind the UI texture. For more information, see the documentation of the feature
EnhancementAdded support for using white-space: nowrap to group multiple non-wrapping nodes
EnhancementAdded --remote-debugging-port and --js-flags command line options to the Player to improve compatibility with Chromium based browsers
EnhancementAdded --working-dir-to-exec-dir for setting the Player working directory to be the same as the directory containing the Player executable
EnhancementUpdated Android samples to be compatible with Android Studio Koala 2024.1.2 and Gradle 8.6.0
EnhancementUnityImproved the UI of the data-binding leader board sample in Unity
EnhancementImproved fetching of media data to accommodate for high bit-rate video files
EnhancementImproved decoders synchronization during playback to prevent performance stalls on the game thread
EnhancementImproved decode scheduling to reduce video playback stalls
EnhancementImproved memory efficiency of video playback
EnhancementSignificantly reduced layout performance overhead of playing videos
EnhancementImproved video frame display timing
EnhancementAdded support for sharing depth-stencil textures with different size than the color texture
EnhancementEnhanced the Player command-line help descriptions for options with enum values
EnhancementSupport for Sony PlayStation 5 SDK 11.000
EnhancementSupport for Sony PlayStation 4 SDK 12.500
EnhancementAdded DirectX 12 support to the Player
EnhancementUpdated the documentation for implementing the Property interface for using data-binding with dynamic types
EnhancementAllowed empty arrays to be indexed in data-binding expressions
EnhancementAdded a warning if the pre-compiled optimized data is not compatible and will not be used to speed JavaScript execution
EnhancementUnreal EngineAdded preliminary support for Unreal Engine 5.6
EnhancementUnreal EngineFixed allocator mismatch crash for mobile platforms by using StaticAllocatorType.Ansi Allocator for mobile platforms
EnhancementUnreal EngineAdded documentation how to ensure that there is no allocator mismatch on mobile platforms
EnhancementUnreal EngineAdded detection and warning for user UTextures whose lifetime is bound to a UWorld
FixFixed using the Backdrop Filter and Custom Effects features in the Player
FixFixed crash due to preloading font data of an already destroyed typeface
FixFixed a crash when parsing specific complex data-binding expressions
FixFixed video memory leak when recreating the view
FixFixed a compiler error when using /Zc:wchar_t- with Microsoft Visual Studio
FixFixed wrong values with dynamic data binding when replacing attributes with setAttribute()
FixFixed font-face rules in SVG styles affecting elements outside the SVG
FixFixed inline SVGs not redrawing on font load when their font is not previously loaded
FixFixed crash when trying to use non-inline SVG with keyframe rule
FixStopped rematching all elements when an svg with style tag is inserted in the DOM
FixFixed failing to restyle with attribute selectors inside SVG styles
FixFixed adding and removing styles from inline SVGs
FixFixed fonts failing to unload when font-face rule is inside SVG
FixFixed error in complex data-binding expressions with JavaScript models that fail to compile
FixUnityClose the virtual keyboard when touching outside the input field on iOS
FixAllow asynchronous style solving when composition-id and custom-effect-name properties are empty or initial
FixFixed a crash when setting a composition-id on theelement without surface partitioning
FixFixed losing video volume adjustments on seek in the Player app
FixFixed a potential stall at the end of the video causing it to get stuck
FixFixed a crash when adding pathLength to SVG nodes which have no display
FixUnityFixed support multiple same-type members in a class for data-binding in Unity
FixFixed a ResizeObserver assert when destroying a non-inline SVG during styling
FixFixed a possible crash if a ScriptCompiler instance was destroyed too soon
FixLimited the memory used for constant buffers
FixFixed accumulation of memory in the GPU resource tracking
FixFixed assert for re-exposing DOM nodes when GC happens inside cloneNode
APIRemoved the default value of scriptType parameter in ScriptCompiler.Compile()
APIRemoved ScriptCompiler::ScriptType::ST_Unknown
APIRemoved support for Sony PlayStation 5 SDK 8.000
APIRemoved support for Sony PlayStation 4 SDK 11.500