LTS Releases
Version 2.2.7
Section titled “Version 2.2.7”| API | Getters for data-binding model properties used in complex data-binding expressions are evaluated only once per model synchronization. |
| API | Complex data-binding expressions with side effects are evaluated only once per synchronization. |
| Feature | Added support for numerical value comparison in a custom media feature. |
| Enhancement | Improved style inheritance performance by optimizing inheritance resolution and reducing styling overhead. |
| Enhancement | Improved styling performance for custom variables by reducing recalculation costs. |
| Enhancement | Improved styling performance for SVG-heavy content by reducing the cost of processing large numbers of inline SVG elements. |
| Enhancement | Improved rendering performance by optimizing visual style calculations for large layout trees. |
| Enhancement | Improved transform update performance by reducing processing overhead across large layout trees. |
| Enhancement | Optimized repeated data-binding expressions by evaluating them once per synchronization. |
| Enhancement | Reduced the magnitude of spikes caused by garbage collection tracing. |
| Enhancement | Optimized |
| Enhancement | Reduced copies and allocations when getting string property values from data-binding models. |
| Enhancement | Improved data-binding performance by optimizing expression evaluation during model synchronization. |
| Enhancement | Improved content update performance by avoiding unnecessary HTML parsing for simple text updates when using innerHTML |
| Fix | Fixed a crash when calling |
| Fix | Fixed incorrect spacing and an assert when composed characters without matching font glyphs are drawn. |
| Fix | Fixed accumulation of |
| Fix | Fixed a layout regression related to single flex-child height calculation. |
| Fix | Fixed garbage collection of custom elements when they are not attached to the DOM but have reactions to be invoked. |
| Fix | Fixed cases where SVG animations would fail to restart after being hidden. |
| Fix | Fixed cases in which the layout of :after pseudo elements would be incorrect. |
| Fix | Resolved warnings caused by HTML or SVG parsing errors. |
| Fix | Fixed incorrect draw order of text decorations. |
| Fix | Fixed an assert in the player when scrolling with high-precision mice. |
Version 2.2.6.2
Section titled “Version 2.2.6.2”| Enhancement | Added more L2 profile scopes for |
| Fix | Fixed a bug causing the leaking of objects related to path tessellations |
| Fix | Fixed a bug causing some vertex and index buffers used for paths to be destroyed with a delay of several frames |
| Fix | Fixed complex text letter-spacing not being applied at first glyph boundary |
| Fix | Fixed an assert about nodes being destroyed on the on the style thread when using the |
Version 2.2.5
Section titled “Version 2.2.5”| Fix | Fixed using the |
| Fix Unity | Fixed running with MSVC redistributable libraries version 14.28 and newer for platforms using the Microsoft GDK for Unity |
| Fix | Fixed a bug resulting in a wrongly calculated image data size and causing asserts to be hit in the Rendering Backend code |
| Fix | Fixed long complex selectors with descendant combinator sometimes failing to match correctly |
| Fix | Fixed an assert when firing events on clone of a node with |
| Fix | Fixed a bug resulting in leaking vertex and index buffers used for CPU tessellated paths when destroying a View |
Version 2.2.4
Section titled “Version 2.2.4”| Feature | Added complete support for binding dynamically typed values and implemented support for |
| Enhancement | Simplified loading of the cohtml library on Linux by adding |
| Enhancement Unreal Engine | Update Prysm statistics only when the |
| Fix Unreal Engine | Fixed warnings triggered when binding arrays of |
| Fix | Fixed text-stroke artifacts that occurred when the text-stroke-width property changed. |
| Fix | Fixed a flex gap issue that left extra trailing space. |
| Fix | Fixed text-stroke failing to apply width when styled dynamically. |
| Fix | Fixed a bug in WebP image decoding that caused artifacts in alpha values around the image boundaries. |
| Fix | Fixed lossy WebP alpha decoding for images with widths not divisible by the pixels-per-byte ratio. |
| Fix | Fixed a crash during view destruction when using animated pseudo-elements. |
Version 1.69.8
Section titled “Version 1.69.8”| API | Removed support for Sony PlayStation 5 SDK 10 |
| API | Removed support for Sony PlayStation 5 SDK 11 |
| API | Switched the default PlayStation 5 SDK to version 12 |
| API Unity | Switched the PlayStation 5 SDK to version 12 for Unity |
| API | Switched prebuilt ICU libraries to be using C++20 for PlayStation 5 |
| API | The prebuilt ICU libraries using C++17 for PlayStation 5 have been renamed to have a |
| Enhancement | Added support for Sony PlayStation 5 SDK 13 |
| Enhancement | Improved insertion performance of new data-binding expressions |
| Enhancement | Improved performance of |
| Enhancement | Improved the samples for the Custom Effects to properly handle rendering to a render target with depth-stencil attached to it |
| Fix | Fixed a bug related hiding and destroying elements with |
| Fix | Fixed incorrect CJK punctuation wrapping in inline layout between different elements |
| Fix | Fixed running with MSVC redistributable libraries version 14.28 and newer for platforms using the Microsoft GDK |
| Fix | Fixed a crash when navigating back in history when the history items contain non-empty state |
| Fix | Fixed a bug in the rendering library related to clipping of text elements and causing visual artifacts |
| Fix | Fixed a bug in the provided OpenGL rendering backend causing the invalid reuse of frame buffers resulting in visual artifacts |
| Fix | Fixed a bug in the rendering library related to usage of a wrong sampler object causing some elements with |
| Fix Unreal Engine | Fixed handling of Korean language with the Input Method Editor |
| Fix Unreal Engine | Fixed hiding mouse cursor when using a HUD and keyboard and gamepad propagation |
Version 1.69.7
Section titled “Version 1.69.7”| Enhancement | Improved insertion performance of new data-binding expressions |
| Enhancement | Improved element removal performance for data-binding attributes during high-volume SynchronizeModels calls |
| Enhancement | Introduced detailed data-binding scopes for level 2 performance profiling |
| Fix | Fixed videos freezing after the first playthrough |
| Fix | Fixed possible crash when calling custom element callbacks |
Version 1.69.6
Section titled “Version 1.69.6”| Fix Unity | Fixed invalid UTF-8 strings causing exceptions in the C++/C# binding code |
| Fix Unity | Fixed a deadlock when using text transformations in Unity |
| Fix | Fixed a crash when using unsupported video codecs |
| Fix | Fixed |
| Fix | Fixed a potential crash caused by |
| Fix | Fixed a crash when using special characters with complex text languages |
| Fix | Fixed a crash when using the |
| Fix | Fixed a crash when handling font resource requests during abort notification |
| Fix | Fixed a crash where font load/unload triggered resource requests to register or unregister other fonts |
| Fix | Fixed a bug that disconnected the Inspector for an inspected View when another View is destroyed |
| Fix | Fixed a crash when using the |
| Fix | Fixed an untagged allocation assert when wrapping complex text |
| Fix | Fixed a bug in the WebP decoding logic leading to a crash when loading certain images |
| Fix | Fixed parsing of SVG transform attributes |
| Fix | Fixed signing of |
| Fix | Fixed an assert when unloading an SVG with a |
| Fix | Fixed a crash when calling a constructor of an undefined custom element |
| Fix | Fixed a bug in the rendering library causing a CPU memory leak |
| Fix | Fixed backdrop filter |
| Fix Unity | Fixed data binding for 32-bit Android platforms with IL2CPP for Unity |
Version 1.69.5
Section titled “Version 1.69.5”| API | Removed support for Sony PlayStation 5 SDK 9 |
| Enhancement | Support for Sony PlayStation 5 SDK 12 |
| Enhancement | Updated Microsoft GDK version to 2025.04 |
| Fix Unity | Fixed data-binding in Unity for Android ARM64 and x64 with |
| Fix Unity | Fixed using custom |
| Fix | Allowed prefetching of the same script or stylesheet if requested by multiple elements in the DOM |
| Fix | Made prefetching of resources/stylesheets work for all elements that reference the same resource |
| Fix | Fixed binding of C++ arrays when not using |
| Fix | Fixed ‘Disable JavaScript samples’ checkbox under Inspector’s Performance tab not working |
| Fix | Fixed an assert failure when trying to scroll an element via JavaScript that is not in the DOM |
| Fix | Fixed a crash during style solving of SVG elements |
| Fix | Fixed running with MSVC redistributable libraries version 14.28 and newer |
| Fix | Fixed a bug related to the paths tessellation cache causing a crash on a worker thread |
| Fix | Added runtime capabilities checks for the native DirectX 11 and DirectX 12 backends that prevent visual artifacts on older embedded Intel GPUs |
| Fix | Fixed a bug related to drawing of elements with backdrop-filter causing a visual artifact |
| Fix | Added a better handling of constant texture recreation in the native Switch rendering backend |
| Fix | Fixed visual artifacts with text and SVGs on Nintendo Switch 2 with the native backend |
| Fix | Fixed multithreaded race conditions causing DOM object lifetime issues |
| Fix | Fixed crash when decoding large |
| Fix | Fixed a bug in the player application related to DirectX 12 compositor causing a visual artifact |
| Fix | Removed warning for missing properties in data binding expressions for |
| Fix Unreal Engine | Fixed trying to use destroyed textures in Unreal Engine |
Version 1.69.4
Section titled “Version 1.69.4”| Fix | Fixed losing precision when binding large values of 64 bit |
| Fix | Fixed wrong type name of dynamic properties with the Safe Data Binding enabled |
| Fix | Fixed JS Max call stack size exceeded error in Unity on Android |
| Fix | Fixed a race condition when creating script compilers or views in parallel |
| Fix | Fixed text rendering with HDR colors |
| Fix | Fixed a crash with precise data-binding when the same object is changed, removed and added to a collection |
| Fix | Fixed rendering on Nintendo Switch when the game uses non-default stencil mask values |
Version 1.69.3
Section titled “Version 1.69.3”| Fix | Fixed using complex expressions inside |
| Fix | Fixed access to methods of models and JavaScript APIs in data-binding expressions |
| Fix | Fixed data-binding for wide strings (UTF-16 and UTF-32), enumerations and pointers to primitive types |
| Fix | Fixed reading of UTF-32 strings from JavaScript |
| Fix | Fixed infinite recursion and hang when matching complex descendant selectors |
| Fix Unity | Fixed missing rendering in Unity with Vulkan for certain Android devices |
| Fix | Fixed crash when using precise updates for |
Version 1.69.2
Section titled “Version 1.69.2”| Fix | Fixed crash when unloading an SVG used as an image before it has completed loading |
| Fix Unity | Fixed disappearing views when the Game window loses focus in SRP with DirectX12 in Unity3D |
| Fix Unreal Engine | Fixed leaking of User Background textures when a View gets destroyed before a |
Version 1.69.0
Section titled “Version 1.69.0”| API | Changed shaders to allow for improved batching of gradients and applying color matrix in the pixel shaders |
| Feature | Allowed the closing |
| Feature | Introduced a new way of achieving backdrop filter effect with a focus on performance and memory usage. See the documentation for more information |
| Enhancement | Made the |
| Enhancement | Improved the performance of the provided native DirectX 12 rendering backend by refactoring the logic for GPU descriptors handling, texture updating, and binding of pixel shader textures. See the new DirectX 12 documentation for more performance insights |
| Enhancement | Added a new documentation for the provided native DirectX 12 reference backend. See the documentation for more information |
| Enhancement | Removed the ‘Total Memory’ and ‘Spike Memory’ performance counters |
| Enhancement | Support for Nintendo Switch SDK 20 |
| Enhancement Unreal Engine | Ensured the virtual keyboard is showing when clicking or touching on already focused text input |
| Enhancement Unreal Engine | Added delegates for customizing the |
| Enhancement Unreal Engine | Added |
| Enhancement Unreal Engine | Complete support for Unreal Engine 5.6 |
| Fix | Fixed the accumulation of DOM |
| Fix | Fixed a bug where the size of the user background for the backdrop filter wasn’t getting properly updated, leading to visual artifacts for a single frame |
| Fix | Fixed a crash when navigating a View while there is a dynamic import in flight |
| Fix | Fixed spacing between text nodes when the element has no definite size constraints imposed on it (e.g. has no specified |
| Fix | Fixed a crash when accessing array elements inside array elements that have been erased |
| Fix | Fixed a bug for |
| Fix | Fixed a bug where extra whitespace would be incorrectly appended at the end of SVG |
| Fix Unity | Fixed the backdrop filter effect in HDRP and URP mode in Unity |
| Fix Unity | Fixed a hang in the Unity Editor with DirectX 12 when the preview window loses focus |
| Fix Unity | Added the Visual Studio Code plugin for autocomplete in the Unity UPM packages |
| Fix | Fixed a bug with the usage of non-standard rendering resolution, causing a one-pixel artifact for some DOM elements |
| Fix | Fixed a wrong calculation of color matrices that was observed with the standard invert filter and custom color matrices with color bias |
| Fix | Fixed a bug with the unloading of raster fonts, leading to visual artifacts when rendering text |
| Fix | Fixed a bug with the drawing of repeated images from image atlases, leading to wrong sections of the atlas being rendered |
| Fix | Fixed crash triggered by JavaScript callbacks removing DOM nodes after they were scheduled for style solving |
| Fix Unreal Engine | Fixed support for multiple touches on physical mobile devices |
| Fix Unreal Engine | Fixed a false-positive warnings for not yet destroyed |
| Fix | Fixed a bug with the gradients that was causing invalid memory access when having invalid color stops in the CSS |
| Fix Unreal Engine | Fixed a crash in custom effects drawing when |
| Fix Unity | Fixed the rendering on Android with Vulkan rendering API enabled |
Version 1.68.0
Section titled “Version 1.68.0”| Feature | Added support for blending UI content with the game content behind the UI texture. For more information, see the documentation of the feature |
| Enhancement | Added support for using white-space: nowrap to group multiple non-wrapping nodes |
| Enhancement | Added |
| Enhancement | Added |
| Enhancement | Updated Android samples to be compatible with Android Studio Koala 2024.1.2 and Gradle 8.6.0 |
| Enhancement Unity | Improved the UI of the data-binding leader board sample in Unity |
| Enhancement | Improved fetching of media data to accommodate for high bit-rate video files |
| Enhancement | Improved decoders synchronization during playback to prevent performance stalls on the game thread |
| Enhancement | Improved decode scheduling to reduce video playback stalls |
| Enhancement | Improved memory efficiency of video playback |
| Enhancement | Significantly reduced layout performance overhead of playing videos |
| Enhancement | Improved video frame display timing |
| Enhancement | Added support for sharing depth-stencil textures with different size than the color texture |
| Enhancement | Enhanced the Player command-line help descriptions for options with |
| Enhancement | Support for Sony PlayStation 5 SDK 11.000 |
| Enhancement | Support for Sony PlayStation 4 SDK 12.500 |
| Enhancement | Added DirectX 12 support to the Player |
| Enhancement | Updated the documentation for implementing the |
| Enhancement | Allowed empty arrays to be indexed in data-binding expressions |
| Enhancement | Added a warning if the pre-compiled optimized data is not compatible and will not be used to speed JavaScript execution |
| Enhancement Unreal Engine | Added preliminary support for Unreal Engine 5.6 |
| Enhancement Unreal Engine | Fixed allocator mismatch crash for mobile platforms by using |
| Enhancement Unreal Engine | Added documentation how to ensure that there is no allocator mismatch on mobile platforms |
| Enhancement Unreal Engine | Added detection and warning for user |
| Enhancement Unreal Engine | Added support for automated binding of fixed sized arrays |
| Fix Unreal Engine | Fixed window size and coordinates in JavaScript for |
| Fix Unreal Engine | Fixed |
| Fix | Fixed using the Backdrop Filter and Custom Effects features in the Player |
| Fix | Fixed crash due to preloading font data of an already destroyed typeface |
| Fix | Fixed a crash when parsing complex data-binding expressions with lambda expressions |
| Fix | Fixed video memory leak when recreating the view |
| Fix | Fixed a compiler error when using |
| Fix | Fixed wrong values with dynamic data binding when replacing attributes with |
| Fix | Fixed font-face rules in SVG styles affecting elements outside the SVG |
| Fix | Fixed inline SVGs not redrawing on font load when their font is not previously loaded |
| Fix | Fixed crash when trying to use non-inline SVG with keyframe rule |
| Fix | Stopped rematching all elements when an svg with style tag is inserted in the DOM |
| Fix | Fixed failing to restyle with attribute selectors inside SVG styles |
| Fix | Fixed adding and removing styles from inline SVGs |
| Fix | Fixed fonts failing to unload when font-face rule is inside SVG |
| Fix | Fixed error in complex data-binding expressions with JavaScript models that fail to compile |
| Fix Unity | Close the virtual keyboard when touching outside the input field on iOS |
| Fix | Allow asynchronous style solving when |
| Fix | Fixed a crash when setting a composition-id on the |
| Fix | Fixed losing video volume adjustments on seek in the Player app |
| Fix | Fixed a potential stall at the end of the video causing it to get stuck |
| Fix | Fixed a crash when adding |
| Fix Unity | Fixed support for multiple members of the same type in a class for data-binding in Unity |
| Fix | Fixed a |
| Fix | Fixed a possible crash if a |
| Fix | Limited the memory used for constant buffers |
| Fix | Fixed accumulation of memory in the GPU resource tracking |
| Fix | Fixed assert for re-exposing DOM nodes when GC happens inside |
| API | Removed the default value of |
| API | Removed |
| API | Removed support for Sony PlayStation 5 SDK 8.000 |
| API | Removed support for Sony PlayStation 4 SDK 11.500 |
Version 1.67.0
Section titled “Version 1.67.0”| API | Added linear to sRGB color space conversion in shaders |
| Feature | Added support for |
| Feature | Added support for WebP images |
| Feature | Added support for the |
| Feature | Added support for the |
| Feature | Added |
| Feature Unity | Added support for .Net objects to be used as models for the data binding in the Unity3D integration |
| Feature Unreal Engine | Added Custom Effects support for UMG widgets |
| Enhancement | Optimized text shadows rendering. The default size for the shadow cache is reduced from 8 to 1 to save GPU memory. A performance warning has been added to indicate when the cache is full |
| Enhancement | Moved the computation of blur weights to the GPU to improve CPU performance |
| Enhancement | SIMD instructions are now utilized in the rendering library to improve CPU performance |
| Enhancement | Added CPU visible buffers in DirectX12 for better performance and reduced GPU memory usage |
| Enhancement | Added support for skew transforms on clipped or masked SVG elements with |
| Enhancement | Added support for |
| Enhancement | Added support for custom CSS expressions with |
| Enhancement | Added support for custom CSS expressions for |
| Enhancement | Added support for using textures in linear color space with the SDR gamma rendering pipeline |
| Enhancement | Added |
| Enhancement | Enhanced configuration support for the player - all options can now be configured with a |
| Enhancement | Split Android and iOS platforms to a separate mobile package for native, Unreal and Unity |
| Enhancement | Improved multithreaded performance of the Sony PlayStation 5 samples by using the standard allocator |
| Enhancement | Added errors for invalid |
| Enhancement Unreal Engine | Added logging of errors when the |
| Enhancement Unreal Engine | Added multi-touch support for UMG widgets |
| Enhancement | Added gamepad and keyboard input to the Manager UI sample |
| Enhancement | Enhanced logging for invalid css custom expressions to include the faulty expressions |
| Fix | Fixed a large memory spike caused by a single allocation during processing of rendering commands |
| Fix | Fixed cutting parts of some SVG images |
| Fix | Fixed applying |
| Fix | Fixed edge cases for transformed content using SVG clipPath or mask references |
| Fix | Fixed an assert when adding non-SVG elements inside the SVG DOM |
| Fix | Fixed using selectors before the |
| Fix | Fixed garbage collection of CSS animations when firing animation events |
| Fix | Fixed CSS transitions of |
| Fix | Fixed a potential deadlock during system destruction |
| Fix | Fixed a changing SVG images with |
| Fix | Fixed incorrect memory counters in the profiling API |
| Fix | Fixed the calculation of the peak usage bytes for constant buffers |
| Fix Unity | Resources requests are now thread-safe and handled on the main thread |
| Fix Unity | Fixed accumulation of Live Views in Unity3D |
| Fix | Fixed a crash when using latest |
Version 1.66.0
Section titled “Version 1.66.0”| API | Removed developer option for using deprecated |
| API | |
| API Unreal Engine | Added support for the incremental garbage collection in Unreal Engine 5. Projects leveraging Unreal Engine 4.27 will have the plugin files modified during project generation |
| Feature Unreal Engine | Added support for incremental garbage collection for Unreal Engine 5 |
| Enhancement | Added Compositor and Surface Partitioning support for DirectX 12 in the Player application |
| Enhancement | Added an example blur filtering of a texture using a compute shader |
| Enhancement | Added a log message notifying that |
| Enhancement | Added DirectX 12 support to the default samples solution |
| Enhancement | Fixed unclosed profiling markers when using the default profiling backend on PC platforms |
| Enhancement Unreal Engine | Simplify view initialization when using UMG widgets |
| Enhancement Unreal Engine | Ensure virtual keyboard will not use the view or the |
| Fix | Fixed a layout regression with incorrect handling of undefined dimensions |
| Fix | Fixed crashes when |
| Fix | Fixed crashes with null pointer parents during style solving when using the |
| Fix | Fixed hover and active pseudo-classes inside slotted and host brackets |
| Fix | Fixed stale styling when adding an element that creates a complex selector match |
| Fix | Fixed caret positioning in |
| Fix Unity | Fixed accumulation of C# implementations of public interfaces until the library is unloaded |
| Fix | Fixed localization sample for Nintendo Switch |
| Fix Unity | Fixed input issues in the |
| Fix | Fixed a resource leak of in the DirectX 11 backend |
| Fix | Fixed performance regression in text rendering |
| Fix | Fixed SVG border image rendering regression when SVG has no width and height |
| Fix | Fixed SVG mask size when using relative units |
| Fix | Fixed the calculation of |
| Fix | Fixed updating of inline SVG styles when the root font style changes |
| Fix Unreal Engine | Updated Player starting scripts to list the available options |
| Fix Unreal Engine | Fix possible unpainted frames when using UMG widgets and destroying the scene |
| Fix Unreal Engine | Fix backdrop-filter on Mobile devices when |
| Fix Unreal Engine | Fix assert when using shared render target textures and UMG on Sony platforms |
| Fix Unreal Engine | Add missing lock in |
| Fix Unreal Engine | Invalidate the IME Manager after deactivating and unregistering the Text Input Method Context, resolving a crash |
| Fix Unreal Engine | Fixed issues with |
| Fix Unreal Engine | Fixed selection issues when entering text with virtual keyboard |
| Fix Unreal Engine | Fixed deleting the last character of the input field when using virtual keyboard |
| Fix Unreal Engine | Fixed possible crash in |
Version 1.65.2
Section titled “Version 1.65.2”| Fix | Fixed performance regression when using |
| Fix Unity | Fixed input issues in the |
Version 1.65.0
Section titled “Version 1.65.0”| API | Changed the minimum supported version of Unity3D to 2020 LTS |
| API | Refactor Renoir rendering backends to apply the requested state right away |
| API | Added default constructor to the |
| API | Forbade re-entering |
| API | Added a |
| Feature | Added support for Inline |
| Feature Unreal Engine | Add possibility to share render targets between views |
| Enhancement | Enhanced performance of slotting in Shadow DOM |
| Enhancement | Added support for Nintendo Switch SDK 18 |
| Enhancement | Automatically revert to async style solving when a CSS property that prevents it is no longer in use |
| Enhancement | Added error message when a module tries to import nonexistent exported symbol |
| Enhancement | Updated Microsoft XDK version to 2024 October Update 1 |
| Enhancement | Migrated samples to use internally managed Depth Stencil textures |
| Enhancement | Listed additional options that can be passed when launching the Player in the Player.bat file |
| Enhancement | Improved warning message when complex data binding expression fails to compile |
| Enhancement | Added support for |
| Enhancement | Documented how to use a Sony PlayStation |
| Enhancement Unity | Updated the |
| Enhancement Unreal Engine | Switched to using |
| Enhancement | Made possible to set text content directly on a text node |
| Enhancement | Made the reflected attributes on the SVG element to respect the unit type |
| Fix | Fixed an occasional bad inspector timeline start time in subsequent performance profiling sessions |
| Fix | Fixed |
| Fix | Fixed preloaded styles failing to load when reused |
| Fix | Fixed using custom data-binding attributes with the Data-Binding expression calculator |
| Fix | Fixed wrongly nested profiling events with the default profiling tracer |
| Fix | Fixed scrolling of slotted elements |
| Fix | Fixed |
| Fix | Fixed |
| Fix | Fixed hover and active selectors with slotted elements |
| Fix | Fixed unreasonably large memory allocations when using |
| Fix | Fixed a |
| Fix | Fixed a crash when connecting or disconnecting |
| Fix | Fixed a crash when changing the value of |
| Fix | Fixed a crash when a text node is added to a SVG element |
| Fix | Fixed a crash when data binding removes SVG elements |
| Fix | Fixed a crash when removing reflected attributes from the SVG element |
| Fix | Fixed a crash when trying to set |
| Fix | Fixed a rare GC crash when creating custom elements |
| Fix | Fixed a rare GC crash when logging errors during garbage collection |
| Fix Unity | Removed dependency on PIX for Microsoft Xbox platforms |
| Fix Unity | Fixed changelog hyperlink in UPM package |
| Fix Unreal Engine | Fixed an issue with |
| Fix Unreal Engine | Set |
| Fix Unreal Engine | Fixed crash with compositor data being garbage collected while in use |
| Fix Unreal Engine | Fixed potential crashes when Async Texture Compiling is enabled for Unreal Engine 5.4 and above |
| Fix | Fixed a performance regression in text rendering |
Version 1.64.0
Section titled “Version 1.64.0”| Feature | Optimized |
| Enhancement | Improved error message for |
| Enhancement | Improved performance of |
| Enhancement | Modified the Components sample to use Shadow DOM |
| Enhancement | Optimized layout for deep DOM structures with automatically sized children |
| Enhancement | Optimized text layout performance and memory usage |
| Enhancement | Improved error messages when data binding expression fails to parse or compile |
| Enhancement | Added support for multiple keyframe rules with the same name |
| Enhancement Unreal Engine | Added a delegate for mouse wheel event in HUD setups |
| Enhancement Unreal Engine | Added sharing of depth stencil textures for views with compatible dimensions to save texture memory |
| Enhancement | Refactor backends to standardize the storing of GPU objects |
| Enhancement | Added profiling data and documentation for handling bad cases for the flex layout algorithm |
| Enhancement | Added the possibility to directly resolve a multi-sampled stencil texture region to |
| Fix | Fixed child element transitions not triggering after the hidden parent becomes visible |
| Fix | Updated the TypeScript definitions for the |
| Fix Unity | Added |
| Fix Unity | Fixed Unity 6 treating UPM packages as experimental |
| Fix | Disabled emitting of some profile events when |
| Fix | Fixed a visual artifact when applying backdrop filter to the whole viewport |
| Fix | Fixed visual artefacts of left over text when changing the text dynamically in an inline container |
| Fix | Fixed a crash when accessing unreachable array element with the safe binding enabled |
| Fix | Fixed a crash when a precompiled script throws an exception |
| Fix | Fixed animations sometimes failing to pause or wrongly resuming |
| Fix | Keyframe rules no longer pass the shadow DOM boundary |
| Fix | CSS animations now stop once their keyframe rule is removed |
| Fix Unreal Engine | Fixed unsafe access of texture when texture draws tracking is enabled on console platforms |
| Fix Unreal Engine | Fixed issues when recording screenshots with Inspector profiling |
| Fix Unreal Engine | Fixed assert when resolving |
| Fix Unreal Engine | Fixed a crash on older android devices related to unsupported shader buffer sizes |
| Fix | Fixed cases where scissor rect would be bigger than than the viewport |
| Fix | Fixed crash when |
| Fix | Fixed binding of nested maps and arrays when safe binding is enabled |
| Fix Unreal Engine | Fixed assert during shader compilation on Mac OS when |
| API | Added a new |
Version 1.63.0
Section titled “Version 1.63.0”| API | Altered the Depth-Stencil texture representation inside the |
| API | Implemented return status for data binding API methods |
| Feature | Introduced support for font files that use COLRV1 table for storing color glyphs like emojis |
| Feature | Added support for adding event listeners that execute only once |
| Feature | Added support for passing an options object when registering event listeners |
| Feature | Added support for passing an options object when removing event listeners |
| Feature | Removed the need to manually set the |
| Enhancement | Providing Depth-Stencil texture when calling |
| Enhancement | Enhanced the chat sample to be using fonts with emojis |
| Enhancement | Allowed calling |
| Enhancement | Added hexagonal skill tree sample |
| Enhancement | Added separating text sample |
| Enhancement Unity | Optimized |
| Enhancement | Allowed the usage of Simple Opacity for UIs generated by the Prysm plugin |
| Enhancement | Added an option to specify to the |
| Enhancement | Added Shadow DOM related events and assigned nodes button to the Inspector |
| Enhancement | Added the |
| Enhancement | Added return codes for data binding API methods |
| Enhancement | Added throwing JavaScript exception when doing |
| Fix | Fixed SVGs drawing incorrectly when transformations are applied with perspective |
| Fix | Fixed a crash after resource request has been aborted in Unity |
| Fix | Fixed registering and unregister C++ event handlers from inside another handler |
| Fix | Fixed an assert for unregistered font family initial value |
| Fix | Fixed a memory leak when unregistering a JavaScript model |
| Fix | Fixed a possible crash when registering an existing model with different name |
| Fix | Fixed incorrect selection and caret placement with emojis in |
| Fix | Added a guard for creating a second JavaScript model with a name clashing with an already registered model |
| Fix Unreal Engine | Fixed engine plugin builds by adding the missing categories to blueprint exposed padding related |
| Fix Unreal Engine | Fixed potentially skipping to execute tasks resulting in hangs. |
| Fix Unreal Engine | Fixed crashes related to Safe data binding when accessing array properties |
| Fix Unreal Engine | Fixed max HTTP requests initializing to 0 on Unreal Engine 5.5 due to a missing config value |
Version 1.62.0
Section titled “Version 1.62.0”| 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 |
| Enhancement | Added new trace events in the inspector that show the creation and destruction of depth-stencil textures |
| Enhancement Unreal Engine | Support for binary messages in Unreal Engine WebSockets integration |
| Enhancement Unreal Engine | Added a configurable API for safe zones and letterboxing |
| Fix Unreal Engine | Fix a crash inside the |
| Fix Unreal Engine | Fix shipping compilation due to |
| Fix | Fixed sizing of elements with relative units on viewport change |
| Fix | Prevent appending of elements in the constructor of a custom element |
Version 1.61.0
Section titled “Version 1.61.0”| API | New pixel format for textures |
| API | New shader types |
| API Unreal Engine | Renamed Switch libraries |
| Feature | Added |
| Feature | |
| Feature | Added |
| Feature | Added support for shadow DOM |
| Feature | Added the |
| Feature | Added the |
| Feature | Added partial support for the ‘all’ css shorthand with value ‘initial’ |
| Enhancement Unreal Engine | Support Unreal Engine 5.5 |
| Enhancement | Implemented surface cache flushing when changing render target |
| Enhancement | Added HDR support in media queries |
| Enhancement | Extended View’s API to be able to get the current script stack trace |
| Enhancement | Added prebuilt C++20 ICU versions for Sony PlayStation 5 to allow linking with libc++ ABI |
| Enhancement Unreal Engine | Added control of texture pool size for Custom Effect textures |
| Enhancement Unreal Engine | Added custom effect texture pool APIs |
| Enhancement Unreal Engine | Cohtml and Renoir assert failures are now handled with |
| Enhancement Unreal Engine | Fixed crash when Unreal Engine tries to execute Cohtml tasks one inside another |
| Fix | Leaking renoir commands for canvases on platforms with clang based compilers |
| Fix | Fixed Sony PlayStation 4 and Sony PlayStation 5 virtual allocator memory protection |
| Fix | Fixed the simple opacity when applied to SVGs |
| Fix | Fixed crash when using canvas radial gradient |
| Fix | Fixed crash when GC happens during |
| Fix | Custom element callbacks are now executed in the correct order |
| Fix | Fixed wrong assert when using SVG as background-image |
| Fix Unity | Fixed OpenGL Rendering Target support |
| Fix | Fixed assert for incorrect |
| Fix | Fixed assert with pseudo elements |
| Fix | Fixed stack overflow when using calling |
| Fix | Fixed assert when removing focused node matching complex selectors |
| Fix | Fixed animated GIF frame duration playback (previously each frame was displayed for 10 times longer). |
| Fix Unity | When an abort request is made, the |
| Fix Unreal Engine | Improved live reload path matching when using non-normalized paths |
| Fix | Fixed wrong styles when using important declarations in pseudo-elements |
| Fix Unity | Fixed crash in Development Unity player builds for Android |
Version 1.60.0
Section titled “Version 1.60.0”| API | Added several new shader types to reduce stencil usage. For more information, see the Rendering Migration guide |
| API | At-rules now support ordering. This mostly affects existing media at-rules that were previously position independent and were always overriding regular rules. Such stylesheets need to be reworked according to the standard behavior respecting cascade order. |
| API Unity | Moved the Unity3D-specific log handling functionality within the |
| API Unity | Renamed the |
| Feature | Persistent local storage for the Player on Windows Desktop and Mac OS |
| Feature Unity | Add Performance logging support |
| Feature Unity | Added sample hub for easier access to all samples |
| Feature Unreal Engine | Added profiling scopes for Unreal insights |
| Enhancement | Added conversion to linear colorspace when sampling from textures. For more information, see the Rendering Migration guide |
| Enhancement | Added a library option to set the scripting engine (V8) flags |
| Enhancement | Improved error messages when loading ES6 modules with syntax errors |
| Enhancement | |
| Enhancement | |
| Enhancement | Allow passing view specific developer options in the command line arguments of the Player |
| Enhancement | Added tutorial for creating a 3D compass |
| Enhancement | Improved the performance of drawing repeated images |
| Enhancement | Added a dialogue tree sample |
| Enhancement Unity | Added a new UI Surface Partitioning sample to the Unity3D package |
| Enhancement Unity | Added a new Localization sample to the Unity3D package |
| Enhancement Unity | Added a new in-world view sample to the Unity3D package |
| Enhancement Unity | Added a new View in Canvas UI sample to the Unity3D package |
| Enhancement Unity | Configured the correct color space in the rendering library based on the active color space in Unity3D |
| Enhancement Unreal Engine | Add extra guards when accessing RHI Textures |
| Enhancement Unreal Engine | Improved the flow of freeing rendering resources owned by the |
| Enhancement Unreal Engine | Added texture pool for Custom Effect textures preventing memory accumulation between GC intervals |
| Fix | Fixed MinimalHelloCohtml sample resource handler crash when trying to load missing resources |
| Fix | Fixed fonts with GPOS kerning rendering composed glyphs incorrectly |
| Fix | Fixed missing timeline when making performance captures on Android |
| Fix | Fixed crash when capturing a screenshot for the Inspector on Sony PlayStation 5 |
| Fix | Fixed |
| Fix | Fixed an issue with |
| Fix | Fixed a possible crash when calling UpdateWholeModel() |
| Fix | Fixed caret position when changing |
| Fix | Fixed potential crashes when using custom variables inside of |
| Fix | Fixed custom effect sample with OpenGL |
| Fix | Fixed samples linking with Vulkan on Windows ARM64 |
| Fix | Fixed elements not being re-rendered when a valid font for weight fallback becomes available |
| Fix | Fixed detection of |
| Fix | Fixed a wrong debug assert failure when unloading |
| Fix | Fixed a wrong debug assert failure when using a defer attribute on inline scripts |
| Fix | Fixed |
| Fix | Fixed memory accumulation in the |
| Fix | At-rules are now accessible through |
| Fix | Styles in link elements are now accessible through stylesheets API |
| Fix | Media attribute of link elements can now contain |
| Fix | Fixed wrong style in some cases when using |
| Fix | Fixed nested media rules with non-absolute URLs |
| Fix | Fixed using |
| Fix | Link elements with now respond correctly to removing, adding or changing the media attribute |
| Fix | Fixed sometimes applying wrong styles when using complex selectors inside media rules |
| Fix | Fixed holding resources of inactive font-face rules in memory |
| Fix | Fixed sometimes applying wrong font-face rules when using multiple ones with the same font description but different URLs |
| Fix | Added the ability to use |
| Fix | Fixed a wrong debug assert failure in the DOM Builder |
| Fix | Fixed a bug with the CSS transitions when transitioning more than one property of the same value type |
| Fix | Removed dead code triggering cast-align warnings in Renoir backends |
| Fix Unity | Fixed surface partitioning in Unity3D Integration after changing the scene |
| Fix | Fixed a possible crash when calling |
| Fix Unity | Add data URL requests support |
| Fix Unreal Engine | Fixed crash when capturing the backend buffer through the Inspector |
| Fix Unreal Engine | Fixed Unreal Engine 4.27 Linux and Android compilation issues |
| Fix Unreal Engine | Fixed rendering artifacts caused by wrongly calculated scissor rect |
| Fix Unreal Engine | Fixed custom effects texture memory accumulation |
Version 1.59.0
Section titled “Version 1.59.0”| Feature | Added support for Microsoft Windows ARM64 architecture (without Unity and Unreal Engine integrations) |
| Enhancement | Support for Sony PlayStation 4 SDK 12.000 |
| Enhancement | Support for Sony PlayStation 5 SDK 10.000 |
| Enhancement | Added a 9-slice animated modal sample |
| Enhancement Unreal Engine | Added logging of performance-specific warnings |
| Enhancement Unreal Engine | Improved |
| Enhancement Unreal Engine | Stopped caching the |
| Fix | Fixed elements not being re-rendered when a valid font for weight fallback becomes available |
| Fix | Fixed a failing assert when unloading fonts with invalid URLs or font descriptions |
| Fix | Fixed potential crashes caused by race conditions when using multiple views with the |
| Fix | Fixed a crash in Development config on |
| Fix | Fixed missing font resources after destroying a |
| Fix Unreal Engine | Fix crash in |
| API | Removed support for Sony PlayStation SDK 11.000 |
| API | Removed support for Sony PlayStation 5 SDK 7.000 |
Version 1.58.0
Section titled “Version 1.58.0”| Feature | Introduced a Simple Opacity feature that allows non-standard but optimized rendering of elements with CSS |
| Feature | Added support for font unloading |
| Feature | Added support for the |
| Feature | Enabled the GPU path tesselator by default |
| Enhancement | Added support for media queries that contain at-rules |
| Enhancement | Added support for boolean media query expressions |
| Enhancement | Added support for the |
| Enhancement | Unified mentions of Main/Game/DOM thread to UI thread in the native multithreading documentation |
| Enhancement | Updated Windows Redist libraries included in the package |
| Enhancement | Resource abort notifications are sent for streaming requests now as fonts can be unloaded |
| Enhancement | Refactored the default profiling library so that flushing the profiling events to disk does not block other threads in the Development configuration. There’s also an explicit FlushProfiling L1 event for clarity |
| Fix | Fixed potential memory corruption when using SVG style elements |
| Fix | Reduced the size of the tvOS libraries by stripping most of the debug information |
| Fix | Fixed a crash when using the internal profiling feature in long sessions running with L1 profiling level |
| Fix | Fixed rare cases where the background color of the html and the body won’t be reset after removing their styles |
| Fix | Fixed hover not working after toggling media rules with hover selectors |
| Fix | Fixed leaking inactive resize observers, ones that are left without elements to observe or were disconnected |
| Fix | Fixed race conditions related to loading glyphs, updating text atlas textures and managing pipeline state objects |
| Fix | Fixed running debug Linux builds on distributions with libc++ 15+ |
| Fix | Fixed a regression causing transitions to malfunction when multiple transitions are used on a single element, but only some of the transitioned properties are changed |
| Fix | Fixed a crash when delivering notifications to a disconnected MutationObserver |
Version 1.57.2
Section titled “Version 1.57.2”Version 1.57.0.2
Section titled “Version 1.57.0.2”| API | Bumped the minimum required MacOSX version to 10.13+ |
| API | Moved the |
| API | Moved the |
| API | Added |
| API | |
| API | Changed the minimum allowed text atlas texture size to 1024px |
| API Unreal Engine | Enabled the GPU tessellator for SVGs by default |
| Feature | Added support for |
| Feature | Added support for enabling external profiling systems to receive events about internal profile markers |
| Feature | Added support for Webpack HMR and React Hot Loader |
| Feature Unreal Engine | Introduced LLM Scope tags for CPU memory tracking via the LLM Tracker |
| Enhancement | Changes to the the text children of a style element now change CSS |
| Enhancement | Added the property name and stack trace when accessing objects marked as destroyed with |
| Enhancement | Added support for media query media types |
| Enhancement | Improved the performance of the Web Animation API implementation in cases when CSS animations animate more than one CSS property |
| Enhancement | Improved the performance of the the CSS animations when animating multiple properties with the same value type |
| Enhancement | Added two factor authentication sample UI |
| Enhancement | Added two factor authentication to the multiplayer UI sample |
| Enhancement | Added login and friends list sample UI |
| Enhancement Unity | Added ability to modify the |
| Enhancement Unity | Added API reference documentation for the functions exposed by the Unity3D integration |
| Enhancement Unreal Engine | Made the Unreal Editor Live Reload feature to be enabled by default |
| Enhancement Unreal Engine | Added |
| Fix | Use |
| Fix | Replaced assert with JavaScript exception when ES6 module fails to load |
| Fix | Fixed stack-overflow crash when loading ES6 modules with very deep dependency tree |
| Fix | Fixed accumulating memory when videos are hidden or unloaded |
| Fix | Fixed calling audio stream pause callback on non-playing streams |
| Fix | Fixed incorrect drawing of SVGs used as background, border or mask image |
| Fix | Fixed mutation observer assert on document disposal |
| Fix | Fixed a crash due to missing temporary allocator when triggering events from worker threads |
| Fix | Fixed Linux samples compilation, linking and post-build steps |
| Fix | Added packaging of the missing ICU libraries for Linux |
| Fix | Fixed a race condition during textures destruction |
| Fix | Fixed the anti-aliasing artifacts for scaled circles and ellipses |
| Fix | Fixed WebSocket race condition during disconnecting |
| Fix Unity | Fixed not being able to connect the Dev Tools Inspector on every second play in the Unity3D editor |
| Fix Unity | Fixed resource loading issue on MacOS and iOS caused by white space in the |
| Fix Unreal Engine | Fixed colors of textures imported with the Unreal Editor texture import menu |
| Fix Unity | Fixed propagating the input with multiple Canvas On-Screen views |
Version 1.56.0.3
Section titled “Version 1.56.0.3”| Fix | Fixed wrong layout, missing elements and potential crashes when using |
| Fix | Fixed untagged memory allocations on non-Windows platforms |
Version 1.56.0
Section titled “Version 1.56.0”| API | The |
| API Unreal Engine | Removed the deprecated option for the Cohtml HUD to respect or ignore TitleSafeZone and Letterboxing, leaving the default behavior of respecting both |
| Feature | Added support for unloading CSS |
| Feature | Added support for dynamically ordering stylesheets by moving their corresponding dom elements |
| Feature | Added support for tvOS platform (Native only) |
| Feature | Added support for |
| Feature | Added support for |
| Feature Unreal Engine | Added a default FileWriter implementation for performance markers support |
| Feature Unreal Engine | Introduced an API for JavaScript pre-compilation and pre-loading |
| Feature Unreal Engine | Added documentation on precompiled JavaScript resources usage |
| Feature | Added a mobile controls sample |
| Enhancement | Style elements take children text nodes into consideration when parsing CSS |
| Enhancement | Capped the size of the textures allocated for rendering backdrop filter |
| Enhancement | Improved the backdrop filter blur performance by allowing the blurred content to be downsampled first |
| Enhancement | Enhanced the warning messages when attempting to call an empty value/function |
| Enhancement Unity | The logs from the Unity integration code now respect the logging severity of cohtml |
| Enhancement Unreal Engine | Changed the Cohtml SDK configuration to match the UnrealTargetConfiguration unless there is an override |
| Enhancement Unreal Engine | Expanded the SDK configuration documentation, explaining Cohtml Development configuration in a greater detail |
| Enhancement Unreal Engine | Added Cohtml texture memory stats via the Unreal Stats system |
| Fix | Fixed a failing assert in debug configuration related to overflow visual AABB caused by floating point precision errors |
| Fix | Fixed a failing assert in debug configuration when using animated GIFs |
| Fix | Fixed a GC crash related to mouse events |
| Fix | Fixed a crash when adding attributes in the inspector |
| Fix | Fixed setProperty throwing type errors when used with non-string arguments |
| Fix | Fixed Renoir for Android, Linux and iOS to exclude debug checks in release configuration |
| Fix | Stop triggering attributeChangedCallback for unobserved attributes on custom element registration |
| Fix | Fixed custom effects rendering when multiple filters are chained |
| Fix Unreal Engine | Fix CohtmlMaterial HLSL compilation for SM6 |
| Fix Unreal Engine | Made the SciFi sample to work with the latest version of the Prysm exporter |
Version 1.55.2
Section titled “Version 1.55.2”| Enhancement Unreal Engine | Enhanced handling of render target RHI textures |
| Fix | Fixed a debug assert failing when setting virtual resolution with async style-solving |
| Fix | Fixed a regression caused by async style solving that caused a delay for receiving the latest layout data in JS |
| Fix | Fixed the |
| Fix | Fixed a crash caused by a race condition with text atlases when using multiple views with the |
| Fix Unreal Engine | Fixed a crash or potentially invalid data in uniform buffers with Vulkan RHI |
| Fix Unreal Engine | Fixed crashes due to invalidated render target RHI textures |
| Fix Unreal Engine | Fixed user textures stats reporting for Unreal Engine 5 |
Version 1.55.0
Section titled “Version 1.55.0”| Feature | Moved style resolving off the Advance call into a task. This will allow parallel style resolving of multiple views. Until completion of the style task, all View APIs that modify the DOM will block to prevent race issues. The block will be removed when the style resolving is further enhanced to become asynchronous and thread-safe. If you experience any issue due to the change, you can use the |
| Feature | Allow precise updates for collections inside data-binding models |
| Enhancement | Allow |
| Enhancement | Enhanced the font-fit feature with the ability to explicitly set minimum and maximum resulting font size |
| Enhancement | Enhanced the low-level GPU memory info API with extended information about the page resources and their usage |
| Enhancement Unreal Engine | Enhanced the Editor texture statistics reporting to include all GPU resource types |
| Enhancement | Added optional |
| Enhancement Unity | Added a new ‘JavaScript Event Binding’ sample to the Unity3D UPM package |
| Enhancement Unity | Improved the Unity3D Integration and Plugin API Reference documentation |
| Enhancement Unity | Improved the ‘JavaScript Binding’ page in the Unity3D documentation |
| Enhancement Unity | Added preloaded images support for the |
| Enhancement Unity | Added support for Unity |
| Enhancement | Added Development configuration for samples for Microsoft Windows and game consoles |
| Enhancement | Optimize drawing of duplicate command buffers |
| Enhancement | Added a sample to showcase how to use emojis in a chat input |
| Enhancement | Use a single MSAA texture for the GPU tessellation |
| Enhancement | Multiple improvements of GPU tessellator (Lower CB usage, better batching, fixed 32-bit indexing, single atlas resolve) |
| API | Animation end events are fired 1 frame later now, due to animations being ticked asynchronously on the thread executing styling work. |
| API | Compositor API is now called on the thread executing styling work instead on the DOM thread during the Advance call. |
| API | Synchronous resource requests can now be invoked from the thread executing styling work as well and not only from the thread calling Advance. |
| API | Abort notifications can now come from the thread executing styling work. |
| API | Clients can force resource requests on the Advance calling thread via a view developer option |
| API | Deprecated |
| API | Removed the deprecated |
| API | Added a shorthand CSS property |
| API Unity | Deprecated the |
| API Unity | Added |
| API | Removed deprecated constructors for the Renoir rendering backends |
| Fix | Fixed crash when the |
| Fix Unity | Fixed a crash that occurred when typing a backtick key while using the Input System |
| Fix | Fixed potentially wrong string representation of when using |
| Fix Unity | Fixed audio synchronization warnings when quickly playing and stopping a video |
| Fix Unity | Fixed an issue with accessing the device model and causing an infinite recursion during Unity initialization |
| Fix | Video decoders now schedule tasks through their owning system instead of the last created one. This was causing a crash when playing a video in another system and the last created one was destroyed. |
| Fix Unity | Fixed support for multiple video audio streams in a |
| Fix Unity | Fixed input errors when launching the Unity 3D integration sample on console or mobile platforms. |
| Fix | Fixed errors caused by sending inspector data to closed inspector sessions |
| Fix | Fixed a crash when calling |
| Fix Unity | Fixed hang on Xbox with Unity3D |
| Fix | Fixed a crash when the transform attribute is removed from an SVG element |
| Fix | Fixed a crash when using pseudo elements and absolutely positioned children in |
| Fix Unity | Fixed materials in Unity samples to transition correctly from standard to URP shaders using the Render Pipeline Converter in a URP project |
| Fix | Fixed crash when the cache for command processors is used |
| Fix | Fixed GPU tessellator wrong calculation of bounding box |
| Fix | Fixed batching of paths rendered with CPU tessellator |
| Fix | Fixed negative scaling handling in GPU tessellator |
| Fix Unreal Engine | Fixed assert in |
| Fix Unreal Engine | Fixed map tiling in the Starter Guide sample |
| Fix Unreal Engine | Fixed a stale URL value inside |
| Fix | Fixed potential crashes due to integer underflow when calculating text layout |
| Fix | Fixed the native dropdown sample and resolved a warning when choosing options |
| Fix | Fixed potential crash during GC when using the CSSOM API |
Version 1.54.0
Section titled “Version 1.54.0”| API Unreal Engine | Replaced Debug binaries with Development in Unreal Engine installers and archives |
| API Unreal Engine | Updated Unreal packages to PlayStation 4 SDK 11.500 |
| API Unreal Engine | Updated Unreal packages to PlayStation 5 SDK 9.000 |
| API Unity | Updated Unity packages for PlayStation 5 to SDK 9.000 |
| API Unity | Updated Unity packages for PlayStation 4 to SDK 11.500 |
| API | Introduced a new API for profiling the internals of Prysm |
| Feature | Added support for |
| Feature | Introduced a new development configuration, intended to be used during game UI development. |
| Enhancement Unreal Engine | Added support for Unreal Engine 5.4 |
| Enhancement | Added support for Microsoft GDK 2023 October Update 3 |
| Enhancement | Added support for Sony PlayStation 5 SDK 9.000 |
| Enhancement | Added support for Sony PlayStation 4 SDK 11.500 |
| Enhancement | SVG specific styles can now be set via the JS DOM API |
| Enhancement Unity | Removed the deprecated |
| Enhancement Unreal Engine | Deprecated HUD Respect Safe Zone and Respect Letterboxing settings, leaving them to be always Enabled, until removed |
| Enhancement Unreal Engine | Updated RHI |
| Enhancement | Added a sample demonstrating how to create charts using D3.js |
| Fix Unreal Engine | Fixed User Background resize for multiple World contexts |
| Fix Unreal Engine | Fixed shader compilation for Metal in Unreal Engine 5.4 |
| Fix | Fixed missing texture assertions |
| Fix Unity | Fixed flickering issue when using Unity NGGC backend |
| Fix Unity | Fixed rendering artefacts with Unity NGGC backend on PS5 |
| Fix | Fixed support for Microsoft Windows 7 without Service Pack 3 |
| Fix | Fixed a crash when destroying and reloading views with the inspector attached |
| Fix Unity | Fixed Unity crash on Windows Win32 builds with Direct X 12 |
| Fix | Fixed passing invalid command to the backend if image is missing |
| Fix | Fixed scissor bounds for the GPU tesselation implementation |
| Fix | Fixed leaking event handlers when using the |
Version 1.53.0
Section titled “Version 1.53.0”| API | Added |
| API | Altered |
| API | Added the |
| Feature | Added support for tessellating SVGs on the GPU |
| Enhancement | Added support for HTML preloading for |
| Enhancement | Added documentation for the |
| Enhancement | Added support for the |
| Enhancement Unity | Updated quick start documentation with examples of how to add a view to the scene |
| Enhancement Unity | Added a step by step guide for localization |
| Enhancement | Added API to retrieve GPU memory usage information |
| Enhancement Unity | Improved input handling for |
| Enhancement | Added support in desktop renderers (DirectX 11, DirectX12, OpenGL, Vulkan) for preloading mipmap textures |
| Enhancement Unity | The Unity package uses the Sony PlayStation 5 SDK 8.0 |
| Enhancement Unity | The Unity package uses the Sony PlayStation 4 SDK 11.0 |
| Enhancement | Added documentation for the canvas API support |
| Enhancement | Added origin information to warnings and errors when it is available |
| Fix Unity | Fixed setting the HTTP response headers from |
| Fix Unreal Engine | Fixed plugin loading issue on Linux due to a missing renoir library dependency |
| Fix Unity | Fixed crash on Xbox in HDRP mode due to synchronization issue |
| Fix | Fixed ascent and descent for preloaded fonts |
| Fix | Fixed a crash when using the API for custom media features on different threads |
| Fix | Fixed setting the prototype on custom elements getting upgraded when their class is defined |
| Fix | Fixed |
| Fix | Fixed |
| Fix Unity | Fixed a crash on exit in Unity3D editor when a WebSocket connection is still active |
| Fix | Fixed wrongly transitioned properties for discrete animations |
| Fix | Fixed |
| Fix | Fixed a crash when using SVG as background-image on an element with transform |
| Fix | Fixed transitions with negative delay incorrectly firing transition events |
| Fix | Fixed a crash if a texture for drawing is missing |
| Fix | Fixed rendering of textures in samples with OpenGL when filtering is set to |
| Fix | Fixed drawing of simple inline SVGs in |
| Fix | Fixed image resources not getting unloaded after reducing the background images count |
| Fix | Fixed artifacts when using |
| Fix | Fixed a leak when using transitions which could have caused crashes after garbage collection |
| Fix | Fixed a wrongly triggered debug assert when detaching elements with pending images |
| Fix | Fixed a crash when using |
Version 1.52.3.1
Section titled “Version 1.52.3.1”| Fix | Fixed possible race condition in scene’s gpu memory info |
| Fix | Fixed |
| Fix | Fixed incorrect filter rendering caused by simple sublayers |
| Fix Unreal Engine | Fixed assert when playing video in UMG and closing application |
| Fix | Fixed compilation errors in case |
| Fix | Fixed undefined |
| Fix | Fixed a crash encountered when batching rendering commands with a missing texture |
Version 1.52.1
Section titled “Version 1.52.1”| API | Removed support for the experimental custom elements V0 API |
| Feature | Added support for full-color bitmap fonts |
| Feature Unity | Added support for the native plug-in profiler in Unity |
| Feature | Allowed Precise Data Binding Updates of data-binding models |
| Enhancement |
|
| Enhancement | Enhance text rendering and luminance smoothing in different color spaces |
| Enhancement | Apply gradient dithering evenly in linear color space |
| Enhancement Unity | Added UI Surface Partitioning support when using CohtmlView inside |
| Enhancement Unity | Added Backdrop Filter when using CohtmlView inside |
| Enhancement Unity | Added default gamepad mapping for common gamepad models for Unity |
| Enhancement Unreal Engine | Improve the reporting of used textures inside the UI |
| Enhancement Unreal Engine | Added support for Surface partitioning feature in Concurrent Advance mode |
| Enhancement Unreal Engine | Added support for Custom Effects feature in Concurrent Advance mode |
| Fix | Fixed string values for CSS properties for border, margins and padding |
| Fix | Fixed wrongly reported scroll values in some cases |
| Fix | Fixed border image property equality comparison bug caused by uninitialized memory |
| Fix | Fixed calling attribute related JavaScript handlers before the attribute on the element is updated |
| Fix | Fixed infinite recursion when setting attributes to their current values in |
| Fix | Fixed a crash when using SVG border images with zero sized border sides |
| Fix | Fixed a case with a wrong draw order of SVG elements after using an |
| Fix | Fixed a crash when an |
| Fix | Fixed wrongly removing the element from the DOM when an |
| Fix | Fixed a crash when descriptors for constant buffers are not enough for Vulkan |
| Fix | Fixed bleeding of big glyphs generated with SDF on the CPU algorithm |
| Fix Unity | Fixed the import/compilation warnings caused by obsolete |
| Fix Unity | Fixed loading of plugin libraries for Unity on Linux |
| Fix | Fixed a crash when making an inspector connection with Visual Studio Code |
| Fix | Fixed Address Sanitizer error on Sony PlayStation when doing |
| Fix | Fixed using |
| Fix Unreal Engine | Fixed rendering artifacts on Sony PlayStation 5 |
Version 1.51.2
Section titled “Version 1.51.2”| Fix | Fixed crash when using |
| Fix | Fixed crash when registering model with subobjects in already loaded page |
| Fix Unreal Engine | Fixed race condition when discarding invalid frame states of |
| Fix Unreal Engine | Fixed crash when the virtual keyboard tries to use missing attributes of |
| Fix Unreal Engine | Fixed crash when destroying the view |
| Fix Unreal Engine | Fixed setting response headers for HTTP requests |
| Fix Unreal Engine | Fixed crash on exit when cancelling pending HTTP requests |
Version 1.51.0
Section titled “Version 1.51.0”| API | Removed support for Arm architecture on the Microsoft Universal Windows Platform |
| API Unity | Added a WebSocket state changed event. |
| API Unity | Added a WebSocket state changed callback |
| Feature | Added support the CSS Typed Object Model |
| Feature | Added support for custom media features |
| Feature Unity | Added support for NGGC for Sony PlayStation 5 |
| Feature Unreal Engine | Introduced a way to run update the views on a worker thread |
| Enhancement | Added support for animating |
| Enhancement | Added a warning when setting properties without units |
| Enhancement | Improved the inspector performance recording capture by allowing the selection of subsystem to be traced and a giving control over the amount of traced markers through a trace level selection |
| Enhancement Unity | Improved support for |
| Enhancement Unity | Added support for adding |
| Fix | Fixed a memory leak when animating SVG attribute values |
| Fix | Fixed a floating point precision error causing texts to wrap spuriously |
| Fix | Fixed issuing out of bounds HTTP requests for videos and added documentation about handling end of stream |
| Fix | Fixed Touch Up/End event being fired with the wrong target element in some cases |
| Fix | Fixed |
| Fix | Fixed an incorrect message about unsupported box-sizing CSS property with value border-box |
| Fix | Added a missing changelog entry for flex longhand support in version 1.48 |
| Fix | Fixed a crash when SVG elements are appended to the DOM in event handling functions |
| Fix | Fixed |
| Fix | Fixed generating wrong URLs for the views in the inspector with multiple views |
| Fix | Fixed a crash during the mouse event firing when GC collects elements that are part of the event path |
| Fix | Fixed multiple crashes and undefined behaviors related to objects being wrongly collected by GC |
| Fix | Fixed the |
| Fix | Fixed custom elements not getting upgraded when define is called after creating the element |
| Fix | Fixed an infinite recursion with |
| Fix | Fixed aliasing on the border edges of transformed elements |
| Fix | Fixed applying rules from |
| Fix | Fixed setting |
| Fix | Fixed parsing HTML comments properly with |
| Fix | Fixed |
| Fix | Fixed an uninitialized value for angle in linear gradients which was causing the comparison of two gradients to always return different |
| Fix | Fixed Player crashing on Mac OS X when allocating executable memory for V8 |
| Fix | Fixed support for Mac OS 10.12 in the samples |
| Fix | Fixed HDR sample being darker in evaluation packages |
| Fix Unity | Worked around Unity restriction to let textures be reused with different sampler states in the same frame for all graphics APIs except OpenGL |
| Fix Unity | Removing the mouse event skip logic causing lag in the Cohtml API |
| Fix Unreal Engine | Fix path rendering with |
| Fix Unreal Engine | Fix crash on Android with GLES3 in UE |
Version 1.50.0
Section titled “Version 1.50.0”| API | Regenerated the license keys used for initialization of the library |
| API | The |
| API | Samples for Microsoft UWP and GDK platforms now use the Microsoft Visual Studio 2022 toolset |
| API | Prebuilt Renoir rendering backends now use Microsoft Windows SDK 10 and the Microsoft Visual Studio 2022 toolset |
| API Unity | Deprecated |
| API | Removed the PreferCPUWorkload option from backend’s capabilities |
| API | Removed the GLES2 support |
| API | Removed the Shape Morphing support |
| API | Changed rendering backend’s capabilities to fit for the new command batching flow. Read more in the migration guide. |
| API | Changed shaders’ vertex layout to fit for the new command batching flow. Read more in the migration guide. |
| API | Added new commands in the rendering backend which need to be handled for the new command batching flow. Read more in the migration guide. |
| API | Changed constant buffers in the rendering backends to fit for the new command batching flow. Read more in the migration guide. |
| API | Removed support for Microsoft XDK (aka Durango) SDK for Microsoft Xbox One consoles |
| Feature | Added support for |
| Feature | Added support for capturing a screenshot in the inspector and through the dev tools protocol |
| Feature | Enhanced batching of the rendering commands which combines the CPU and GPU workload and improves the efficiency. Check the migration guide. |
| Feature |
|
| Feature | The Player application can now receive touch events on Microsoft Windows |
| Enhancement | Added resize logic for all samples using UI Composition, Surface Partitioning, and Backdrop Filter features |
| Enhancement | Added support for |
| Enhancement | Added support for |
| Enhancement | Added partial support for SVG transform, width, height, and viewbox JavaScript properties |
| Enhancement Unreal Engine | Improved the sample hub UI |
| Enhancement | Updated FreeType to version 2.13.2 |
| Enhancement | Added GPU memory tracking to profiling output |
| Enhancement | Optimized performance of |
| Enhancement | Added support for sending input events to composited surfaces |
| Fix | Fixed a deadlock when scratch textures caches are being cleared |
| Fix | Fixed incorrect marking of scratch textures as not usable |
| Fix | Fixed a crash when try to read an invalid FreeType face |
| Fix | Fixed incorrect SVG clipping with |
| Fix | Fixed positioning of nested elements when using |
| Fix | Fixed mouse events not firing correctly for |
| Fix Unity | Fixed rendering problems with OpenGL and C# Backend in Unity |
| Fix | Fixed leaking transformations when scaling SVGs to sizes smaller than 1 pixel |
| Fix | Fixed a crash in the Player with HTTP requests on quit |
| Fix | Fixed text nodes being 1 pixel larger then necessary that led to incorrect positioning when using right alignment |
| Fix | Fixed missing texture when an image is used for only one frame |
| Fix Unity | Fixed the errors encountered when the Samples were removed from the package |
| Fix Unity | Fixed the backdrop filter texture format type in HDR mode |
| Fix | Fixed |
| Fix Unity | Fixed the |
| Fix | Passing an empty string to |
| Fix | Fixed cases where event listeners are not fired when other unrelated event listeners are removed |
| Fix | Fixed excessive character vertical offset with certain fonts |
| Fix | Fixed a crash caused by improper use of GIFs as background images |
| Fix | Fixed a warning when setting the animation shorthand property to none |
| Fix Unreal Engine | Fixed safe zone and letter boxing on the Apple iPhone devices |
| Fix Unreal Engine | Removed forgotten experimental mentions from the documentation regarding Android and iOS platforms |
| Fix Unreal Engine | Address accumulation of frames for painting when UMG Widgets are hidden or minimized |
| Fix Unreal Engine | Fixed PlayerOverrides build issues |
| Fix Unreal Engine | Fixed UE package unzipping issue with the native Windows File Explorer manager |
| Fix | Fixed composition with custom effects |
| Fix Unity | Fixed crashes when rapidly starting and stopping the Player in the Unity3D Editor |
| Fix Unity | Fixed order of touch events in Unity3D when Input Manager is used |
| Fix | Removed forgotten experimental mentions from the documentation regarding inline layout, complex text, and SDF on GPU features |
| Fix Unity | Removed forgotten experimental mentions from the documentation regarding the C# backend feature |
| Fix | Fixed a bug with upgrading cloned custom elements that prevented their lifetime callbacks to be invoked |
| Fix | The inspector now shows the views for inspection only when they have a valid document loaded |
| Fix | Fixed CSS calc functions failing when running with locale settings where the decimal symbol is not a dot |
| Fix | Fixed a crash when clearing SVG surfaces caches |
| Fix | Fixed invoking newly added event listeners during the dispatching of the event |
Version 1.49.0
Section titled “Version 1.49.0”| Enhancement | Improved inline RTL text positioning and punctuation wrapping |
| Enhancement | Made the inspector show an empty style object for elements without inline styles that can be used to easily add new styles |
| Enhancement | Added |
| Enhancement | Unity plugin is now compiled against .Net Standard 2.0 to ensure cross-platform .Net profile support |
| Enhancement | Adjusted the Switch sample renderer to work with the latest (18.0.1) SDK |
| Enhancement | Trimmed trailing zeros from stringified property values |
| Enhancement | Improved the warning message when using fonts that weren’t loaded |
| Enhancement Unreal Engine | Add abort resource request handling |
| Fix | Fixed RTL text being drawn a bit to the right making it stick out of its element bounding box |
| Fix | Fixed font-fit not working correctly when using preserve whitespace mode |
| Fix | Fixed wrongly rendered newline characters as spaces when using preserve whitespace mode |
| Fix | Fixed visual artifacts left over from drawing squares while the font isn’t loaded for complex text |
| Fix | Fixed wrongly positioned background-color when using |
| Fix | Fixed words drawn in incorrect order when displaying right-to-left languages |
| Fix | Fixed positioning of nested elements after wrapped text in |
| Fix | Fixed RTL direction in |
| Fix | Fixed incorrect punctuation wrapping with |
| Fix | Fixed text wrap when using a mix of languages and punctuation |
| Fix | Fixed negative letter-spacing sometimes cutting text |
| Fix | Fixed asserts during GC tracing |
| Fix | Fixed support for paths with spaces in |
| Fix Unreal Engine | Remove unused |
| Fix Unreal Engine | Procedural sound replay warning |
| API | Trimmed trailing zeros from stringified property values. This may break code comparing style values as strings |
Version 1.48.0
Section titled “Version 1.48.0”| Feature | Update Nintendo Switch SDK to 16.2 |
| Feature | Support PlayStation 4 SDK 11.000 |
| Feature | Support PlayStation 5 SDK 8.000 |
| Enhancement | Implemented a faster memory allocator for PlayStation 5 samples |
| Enhancement | Optimized performance of SVG images used as |
| Enhancement | Added support for more font weights - |
| Enhancement | Provide the |
| Enhancement | Documented the lifetime of media resources used in video elements |
| Enhancement | Documented GIF image format support |
| Enhancement Unity | Removed the need for different libraries for the different scripting backends and .Net versions |
| Enhancement | Added support for flex longhand |
| Fix | Fixed crash when the |
| Fix | Fixed incorrect size of compositor textures when |
| Fix | Fixed rendering discrepancies on GLES3 caused by floating precision problems |
| Fix | Fixed unnecessary redrawing of the area of hidden elements that have a backdrop filter applied |
| Fix | Fixed composited elements with |
| Fix | Fixed elements with custom effects with |
| Fix | Fixed leaking surface partitioning data for elements with |
| Fix | Fixed redrawing of nested compositions |
| Fix | Fixed Player not opening on Mac due to missing |
| Fix | Ensured the garbage collector is triggered often enough to collect video related memory |
| Fix | Fixed a crash when the DOM is modified in the event handlers of mouse input events |
| Fix | Fixed a crash when there is more than one event handler attached to an element |
| Fix | Fixed a crash from improper use of GIF images as background images |
| Fix | Fixed pseudo elements background disappearing after content is changed |
| Fix Unity | Fixed repeating certain touch events when InputManager is used on mobile devices |
| Fix | Fixed cases in which positioned elements caused incorrectly calculated scroll size |
| Fix Unreal Engine | Fixed a crash when cancelling resource requests |
| Fix Unreal Engine | Fixed Microsoft Windows and Xbox builds when unity builds are used |
| Fix Unreal Engine | Fixed a crash when destroying the View Wrapper’s texture |
| Fix Unreal Engine | Fixed Unreal Editor hang when using surface partitioning with UMG |
| Fix Unreal Engine | Skip issuing a warning for missing viewport if the game world is tearing down |
| Fix Unreal Engine | Fixed a crash on GDK platforms when Unreal memory trace is enabled |
| API Unity | Removed the |
Version 1.47.0
Section titled “Version 1.47.0”| Feature | Implemented |
| Enhancement | Image-rendering support for border images |
| Enhancement | Added support for copy and paste in the Elements tab of the Inspector |
| Enhancement | HTML preloading now ignores query parameters from URLs when storing and serving HTML files from the cache |
| Enhancement | Added support for the new |
| Enhancement | The maximum number of initiators for Recalculate Styles/Layout events defaults to 0 now. That’s because getting the initiators can skew the Inspector performance profiling results. Clients can set the maximum count manually by using the JavaScript |
| Enhancement | Added partial support for keyframe rules to the |
| Enhancement | The Player uses the system |
| Enhancement | Added documentation how mouse related behavior works when the mouse is idle |
| Enhancement Unity | Add |
| Enhancement Unity | Add |
| Enhancement Unity | Add |
| Enhancement Unity | Added support for binary messages in WebSocket implementation |
| Enhancement Unreal Engine | Removed legacy code for controlling |
| Enhancement Unreal Engine | Added |
| Enhancement Unreal Engine | Added |
| Enhancement Unreal Engine | Added |
| Fix | Fixed broken surface partitioning in evaluation builds |
| Fix | Fixed accumulating memory caused by |
| Fix | Fixed assert when trying to draw background image on 0 background size |
| Fix | Fixed assert for SVG properties passed to |
| Fix | Fixed parser errors due to HTML tags in CSS comments |
| Fix | Fixed infinite recursion when specifying default font family as one of the generic font family keywords |
| Fix | Fixed |
| Fix Unity | Fixed crash when domain reloading is disabled in Unity |
| Fix Unity | Fixed crash on Xbox when the project quality is set to ‘Very Low''' |
| Fix Unity | Fixed horizontal scroll touch gestures |
| Fix Unity | Fixed losing focus on input fields on platforms with virtual keyboards |
| Fix Unity | Ensure the proper disposal of the Library params object |
| Fix Unreal Engine | Added low level guard to prevent hitting a potential assert when loading Atlas textures |
Version 1.46.0.1
Section titled “Version 1.46.0.1”| Feature Unity | Added IME support for Japanese, Korean and Chinese |
| Feature Unity | Exposed the |
| Feature Unreal Engine | Support for Unreal Engine 5.3.1 |
| Enhancement | Allow invalidating of the textures used to draw SVGs. This allows user code to force Cohtml to recreate the textures in the proper texture format if the user render target has changed its format. |
| Enhancement | Enabled V8 pointer compression on Xbox family of game consoles |
| Enhancement | Added known issues to the compositor documentation |
| Fix | Fixed wrongly triggered layout when changing properties on hidden elements |
| Fix | Fixed making POST XmlHTTPRequests in the Player on Mac OS 13.5 |
| Fix Unity | Fixed switching Unity scripting backend when switching to consoles |
| Fix Unity | Fixed Unity editor crash on script recompilation. |
| Fix | Fixed wrongly calculated font size when using nested elements with |
| Fix Unity | Added |
| Fix Unity | Blur the currently focused element in the UI when Unity player loses focus |
| Fix Unity | Fixed UTF-8 handling for WebSocket text messages |
| Fix | Fixed a crash when removing |
| Fix | Fixed potential crashes and missing filters when using filters with no effect |
| Fix | Fixed the inspector stalling the thread when errors occur |
| Fix | Fixed button element not being able to have pseudo elements |
| Fix | Fixed false positive unregistered font warnings |
| Fix | Fixed a crash when view reload is called before loading an URL and attaching it to the inspector |
| Fix | Fixed CSS adjacent sibling selector not working if there is a comment between the elements |
| Fix | Fixed |
| Fix | Fixed a crash when destroying the view renderer during layout |
| Fix Unreal Engine | Added missing Plugin includes and fixed Include-What-You-Use compliance |
| Fix Unreal Engine | Fixed the the custom effect sample on Switch |
| Fix Unreal Engine | Fixed the Unreal Engine installer failure when no ‘clean” option is selected’ |
Version 1.45.0
Section titled “Version 1.45.0”| Feature | Added support for SVG border image |
| Feature | Implemented the |
| Feature Unreal Engine | Support for Unreal Engine 5.3.0 Preview 1 |
| Feature | Added support for Lottie animations |
| Feature | Added support for conic gradients used as |
| Enhancement | Changed PlayStation 5 Renoir backend to use compute shaders for clearing render targets |
| Enhancement Unreal Engine | Reworked the CoherentSample levels showcasing the plugins features |
| Enhancement Unreal Engine | Reworked CoherentSample and the plugins includes so they can be compiled without |
| Enhancement Unreal Engine | Refactored Content Browser and Raw Image Importer tool extension code |
| Enhancement Unreal Engine | Simplified the |
| Fix | Fixed stylesheets not being applied in the frame in which the load event is fired |
| Fix | Fixed link elements not applying styles when changing the href attribute |
| Fix | Fixed race condition in resource |
| Fix | Fixed wrong clipping which was causing missing elements |
| Fix | Fixed crash during View initialization on iOS |
| Fix | Fixed the |
| Fix | Fixed texts from sometimes disappearing when parent elements change display |
| Fix | Fixed redrawing SVG shadows |
| Fix | Fixed a crash when using animations and transitions with negative duration |
| Fix | Fixed |
| Fix | Fixed |
| Fix Unreal Engine | Fixed evaluation copy installer fail when Engine installation is selected |
| Fix Unreal Engine | Fixed plugins platform defines for platforms XboxOne, XboxOneGDK, and XB1 configurations |
| Fix Unreal Engine | Fixed crash during |
| Fix Unreal Engine | Removed backward compatibility for pre-1.14.3 atlas metadata files |
| Fix | Fixed potential creation of large textures for composited surfaces. This could be hit if using overflow:scroll on a composited container |
Version 1.44.0
Section titled “Version 1.44.0”| Feature | Replaced ChakraCore with V8 for Universal Windows Platform for x86 |
| Feature | Added |
| Feature Unity | Added support screen overlays with Unity UI Canvas |
| Feature Unreal Engine | Added option for enabling the Linear Space Rendering Pipeline, enabling the support for textures in Linear |
| Feature Unreal Engine | Made the plugin code compliant with Include-What-You-Use |
| Enhancement | Setup memory allocators for the ICU library |
| Enhancement | Allowed changes to the |
| Enhancement Unity | Added events for Library and |
| Enhancement | Allowed using different samples for different texture slots in shaders |
| Fix | Fixed lack of transitions with |
| Fix | Fixed crash when drawing canvas without commands |
| Fix | Fixed visual artifacts of SVG paths with a stroke that is not a color |
| Fix | Fixed a V8 crash on secondary Library initialization |
| Fix | Fixed negative |
| Fix Unity | Fixed allocating a new C# UnityPlugin instance on each access |
| Fix Unity | Fixed possible artifacts caused by scratch texture reuse |
| Fix Unity | Fixed crash Metal backend when there are multiple cameras with views |
| Fix Unity | Fixed Unity Mac bundle package naming |
| Fix Unity | Fixed running the Player with the scripts |
| Fix Unreal Engine | Fixed crash when making profile capture with screenshots enabled for DirectX12 |
| Fix Unreal Engine | Removed mixed (game and engine) plugin installation |
Version 1.43.0.1
Section titled “Version 1.43.0.1”| Feature | Added support for the HTML |
| Enhancement | Added |
| Enhancement | Added compile time checks to stop creating data-binding models from unsupported types |
| Enhancement | Made |
| Enhancement | Stopped creating layers for color matrix or blur filters that do not result in visual changes |
| Enhancement Unreal Engine | Added compile time checks to stop creating data-binding models from unsupported types |
| Enhancement Unreal Engine | Improved resource handling of streaming textures |
| Enhancement Unreal Engine | Prevent registering of BluePrint struct models received by copy |
| Enhancement Unreal Engine | Moved update of the resource loading in the Game thread in a regular tick |
| Enhancement Unreal Engine | Made the plugin installer report failures during installation |
| Enhancement Unreal Engine | Transitioned the CoherentSample project to the Enhanced Input system |
| Fix | Fixed |
| Fix Unreal Engine | Fixed first sampler being forced on all sampler slots for Vulkan |
| Fix | Fixed a regression with |
| Fix | Fixed inline RTL text being displayed in the wrong order for right-to-left languages |
| Fix | Fixed a case where a multiline text may get truncated at the bottom |
| Fix | Fixed crash when using multiline bidirectional text |
| Fix Unity | Added automatic switching between Mono and IL2CPP scripting backends |
| Fix Unity | Added automatic detection for HDRP and URP rendering pipelines |
| Fix Unity | Fixed WebSockets not being able to connect with slower networks |
| Fix | Fixed possibly skipping notifications for Layout tasks with task based concurrency mode |
| Fix Unity | Resolved the Unity3D integration samples CSS HTML and JS warnings. |
| Fix Unity | Fixed rendering artifacts on iOS |
Version 1.42.0.0
Section titled “Version 1.42.0.0”| Feature | Introduce support for linear rendering pipeline where the rendering library will linearize all color and will use SRGB texture as intermediate rendering targets |
| Feature | Added support for the svg image element |
| Feature | Replaced JavaScriptCore with V8 for UWP on x64 |
| Feature | Enabled PGO optimizations for GDK Xbox platforms |
| Feature | Enabled PGO optimizations on PlayStation 5 |
| Feature Unreal Engine | Integrated Surface Partitioning for |
| Feature Unity | Integrated mimalloc inside UnityPlugin for Windows and MacOSX |
| Feature Unreal Engine | Added support for Unreal Engine 5.2 |
| Enhancement | Added mimalloc allocator as a module for Microsoft Windows and Mac OS X |
| Enhancement | Added the mimalloc allocator in the Player, Launcher, and Samples on Windows and MacOSX |
| Enhancement Unity | Add the PlayerOverrides project in the Player folder. |
| Enhancement Unity | Hide the entire Player folder from Unity3D editor package import process. |
| Enhancement | Non-inline SVGs are now shared between DOM elements in order to avoid repainting for each individual element |
| Enhancement | Support for Microsoft GDK version 2023.03 |
| Enhancement | Support for Sony PlayStation 4 SDK version 10.500 |
| Enhancement | Support for Sony PlayStation 5 SDK version 7.000 |
| Enhancement Unreal Engine | Added control over view update for UMG widgets |
| Enhancement Unreal Engine | Guarded a crash when wrong argument type is being used when calling from Blueprints Update or Remove data model from struct |
| Fix | Fixed SVG gradients to update when related properties change |
| Fix | Fixed SVG clipping to not leave artefacts when clipped elements have 0 scale |
| Fix | Fixed SVG clip paths to hide elements that are outside their AABB |
| Fix | Fixed crash when dispatching transition and animation events |
| Fix | Fixed a false-positive warning for ‘Model: X is not registered yet” when using data-bind-for’ |
| Fix | Fixed a bug where some SVG might disappear when their parent element has an opacity other than 1.0 |
| Fix | Fixed text-overflow: ellipsis not showing text even when there is enough space |
| Fix | Fixed memory leak when navigating between pages with custom elements |
| Fix | Fixed innerHTML reordering comments and text |
| Fix | Fixed potential wrong value in constant buffer passed to shader, usually resulting in white textures in the UI |
| Fix | Make pseudo elements with a width of |
| Fix | Fixed wrongly requested 4GB allocation when using cohinline with font-fit shrink on very small containers |
| Fix Unreal Engine | Add extra check if texture streaming is enabled when loading textures |
| Fix Unreal Engine | Add missing |
| Fix | Fixed regression in the graphics clipping state, causing disappearing parts of elements |
Version 1.40.0
Section titled “Version 1.40.0”| Feature | Track all V8 memory allocations |
| Feature | Added ability to extract GPU memory information |
| Feature Unreal Engine | Add Bink Video Player sample map |
| Enhancement | Added support for |
| Enhancement | Add the ability to control the rendering library caches in the inspector |
| Enhancement | Start shipping the shaders’ source code for the Sony PlayStation 4 and Sony PlayStation 5 platforms. |
| Enhancement Unity | Support for the |
| Enhancement Unreal Engine | Document how to order data binding and |
| Fix | Fixed a potential crash after a view is destroyed with in-flight resource requests |
| Fix | Fix a bug with backdrop-filter where the filtered content will continue to be displayed, even if the element has |
| Fix | Fix carriage return being wrongly rendered with some fonts |
| Fix | Fixed text alignment with cohinline |
| Fix | Fixed upgrading |
| Fix | Fixed parsing of |
| Fix | Fixed text sometimes failing to redraw with text-align |
| Fix | Fixed memory accumulation when using elements with unresolved font |
| Fix | Fix a potential double user texture wrap in the backend for the use background texture |
| Fix Unity | Package all uiresources library files. |
| Fix Unreal Engine | Fixed non-unity build compilation errors |
| Fix Unreal Engine | Fix a DPI scaling of widgets when they are constructed without |
| Fix Unreal Engine |
|
Version 1.39.0
Section titled “Version 1.39.0”| Feature | Unloading of background/border/mask images of elements hidden with |
| Feature | Added a library option to expose a JavaScript API that can force garbage collection |
| Feature Unreal Engine | Added integration with the Unreal Engine 5 Text-To-Speech plugin |
| Feature Unreal Engine | Delegate for |
| Feature Unity | Use C# controlled threads for layout and resource tasks |
| Feature | Added full page capture to serialize a loaded page for debugging purposes |
| Enhancement | Improved speed of creating custom elements |
| Enhancement | Optimized string storage of script contents |
| Enhancement | Changed |
| Enhancement | Reduced memory taken by layout styles |
| Enhancement | Decreased memory consumption for SDF glyphs |
| Enhancement | Remove additional memory allocation for texture update |
| Enhancement | Allow elements with coh-composition-id to be rendered offscreen and not rerendered when only their transformation is changed |
| Enhancement | Add a AltGr key support and AltGraph modifier to EventModifierState |
| Enhancement | Added the |
| Enhancement | Implement support for nested |
| Enhancement | Enhance stroke rounded rects to use geometry instead of paths |
| Enhancement Unreal Engine | Removed usages of |
| Enhancement Unreal Engine | Add AltGr key input handling |
| Fix Unity | Fix the brightness correction when using Linear color space |
| Fix | Background/border/mask images are now properly released when the style no longer requires them |
| Fix Unity | Fixed the world views adding extra mesh component |
| Fix | Fixed a crash when using complex text with bitmap font |
| Fix | Fixed crash when parsing long URL |
| Fix | Fixed double invoke of |
| Fix | Fixed caret position with |
| Fix | Fixed borders with |
| Fix | Fixed |
| Fix | Fixed a crash when firing events on elements with pseudo elements |
| Fix | Fixed |
| Fix | Fixed |
| Fix | Fixed |
| Fix | Fixed assert when SVG root is hidden with |
| Fix | Fixed text key shortcuts to work as expected with Control, Alt, AltGraph, and Shift modifiers. |
| Fix | Fixed some letters being interpreted as the newline character in input fields |
| Fix | Fixed SVG elements not redrawing correctly in some cases |
| Fix | Fixed a crash when applying white-space property on input elements |
| Fix | Fixed a deadlock that can occur during loading of images |
| Fix | Borders having width less than 1px and using images/gradients as |
| Fix | Fixed pausing animation with duration 0 rendering it at the beginning |
| Fix | Fixed a crash in |
| Fix | Fixed potential crash when destroying Vertex/Index buffers in the backend when using the |
| Fix | Fixed submission validation errors for Sony PlayStation 5 |
| Fix | Fix a crash when nesting elements that use the clip-path property in an SVG |
| Fix | Fixed potential threading issue when using multiple views along with the |
| API | Removed |
Version 1.38.0
Section titled “Version 1.38.0”| Feature | Introduce a new ‘UI Surface Partitioning” feature that gives the ability to split the UI in parts that will be rendered in separate textures. See the documentation for more details’ |
| Enhancement | Added documentation for the coh-composition-id, coh-partitioned, and coh-rendering-options |
| Enhancement | Enhanced stroke rounded rects to use geometry instead of Path for better performance |
| Enhancement | Implemented a full page capture feature that can serialize a loaded page to a binary blob for easier debugging |
| Enhancement | Added support for null when setting style.[top|left|right|bottom]PX for unsetting the property |
| Enhancement Unreal Engine | Added a way to ignore the automatic binding of specific UFunctions |
| Fix | Fixed a crash when applying white-space property on input elements |
| Fix | Fixed a deadlock that can occur during loading of images |
| Fix | Fixed a regression with user images that may have caused crashes |
| Fix | Borders having width less than 1px and using images/gradients as border-image-source are no longer disappearing |
| Fix | Fix the disappearing of small border corners |
| Fix | Fixed pausing animations with zero duration to render the correct state |
| Fix | Fixed a potential crash when creating/destroying video elements or changing the src attribute |
| Fix | Fixed a potential crash when destroying Vertex/Index buffers in the backend when using the ViewSettings::ExecuteCommandProcessingWithLayout option |
| Fix | Fixed a crash when nesting elements that use the clip-path property in an SVG |
| Fix | Fixed potential threading issue when using multiple views along with the ViewSettings::ExecuteCommandProcessingWithLayout option, leading to the missing texture errors |
| Fix | Removed additional memory allocation for texture updates |
| Fix | Fixed an assert in Debug configuration related to visual AABBs |
| Fix | Fixed possible GPU hang due to failing Index buffer diagnostic check 16690 in the stock PS4 backend. |
| Fix | Fixed wrong layout when using font-fit in a dynamically sized flex sub-tree |
| Fix | Fixed inner HTML in localized content not displayed correctly unless wrapped in a single HTML element |
| Fix | Fixed unnecessary request for an invalid texture from the backend in the Compositor sample |
| Fix | Fixed incorrect handling of background-size single value extent and auto value |
| Fix | Fixed possible assertion for a missing render target when having an element with both |
| Fix | Fix the occasional disappearing of SVGs used as masks |
| Fix | Fixed SVGs not drawing correctly when using |
| Fix Unity | Fixed submission validation errors for PlayStation 5 |
| Fix Unreal Engine | Fix retrieval of game viewport when multiple PIE processes exist |
Version 1.37.0.1
Section titled “Version 1.37.0.1”| Feature | Added support for debugging with Visual Studio Code |
| Feature | Added text-anchor property for SVGs |
| Feature | Added |
| Feature Unity | Add a window in Unity editor warning for known issues with specific Unity versions |
| Feature Unity | C# Rendering backend support for Android with Vulkan |
| Feature Unity | C# Rendering backend support for MacOS |
| Enhancement | Added more meaningful debug logs for the lifetime events of images |
| Enhancement | Provided a callback for whenever a user image is dropped before being used |
| Enhancement | Reduced draws in SVGs when duplicate paths are present |
| Enhancement | Each view can be inspected by multiple inspector instances |
| Enhancement |
|
| Fix | Fixed |
| Fix | Fixed multiple sources in |
| Fix | Address potential |
| Fix | Hidden elements are no longer redrawn. |
| Fix | Fix threading issues when compositor is used |
| Fix | Fixed parsing of font families in |
| Fix | Fixed leaking frame rendering data of discarded frames when using the multi-threaded paint option |
| Fix | Fixed disappearing styles in the inspector styles tab on declarations edit |
| Fix Unity | Removed GLES2 and GLES3 dependency for iOS. |
| Fix | Fixed data-bind-style-transform swapped second and third matrix values |
| Fix | Fixed possible artifact when drawing a background with semi-transparent color and overlapping border radius. |
| Fix | Fixed issues when appending multiple HTML, HEAD and BODY elements to a document |
| Fix | Fixed a crash when destroying a view while tracing in the inspector. |
| Fix | Stop tracing when the inspector frontend disconnects. |
| Fix | Fixed out-of-the-box launching the Player application on newer Mac OS versions |
Version 1.36.2.1
Section titled “Version 1.36.2.1”| Enhancement Unreal Engine | Significantly reduced the size of the Unreal Engine installers for consoles by removing the most of the binaries present in the regular installer |
| Fix | Fixed data-bind-style-transform swapped second and third matrix values |
| Fix | Fixed a crash during GC tracing of events |
| Fix | Fixed a deadlock regression with user images |
| Fix | Fixed potential “Called EndLayer to a command buffer which has … saved states to restore!” warning when using backdrop filter |
| Fix | Fixed a precision error when calculating font-fit when given high precision numbers from CSS |
| Fix | Fixed the rendering of nested SVG elements that use clip-path |
| Fix | Fixed possible artifact when drawing a background with semi-transparent color and overlapping border radius. |
| Fix Unreal Engine | Fixed installer logic that adds module dependency for |
| Fix Unreal Engine | Fix the crash when the inspector starts performance recording with screenshots enabled |
| Fix Unreal Engine | Fix non-compiled shaders for Custom Effects because of Unreal Engine 5.1’s ODSC |
Version 1.36.0.3
Section titled “Version 1.36.0.3”Version 1.36.0.1
Section titled “Version 1.36.0.1”| Enhancement | Implement optimization that caches SVGs used in elements so that the SVGs are not redrawn every frame |
| Enhancement | Optimized approximating cubic curves into quadratic ones when doing font rendering |
| Enhancement Unreal Engine | Make custom effects to work with dedicated layout thread |
| Fix | Fixed virtual list parsing when there is a function call in the expression |
| Fix Unity | Fixed Unity 2022.2 HDRP rendering when using the native D3D12 backend |
| API Unreal Engine | Removed support for old engines prior to Unreal Engine 4.27 |
Version 1.35.0.3
Section titled “Version 1.35.0.3”| Feature | Added mouse event type MouseLeave, which clears hover effects when the mouse leaves the view |
| Feature | Implemented import.meta.url for ES6 modules for platforms using V8 |
| Feature | Implemented dynamic import for ES6 modules for platforms using V8 |
| Feature Unreal Engine | Support for Unreal Engine 5.1 |
| Enhancement | Reduced the amount of log messages caused by unsupported CSS syntax |
| Enhancement | Non-inline SVGs are now shared between DOM elements in order to avoid re-rendering for each individual element |
| Enhancement Unity | MacOS bundles support all CPU architectures |
| Enhancement | Fixed possible incorrect generation of “streaks” when tessellating a path for filling. Note that this changes the tessellation result slightly, most noticeable when rasterizing thin fills. |
| Enhancement | Improved error reporting of declaration parsing with custom variables |
| Enhancement | Improved image decoding performance (sped up the automatic premultiplication of the alpha channel by 2x-3x depending on platform) |
| Fix | Fixed a crash when modifying the DOM of an inline SVG |
| Fix | Fixed a crash when using events outside of event handlers |
| Fix | Fixed rem units not working with SVGs |
| Fix | Fixed a leak when inspector network tab is disabled |
| Fix | transform: translate/font-size with non-pixel units on SVG elements no longer causes an assert/warning |
| Fix Unity | Fixed code stripping removing classes or methods for the JIT aware scripting backends |
| Fix | Fixed a bug where part of the viewport gets clipped when the rendering resolution API is used and the size of the view`s render target is changed |
| Fix Unity | Fixed a crash when not supported arguments are passed from JavaScript |
| Fix Unity | Fixed a crash when using HDR on DirectX12 in Unity |
| Fix | Fixed incorrect sampling of very thin elements using a large scale, that previously led to incorrect interpolation |
| Fix | Fixed a crash when resolving calc expression with invalid parentheses |
| Fix | Fixed elements to update their font after registered fonts without explicit font family are loaded |
| Fix | Fixed scroll juddering when panning with touch or scrolling fast |
| Fix | Fixed a crash during garbage collector tracing |
| Fix | Fixed SVG used as masks being partially rendered sometimes |
| Fix Unity | Removed GetNativeTexture call for Linux on each update loop |
| Fix | Removed assert/log errors when an invalid url is provided to properties like background-image |
| Fix | The getAnimations API now takes into account the display property of an element and its parents |
| Fix | Fixed font family to be case insensitive |
| Fix Unity | Removed redundant View`s BackdropFilter property |
| Fix | Fixed parsing of inline styles containing various whitespace characters |
| Fix | Fixed possibly incorrect gradient drawing on PlayStation platforms |
| Fix | Fixed a crash when command processors are being reused |
| Fix | Fixed em units to be calculated against the first parent with explicit font-size instead of the direct parent |
Version 1.34.2.1
Section titled “Version 1.34.2.1”| Feature | Added support for text-decoration-line, text-decoration-color, text-decoration-thickness, text-underline-offset, text-underline-position and the text-decoration CSS properties |
| Enhancement Unity | Mac OS bundles support all CPU architectures |
| Fix | Fixed linking of iOS ARM64 builds |
| Fix | Fixed scroll juddering when panning with touch |
| Fix | Fixed potential double trace and crash of objects during V8 garbage collector tracing |
Version 1.34.0.4
Section titled “Version 1.34.0.4”| Feature | Added API to remove arrays exposed by reference from JavaScript |
| Feature | Dispatch window Error event for platforms using V8 |
| Feature | Add |
| Enhancement | New documentation with improved usability and searching for Custom engines, Unreal Engine and Unity Engine |
| Enhancement | Clarified System API usage – System API must be called on the thread that initialized the System, unless explicitly stated otherwise |
| Enhancement | Support for PlayStation 4 SDK 10 |
| Enhancement | Optimized performance of font data preloading |
| Enhancement | Added new API for creation/destruction of custom effects |
| Enhancement | Gamepad events are now fired before JS timers execution on Advance |
| Enhancement | Added warnings for registering an already registered gamepad and unregistering a non-registered gamepad |
| Enhancement | Documented the new execution flow of resource commands through the rendering backends |
| Enhancement | Enhance batching to check for older combinable commands |
| Enhancement | Added pdb files for the prebuilt Renoir backends |
| Enhancement | Inspector now accepts shorthand declarations |
| Enhancement | Style tags now display their content in the inspector |
| Enhancement | Added the event name to the warning message when trying to remove non-existent event listeners |
| Enhancement | Abort execution of newly loaded scripts after document unloading has started |
| Enhancement Unreal Engine | Added support for Custom Effects in Unreal Engine 5 |
| Fix | Moved invocation of RegisterGamepad and UnregisterGamepad on the System initializing thread in GDK XBox samples for thread-safety |
| Fix | Fixed log spam when inspector is enabled without an available network connection |
| Fix | Fixed assert on Linux with Vulkan backend caused by wrong texture layout |
| Fix | Fixed a crash when reloading pages using canvases and not calling |
| Fix | Fixed inspector taking up memory space when disabled |
| Fix | Fixed a case where the client`s backend can receive a DestroyTexture command for a user image before the WrapUserImage command |
| Fix | Fixed a crash with |
| Fix | Fixed forward fill mode animations to retain animated value on end when animation direction is reversed |
| Fix | Fixed C4100 warnings in public headers, modules and samples |
| Fix | Fixed bottom and right properties percent values being calculated against the width of the parent element |
| Fix | Fixed assert when opening the inspector with Chrome language default different than English |
| Fix | Fixed a crash when parsing background shorthand |
| Fix | Fixed a crash when there are several elements inside element in a SVG |
| Fix | Fixed !important order when used with custom variables |
| Fix | Fixed a crash when importing a module that contains syntax errors |
| Fix | Fixed a crash when performance handler is not passed |
| Fix | Fixed hover functionality for elements that are part of complex selectors |
| Fix | Fixed a crash when registering and unregistering gamepads |
| Fix | Fixed setting a gamepad object when creating GamepadEvent from JavaScript |
| Fix | Fixed a crash when unregistering a gamepad twice |
| Fix | Fixed a GamepadEvent related crash during garbage collector tracing |
| Fix | Fixed a crash when parsing clip-path:ellipse with a single argument |
| Fix | Fixed animations not playing when a new element is shown after immediately being hidden |
| Fix | Fixed crash when there is no function handler in engine.on call |
| Fix | Fixed border-radius not working until a certain proportion of width and radius |
| Fix | Fixed style matching of CSS attribute selectors with empty value |
| Fix | Fixed the crash when clipPath is used together with opacity in SVGs |
| Fix | Fixed an assert on Vulkan when user texture layout is different from VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL |
Version 1.33.3.1
Section titled “Version 1.33.3.1”| Feature | Experimental support for inline layout background styles per row (color, images and gradients) |
| Fix | Fixed elements leaving visual artifacts after being removed from the DOM |
| Fix | Fixed a case where CSS variables will fail to be resolved |
| Fix | Fixed a crash when certain SVGs have zero width/height |
Version 1.33.1.2
Section titled “Version 1.33.1.2”| Feature | Added an interface for time zone support for Sony PlayStation and Nintendo Switch |
| Enhancement | Implemented an optimization to reduce the number of render passes when rendering complex effects |
| Enhancement | Added functionality and API to capture backend command buffers |
| Enhancement Unity | Support for Android x64 |
| Enhancement | Introduced new backend API for resource barriers (see the rendering migration guide) |
| Enhancement | Enhance batching to check for older combinable commands |
| Fix | Fixed the growth of the stroke width for elements in SVGs to be bidirectional |
| Fix Unity | Fixed binding between C# and JavaScript |
| Fix | Fixed typescript definition of registering binding attribute |
| Fix | Fixed order of custom element reactions when content is added through insertAdjacentHTML |
| Fix | Fixed wrong indexing arrays with literal numbers in data-binding expressions |
| Fix | Fixed crash in data-binding with complex expression and literal numbers indexing arrays |
| Fix | Fixed the Date.now() time on Nintendo Switch. |
| Fix | Fixed clipped text shadows when using line height which is less that the character height. |
| Fix | Fixed background/mask-position when using a gradient as an image |
| Fix | Fixed mask-position property when the mask-image is a gradient. |
| Fix | Fixed a crash when changing the html background before the body element is created. |
| Fix Unreal Engine | Fixed assert when custom effects are enabled |
| Fix Unreal Engine | Fixed safe zone calculation with multiple viewports |
| Fix Unreal Engine | Fixed texture drawing in atlas crash in Unreal Engine 5 with DirectX12 |
| Fix | Fixed the default value of stop-color in gradients defined in SVGs |
Version 1.32.1.2
Section titled “Version 1.32.1.2”| Feature | Added new interface for logging performance hints |
| Feature Unreal Engine | Added Live Reload option for different directories |
| Enhancement | Changed custom css float param for the custom effects to an array. Maximum of 16 values |
| Enhancement | Added a new API for the compositor for notification when composition is created |
| Enhancement Unity | Support Android Vulkan native rendering |
| Enhancement | Moved AGC Shader library from include to lib folder in the native packages |
| Enhancement | Command buffers are pooled now, instead of reallocated every frame |
| Enhancement | Automatic disabling of constant buffer optimization if custom shader mapping is used in the backends |
| Fix | Fixed a crash when modifying the DOM of an inline SVG |
| Fix | Fixed a hang when using canvases with ExecuteCommandProcessingWithLayout option enabled and a dedicated layout thread |
| Fix | Fixed early closing of renderer frames when doing layout on the DOM thread that was causing leaks |
| Fix | Fixed failing transitions when combined with CSS animations |
| Fix | Fixed a failing assert when the inspector is attached to a page with pseudo elements |
| Fix | Fixed flickering of SVGs when the SVG element is moved. |
| Fix | Fixed a crash when switching render target with processing rendering commands on the layout thread enabled |
| Fix | Fixed binding objects with BaseClass in the CoherentBind function |
| Fix | Fixed eager wrapping of multiple words caused by improper layout cache invalidation |
| Fix | Fixed a crash when there are two wrap RenderTarget commands |
| Fix | Fixed possible wrong positioning of element when using the –rescaleFontSizeWithMatrixScale developer option |
| Fix | Fixed crash in CPU workload flow when trying to draw an image that wasn`t loaded successfully |
| Fix | Fixed a crash when more than 65k vertices are requested during patterns/gradient drawing |
| API | Added API for controlling the command buffer pool size (see |
Version 1.31.2.2
Section titled “Version 1.31.2.2”| Fix | Fixed eager wrapping of multiple words caused by improper layout cache invalidation |
Version 1.31.0.1
Section titled “Version 1.31.0.1”| Feature | Absolute positioned elements support for inline layout |
| Enhancement | Enhance objects logging in the Inspector console for platforms using V8 for JavaScript execution. Objects are now properly expandable in the console log messages with captured callstack |
| Enhancement | Added rem and % setters for left, right, top, bottom, width, height, maxWidth and maxHeight |
| Enhancement | Added partial Float32Array setters for transform, filter, clip-path, transform-origin, mask-size and mask-position |
| Enhancement | Increased the duration of JavaScript CPU profiles in the Performance tab |
| Enhancement | Added support for transform-origin for SVG nodes |
| Enhancement | Added documentation about the Inspector`s new tracing capabilities |
| Enhancement Unity | Added support for Vulkan rendering on Android using the C# rendering backend |
| Enhancement Unreal Engine | Add option to propagate mouse wheel events through transparent CSS classes |
| Fix | Fixed inconsistencies with nested elements in inline layout |
| Fix | Fixed inline layout word wrapping when text is nested in elements |
| Fix | Fixed minor issues with text wrapping in inline layout |
| Fix | Fixed potential crashes when drawing glyphs and using the PreferCPUWorkload option |
| Fix Unity | Fixed C# backend crash when the VB/IB buffer data is being set to the mesh |
| Fix | Fixed a deadlock when the layout is processed on the DOM thread and rendering canvases |
| Fix | Fixed a crash when detaching elements with animated pseudo elements |
| Fix | Fixed artifacts from text not properly clearing in cases when the used font-size and line-height made the text get outside of the line`s visual dimension |
| Fix | Fixed possible race condition in ShaderGradientTextureCache when using command processing on the layout thread |
| Fix | Fixed possible memory leak when displaying a path at a very low scale (less than ~0.01) |
| Fix Unreal Engine | Fixed input propagation for in-world Views |
Version 1.30.0.1
Section titled “Version 1.30.0.1”| Feature | Added |
| Enhancement | Improved the performance of the C++ character processing functions(tolower/toupper) in the internal code |
| Enhancement | Updated Nintendo Switch SDK to version 14 |
| Enhancement | SDF text with different size is now batched |
| Enhancement | Renamed ICU libs with cohtml_ prefix |
| Enhancement Unity | Added support for binding long and ulong values |
| Fix | Fixed wrong text direction with some RTL scripts |
| Fix | Fixed preloading of unsupported formats in the instaload sample |
| Fix | Reduced JS garbage memory from fired events |
| Fix | Fixed hover not working for newly added elements styled by complex selectors |
| Fix | Fixed incorrect layout when using flex subtrees with simple mode layout |
| Fix | Fixed overlap of transparent borders when using border-radius |
| Fix | Guarded against drawing too small rectangles when using the inspector highlight, which could potentially trigger an assertion in the SDK |
| Fix | Fixed possible excessive fullscreen draws to the stencil buffer when executing clipping commands |
| Fix | Fixed load event not firing when using the same image as background and border or mask image |
| Fix | Fixed load event firing before all images are loaded when using the same image source of an IMG tag as a background-image |
| Fix | Fixed graphic artifacts when “transform-style: preserve-3d” was missing between 3D transformed elements and elements with perspective |
| Fix Unreal Engine | Fixed hang when loading atlasses saved with previous version of the atlas medata |
| Fix Unreal Engine | Fixed video decoding hang for console platforms in Unreal Engine 5 |
Version 1.29.2.1
Section titled “Version 1.29.2.1”| Feature | Added sample for using Google Protocol Buffers with data-binding |
| Feature | Implement custom property binding for |
| Feature | Added support to the Devtools to display the state of some internal caches |
| Feature | Added support for GDK native rendering in Unity3D |
| Feature Unreal Engine | Add delegate for controlling which properties are exposed with the automatic binding |
| Enhancement | The rendering library will automatically detect multithreaded usage and will set AllowMultithreadedCommandProcessing accordingly |
| Enhancement | Fixed iOS simulator by adding new metal shader library built specifically for simulator in the package. For Unity3D it`s embedded in the native plugin. |
| Enhancement | The CSS parser will try to continue parsing the stylesheet after encountering errors in rules and declarations |
| Enhancement | Increased the severity of CSS parsing errors |
| Enhancement | Added support for attributes on the HTML element |
| Enhancement | Enable duplicate rendering command buffer checking by default. This saves the execution of potentially costly commands. |
| Fix | Fixed possible artifact when a node is hidden with display:none without other layout changes |
| Fix | Fixed crashes when parsing badly defined media queries |
| Fix | Fixed broken layout when hiding and showing cohinline paragraph elements |
| Fix | Fixed broken layout when using justify-content space-around with a single element |
| Fix | Fixed a race condition when using XmlHTTPRequests with response headers and enabled inspector that might cause a crash |
| Fix | Fixed an issue where styles won`t be applied to elements with transitions that have already been displayed once |
| Fix | Fixed the artifacts when drawing repeated an image from a texture atlas |
| Fix | Fixed incorrect generation of antialiased border geometry when drawing a gradient with perspective transformation |
| Fix | Fixed the library from crashing the process when the |
| Fix | Fixed transform-origin being reset to a default value when changing a style through the inspector |
| Fix Unreal Engine | Fixed deadlock issue with accessing a texture resource TSoftObjectPtr on worker threads |
| Fix | Fixed possible artifact when tessellating the same path at different scales |
| Fix | Fixed incorrect generation of antialiased border geometry when drawing a gradient with perspective transformation |
| API | Added means for destroying the user render target through the Scene`s DestroyRenderingResources method |
Version 1.28.2.3
Section titled “Version 1.28.2.3”| Enhancement | Update Sony PlayStation 5 SDK to 5.000 |
| Enhancement | Update Sony PlayStation 4 SDK to 9.500 |
| Enhancement | Update Game Development Kit to March 2022 |
| Fix | Fixed incorrect generation of anti-aliased border geometry when drawing a gradient with perspective transformation |
| Fix | Fixed an issue where styles won`t be applied to elements with transitions that have already been displayed once |
Version 1.28.0.1
Section titled “Version 1.28.0.1”| Feature | Devtools Add rendering trace markers |
| Feature | Devtools Add ability to record screenshots |
| Feature | Devtools Add support for tracking the creation, destruction, and count of GPU objects |
| Feature | Devtools Add support for tracking the GPU memory used by the rendering library |
| Feature | Add custom CSS property |
| Enhancement | Devtools The rendering trace events in the inspector`s performance tab now have information about the DOM node which was rendered |
| Enhancement | Add support for “background-repeat: round” for background SVGs larger than 1024px |
| Fix | Add support for changing the Window origin on Nintendo Switch. Note that you need to use the –disableSimpleSublayers developer option for full support |
| Fix | Fixed V8 freeing memory on small GC collections |
| Fix | Fixed a regression in absolute element size calculation when width and height weren`t specified margins were ignored |
| Fix | Fixed wrongly positioned absolute flex items with percents when parent element had margins |
| Fix Unreal Engine | Fixed CohtmlHUD Material compatibility with Unreal Engine 4 |
Version 1.27.0.2
Section titled “Version 1.27.0.2”| Feature | Implemented the DOMContentLoaded event |
| Feature | The page load event fires after all images are loaded, including images specified in styles |
| Feature Unreal Engine | Preview support for Unreal Engine 5. Known issues include rendering artifacts on Nintendo Switch and iOS and video playback on game consoles |
| Feature Unity | Implement Input event propagation handler |
| Feature | Implement an optimization for constant buffers to reduce number of updates and memory used. |
| Enhancement | Fixed increasing memory when changing the style attribute or its properties |
| Enhancement Unity | Add new sample to demonstrate the input events handling propagation |
| Enhancement | Documented how to avoid banding in gradients |
| Enhancement | Documented animation, chat and map JavaScript libraries support |
| Enhancement | Add different semantics for null and undefined in the C++ bindings |
| Enhancement | Implemented the |
| Enhancement | Added |
| Enhancement | Added |
| Fix | Fixed 9-slice and wrong image repeat in some cases |
| Fix | Fixed calling pushState and replaceState History APIs without URL |
| Fix | Fixed possible frame delay when drawing a new image from an atlas |
| Fix | Fixed firing animationend event more than once for certain animations |
| Fix | Fixed flickering artifacts caused by negated scaling for path objects (used by clip-path, clip-polygon, etc.) |
| Fix | Fixed a crash in |
| Fix | Fixed custom elements reaction callbacks invocation order |
| Fix | Fixed deferred scripts execution order |
| Fix | Fixed WebAnimations API to return current frame time instead of the previous frame time |
| Fix | Fixed document.readyState to report the document state correctly no matter when it is queried |
| Fix | Fixed leaking WebSocket connections in the Player app |
| Fix | Fixed nodes ignoring scroll set via JavaScript on the first frame |
| Fix | Fixed transitions not activating on elements with pseudo elements |
| Fix | Fixed transition state breaking when cloning nodes with JavaScript |
| Fix | Fixed duplicated Inspector and Mutation Observer events on element inlineStyle change |
| Fix | Fixed absolute element positioning when size is defined |
| Fix | Fixed the |
| Fix | Fixed a race condition when multithreaded command processing was enabled. |
| Fix | Fixed a crash when destroying GPU buffers (vertices & indices). |
| API | Removed forceStyleResolve option from GetAnimationsOptions, getAnimations now works by standard |
| API | Deprecated ReadNull in favor of SkipValue in the |
Version 1.26.4.1
Section titled “Version 1.26.4.1”| Enhancement | Improved performance of setting inline style in terms of CPU and memory usage. |
Version 1.26.2.1
Section titled “Version 1.26.2.1”| Fix | Fixed InputManager gamepad null reference in Unity3d |
| Fix | Fixed a regression of cohtml.js that made it unusable in a browser |
| Fix | Fixed transitions not activating on elements with pseudo elements |
| Fix | Fixed transition state breaking when cloning nodes with JS |
| Fix | Fixed absolute element positioning when size is defined |
Version 1.26.0.1
Section titled “Version 1.26.0.1”| Feature | Added public interface for a custom virtual allocator to the library |
| Feature | Implemented default public virtual allocators for PlayStation and Switch |
| Feature | Added support for the clipPathUnits property for elements in SVGs |
| Feature | Added support for the image-rendering CSS property |
| Feature | Added support for the caret-color CSS property |
| Feature | Implemented the Inspector Search functionality in the Elements tab |
| Feature | Added support for the InspectorDOM domain protocol function `DOM.describeNode which could be used for automation |
| Feature | Added support for the InspectorDOM domain protocol functions – DOM.querySelector, DOM.querySelectorAll, and DOM.getAttributes |
| Feature Unity | Update ICU library to ICU v69 and provide InternationalizationManager and BreakIterator support for all platforms |
| Enhancement | Implemented input caret navigation and selection for complex and RTL text |
| Enhancement | Update V8 to 9.4 with latest security fixes |
| Enhancement | Large SVGs used for mask-image use less memory and won`t create temporary textures larger than 1024×1024 |
| Enhancement | Added Player command line argument option for fullscreen borderless window |
| Enhancement | Implemented promise rejection event for V8 as some JS frameworks require it |
| Enhancement | Using text measure cache more aggressively to improve text layout performance |
| Enhancement | Update Nintendo Switch SDK to 13 |
| Enhancement | Update Microsoft GDK to October 2021 release |
| Enhancement Unity | Fixed performance regression from a Linux patch that is now behind a platform define |
| Enhancement Unreal Engine | Add backwards compatibility for Atlas metadata files created prior to 1.14.3 |
| Fix | Fixed crash when connecting the inspector to a page using lots of CSS variables |
| Fix | Fixed binding unsigned integers greater than 2^31 |
| Fix | Fixed a crash with complex text when the fonts used are missing the glyphs for it |
| Fix | Fixed constant redraw of text nodes that were selected at some point |
| Fix | Fixed firing of |
| Fix | Fixed a memory leak caused by binder state leak |
| Fix | Fixed artefacts when scrolling right or center aligned text |
| Fix | Fixed trailing artefacts of elements with inherited filters |
| Fix | Fixed complex text letter spacing which was wrongly applied on overmarks and undermarks |
| Fix | Fixed attributeChangedCallback for custom elements to be called only for attributes listed in observedAttributes |
| Fix | Fixed a crash on UWP when utilizing a specific symbol on the JavaScript side |
| Fix | Fixed JS return value of the isolation property. Now properly returns “isolate” instead of “isolation” |
| Fix Unreal Engine | Moved UObject creations from the Render thread to the Game thread |
| Fix Unreal Engine | Fixed Compositor errors for missing textures |
| Fix Unreal Engine | Initialize USTRUCT member variables that were not initialized at construction time |
| Fix Unreal Engine | Fixed debug asserts due to improper usage of GWorld |
| Fix Unreal Engine | Fixed soft locking when loading a streamable Texture |
| Fix Unreal Engine | Added a mutex lock to prevent concurrent accessing of the internationalization manager`s resources |
Version 1.25.1.2
Section titled “Version 1.25.1.2”| Feature | Support for Binary WebSockets in the Network panel in the inspector |
| Feature | Support MQTT over WebSockets |
| Feature | Binary messages support for WebSockets |
| Feature | Introduced support for anti-aliased clipping |
| Feature Unreal Engine | Added option that enables the loading of UTextures instead of raw images if they exist inside an Atlas or can be located on disk |
| Enhancement | Exposed V8 Tracing events on Xbox, which show where V8 is spending time when executing JavaScript code |
| Enhancement | Introduced new member in Compositor`s DrawInfo structure to show which view owns the composition which has to be drawn |
| Enhancement | Reduced various internal classes memory footprint |
| Enhancement | Cache attributes NamedNodesMap instead of allocating a new one on each query for better performance and memory |
| Enhancement | Optimized redrawing areas size and frequency |
| Enhancement | Reduced the HTMLParser memory usage |
| Enhancement | Optimized the transitions performance to be not affected by using transition: all |
| Enhancement | Added support for render passes in the DirectX12 backend |
| Fix | Fixed a crash when GC happens inside MutationObserver notification |
| Fix | Fixed premature removal of data-bind nodes from the evaluation graph when they have mutators |
| Fix | Fixed Player app gamepad swapped buttons 8 and 9 |
| Fix | Fixed possible graphics artifact (color bleeding) when using a SVG as repeated background image |
| Fix | Fixed positioning of SVG |
| Fix | Fixed the class, style and id attributes to be able to be empty |
| Fix | Added missing mutation records when classes are changed through classList |
| Fix | Handle possible assertion for a degenerate triangle when handling glyphs that contain cubic curves |
| Fix | Fix SVG clipping for background SVGs with viewBox attribute that has non-zero position |
| Fix | Fixed mutation observers being garbage collected too early |
| Fix | Fixed resized images being minified when drawing them onto CanvasRenderingContext2D |
| Fix | Fixed possible null access crash in DrawShadowShape |
| Fix | Fixed suffix attribute selector |
| Fix | Fixed flex absolute children size calculation not respecting the direct parent |
| Fix | Calculate transform origin based on snapped to pixel size box |
| Fix | Fixed ArrayBuffer type on JSC VM |
| Fix | Allow cohtml.js to be included multiple times without side effects |
| Fix | Fixed a rare crash when profiling performance via the inspector |
| Fix | Fixed stale stacking contexts which in certain cases improves memory consumption |
| Fix | Fixed an assert failure when using the compositor feature in Debug configuration |
| Fix | Fixed rare cases where elements would be missing their visual style during rendering leading to assert failures and crashes |
| Fix | Fixed wrong AABB debug visualization when using ShowElementAABBs feature |
| Fix | Fix disappearing pseudo elements |
| Fix | Fixed URL parsing for URLs that contain backslashes |
| Fix | Transitionend events are no longer fired when an element with a transition is shown |
| Fix | Transition property changes now correctly take effect when the active transition ends |
| Fix | Fix incorrect display of preloaded images using non-premultiplied alpha |
| Fix Unreal Engine | Fixed Video sample crash on Switch by disabling the Procedural sounds |
| API | Modified the User fonts API so it takes the Ascent/Descent of a font instead of just the baseline |
| API | Introduced new field in the RenderCaps structure of the backends – EndingRenderPassRequiresStateUpdate |
Version 1.24.1.3
Section titled “Version 1.24.1.3”| Fix | Fixed MutationObservers being garbage collected too early |
| Fix | Fixed crash when DOM elements are created and destroyed during garbage collection |
| Fix | Fixed assert for exposing garbage collected NodeList instances |
Version 1.24.1.1
Section titled “Version 1.24.1.1”| Feature | Added polyfill for the form element |
| Feature | Added JavaScript sampling profiler in the Inspector Performance Tab on Windows |
| Feature Unreal Engine | Added possibility to specify different directory locations for UE Texture Atlases |
| Feature Unreal Engine | Added callback which notifies when the input focus has changed |
| Feature Unreal Engine | Added Starter Guide for Unreal Engine |
| Enhancement | Added ICU integration and BreakIterator support in GFP Player app and Samples on all platforms |
| Enhancement Unreal Engine | Added C++ API for CohtmlInputActor input setup |
| Enhancement Unreal Engine | Added ResizeRenderTarget API |
| Fix | Fixed flaky wrapping of the elements when using flex wrap |
| Fix | Fixed an issue in V8 that was blocking the use of the PlayStation Memory Analyzer tool |
| Fix | Fixed SVG not being rendered in certain cases |
| Fix | Fixed stroke width to be correctly computed on rescaling for SVG path elements with stroke-dasharray |
| Fix | Fixed clipping artifact when layers with opacity and SVGs are present |
| Fix | Fixed SVG elements inside a SVG hierarchy to correctly apply transformations at runtime |
| Fix | Fixed crash due to unclamped negative size of image destination rectangles |
| Fix | Fixed crash in the svg rendering when svg are displayed as images inside a backdrop filter |
| Fix | Fixed playback of videos with low frame rate or gaps between frames |
| Fix | Fixed looped videos playback |
| Fix | Fixed the ::before pseudo element not showing in the inspector |
| Fix | Fixed not matching pseudo elements with complex CSS selectors |
| Fix | Fixed a crash when using null or undefined as an event listener. |
| Fix | Fixed the DX12 Backdrop Sample crash during init and close. |
| Fix | Fixed comments that were incorrectly displayed in the inspector Elements tab |
| Fix | Fixed a crash with whitespace in text and RTL glyphs |
| Fix | Fixed a crash when setting transform scale from JS |
| Fix | Fixed tagName and nodeName to correctly return capitalized names for custom elements and unknown elements |
| Fix | Fixed having duplicated nodes in the Inspector Elements Tab |
| Fix | Fixed a V8 crash when using onpopstate event listener |
| Fix Unreal Engine | Fixed a crash on CohtmlViewWrapper trying to access uninitialized FSlateApplication |
| Fix Unreal Engine | Fixed a crash in |
| API | Changed media sought event to be fired before a new frame has been shown |
| API | Added decoder type getter method to the IDecoder interface |
Version 1.23.0.2
Section titled “Version 1.23.0.2”| Enhancement | Allowed WebSocket constructor to also accept a single string as a protocol |
| Enhancement | Updated Sony PlayStation 4 SDK to 9.000 |
| Enhancement | Updated Sony PlayStation 5 SDK to 4.000 |
| Fix | Fixed incorrect clipping of SVG elements when they are within a sublayer |
| Fix | Unity3D Fixed the backdrop filter support in HDRP projects in Unity3D |
| Fix | Fixed some SVGs not being displayed inside an element with backdrop filter |
| Fix | Fixed innerHTML to return the tag name of unknown elements. |
Version 1.22.1.3
Section titled “Version 1.22.1.3”| Feature | Support for network requests in the Network panel in the inspector |
| Feature | Support for WebSockets in the Network panel in the inspector |
| Feature Unreal Engine | Add raw image to UTexture import feature |
| Enhancement | Update distributed ICU module with libraries for all platforms. The ICU version is also updated from v67 to v69. |
| Enhancement | Style attribute updates dynamically as inline style changes in the inspector elements tab |
| Enhancement | Reduced the memory used by the JavaScript heap on Sony PlayStation 4 and Sony PlayStation 5 |
| Enhancement | Reduced the memory used by the JavaScript heap on Nintendo Switch |
| Enhancement | Reduced HTMLElement memory footprint |
| Enhancement | Reduce memory spikes caused by JavaScript accessing temporary DOM objects |
| Fix | Implemented proper incremental garbage collection of the DOM objects |
| Fix | Elements with backdrop filter now have the same size as the ones without |
| Fix Unreal Engine | Fixed the backdrop filter for Unreal Engine |
| Fix | Fixed data-bind-html sometimes not updating when nested in data-bind-if |
| Fix | Unity3D Fixed synchronization drawing Unity3D on Sony PlayStation 4 and Sony PlayStation 5 with the C# rendering backend |
| Fix | Fixed a regression with the timing of firing internal media events when playing videos |
| Fix | Unity3D Fixed missing font symbols when C# backend was used for the first time in the project |
| Fix | Fixed crash in the inspector, caused by elements with invalid computed value for border-width |
| Fix | Removed the warning for unknown mime type when the inspector is not running |
| Fix | Fixed paint flashing not displaying dirty rectangles when triggered through the inspector |
| Fix | Fixed crash when accessing the style property on UWP x64 builds |
| Fix | Free video data memory when the source is removed from a video element |
| Fix | Fixed a memory leak when calling GetElementsByClassName or GetElementsByTagName on detached elements |
| Fix | Fixed a memory leak when making circular references using the mutation observer |
| Fix | Fixed a memory leak when making circular references using event listeners |
| Fix Unreal Engine | Fix post build step for earlier UE versions to copy libraries with correct build configuration |
| Fix Unreal Engine | Fix issue with updating our UMG texture |
Version 1.20.0.1
Section titled “Version 1.20.0.1”| Feature | Added CanvasRenderingContext2D.measureText |
| Feature | Added sample a demonstrating how to use observable models feature |
| Feature | Unity3D Integrated audio playback with Unity3D audio system |
| Feature | Enhanced Inspector timeline to include events for matching elements |
| Feature | Added initiators to the Inspector timeline that show the JavaScript code that invalidated styles and layout |
| Feature | Add a way to receive the View and System when they are created for the CohtmlOverrides |
| Feature | Add support for innerHTML and outerHTML getters |
| Enhancement | Enhanced timeline events for RecordRendering, Layout, RecalculateStyles, BuildDOM to contain extra data |
| Enhancement | Updated the Inspector UI to the version used in Chromium 94 |
| Enhancement | Added support for border-color: inherit |
| Enhancement | Improved the Dynamically-typed object data binding documentation |
| Enhancement | Unity3D Add logic to reassign LogHandler default log functionality |
| Enhancement | Unity3D Exposed the low level rendering options to the plugin |
| Enhancement Unreal Engine | Optimize memory tracking in Cohtml and CoherentRendering plugins |
| Enhancement | SVGs used as background images with background-repeat mode set to “no-repeat” are now culled before reaching the GPU, netting a large performance improvement |
| Fix | Fixed clip-path undefined behavior when CSS animations are present |
| Fix | Fixed skipped custom element lifetime functions |
| Fix | Fixed custom element lifetime callbacks not being called on synchronize models |
| Fix | Fixed out-of-bounds memory access violation when using transform attribute with rotate value on SVG nodes |
| Fix | Fixed not correctly scheduled canvas layout task which resulted in artifacts |
| Fix | Fixed running transitions on elements with initially and dynamically hidden parents |
| Fix | Fixed animations being activated on elements with initially hidden parent |
| Fix | Fixed crash on certain iOS devices with complex regular expressions |
| Fix | Fixed Inspector showing non-existing children after they were removed with removeAllChildren |
| Fix | Fixed HTML preview in the Sources tab of the inspector when loading through HTTP |
| Fix Unreal Engine | Fixed the loading of Streaming Textures that were looking blurry when not fully streamed |
| Fix Unreal Engine | Fixed Resource loading of not yet fully initialized UTextures, that was sometimes resulting in crashes |
| Fix Unreal Engine | Fixed a crash when loading UserImage with not yet initialized Texture Resource |
| Fix Unreal Engine | Fixed HostLocation resolving when there is no slash (”/”) in the path |
| Fix Unreal Engine | Fixed UE Editor viewport resize crash |
| Fix Unreal Engine | Added ImageData width and height to ContentRect if a Texture doesn`t have an ImportedSize |
| Fix | Fixed the calculation of the miter limit for SVG path elements (previously it could end up much larger than specified) |
| Fix | Fixed possible issue when using mix-blend-mode (the blended area may be incorrect) |
| Fix | Fixed percent units in SVGs |
Version 1.19.0.4
Section titled “Version 1.19.0.4”| Fix | Fixed layout of inline SVGs when parent element size and position changes |
| Fix | Fixed incorrect clipping of elements using linearGradient in SVGs |
| Fix | Fixed subtree styles rematching when parent is being rematched |
| Fix | Fixed incorrectly re-positioned cohinline paragraphs |
| Fix | Fixed a crash on certain iOS devices with complex regular expressions |
| Fix | Fixed a bug with complex selector matching with data attributes selectors |
| Fix | Fixed a bug that caused pseudo classes to always match in complex selectors |
| Fix Unity | Updated prebuilt ICU libraries to Sony PlayStation 4 SDK 8.500 |
| Fix Unity | Updated prebuilt ICU libraries to Sony PlayStation 5 SDK 3.000 |
Version 1.19.0.1
Section titled “Version 1.19.0.1”| Feature | Added support for pseudo elements before and after |
| Feature | Added Text-to-speech sample for PlayStation 5 and GDK platforms |
| Feature | Added synthesizers for PlayStation 5 and GDK platforms to the Text-to-speech module |
| Feature | Added cohtml-speech-api JS library for interacting with Text-to-speech module from |
| Feature | Added Text-to-speech module for speech synthesizing |
| Feature Unreal Engine | Added SDK libraries for Release and Debug config |
| Feature Unreal Engine | Added support for autobinding C-style arrays |
| Feature Unreal Engine | Added support for binding 2D TArrays |
| Feature | Added a sample for Virtual Lists with scrolling (horizontal/vertical) |
| Enhancement | Updated Nintendo SDK to version 12.3 |
| Enhancement | Improved the performance of the complex CSS selectors with classes and ids |
| Enhancement | Optimized getting element attributes by 10% |
| Enhancement | Improved the performance of |
| Enhancement | Added IsPlaying method for AudioPlayer |
| Enhancement | Improved the performance of Structural Mutators |
| Enhancement Unreal Engine | Expanded Virtual Keyboard documentation regarding VK Layout and how it depends on HTML input field types |
| Enhancement Unreal Engine | Added documentation regarding the settings of the individual UTextures that are part of a texture atlas |
| Enhancement Unreal Engine | Added documentation for autobound UFUNCTION |
| Fix | Fixed incorrect layout of inline text |
| Fix | Fixed leaking transitions that caused Advance calls to become progressively slow |
| Fix | Fixed mutation record NodeList properties to return empty NodeList instead of null |
| Fix | Fixed CSS not loading when selectors with CSS keywords are preloaded |
| Fix | Unity3D Fixed ResourceHandler.HostLocations handling of URLs that cause NullReference when is not found in the first location. |
| Fix | Fixed |
| API | Deprecated TryBindArrayByRef(void* arr, size_t size, ArrayElementBinder elementBinder, ArrayElementReader elementReader) |
| Fix | Fixed an assert failure about active mutation observers on document disposal |
| Fix | Fixed a potential crash during HTML parsing when using with the HTML preloading feature |
| Fix | Fixed deprecated font-fit-mode property |
| Fix | Fixed inspector crash due to invalid read data |
| Fix | Fixed a crash when passing console methods to async JS methods like setTimeout |
| Fix Unreal Engine | Fixed trimming of autobound properties with double underscores |
| Fix | Fixed incorrect sizing of images that could cause “squashing” into the visible area instead of clipping |
| Fix | Fixed missing rendering for user images that use NonPremultipliedAlpha alpha mode when simple sublayers are enabled |
| Fix | Fixed a crash in the Caching Manager when a source of an image was being removed from the DOM |
| Fix | Fixed a race condition when Path`s GPU data is being used and copied |
| Fix | Fixed incorrect clipping for elements with transform style |
Version 1.18.2.8
Section titled “Version 1.18.2.8”| Feature | Added universal ICU library working natively on Mac OS X with M1 processors |
| Feature | Made UnityPlugin for Mac an universal library working natively on Mac OS X with M1 processors |
| Feature | Add support for tree-structural pseudo class selectors – first-child, last-child, only-child, nth-child |
| Feature | Added support for the backdrop-filter CSS property for Native and Unity3D |
| Enhancement | Added CSSStyleDeclaration.cssText support |
| Enhancement Unreal Engine | Added an option to install cohtml libraries in the game directory for Unreal Engine |
| Enhancement | Added a new sample demonstrating an example implementation for the ISubLayerCompositor and its integration into an application |
| Enhancement | Implemented BigInt binding and data binding for numbers representable with 64 bits. |
| Enhancement Unreal Engine | Added documentation about how individual Texture settings affects Atlas generation and which are the settings that may be ignored |
| Enhancement | Applied several security vulnerability fixes in V8 |
| Enhancement | Allowed iteration with for…of for DOM collections |
| Enhancement | Implemented an optimization so that parts of some index buffers are reused and less GPU memory is needed. Read the rendering migration guide. |
| Fix | Fixed a crash when passing console methods to async JS methods like setTimeout |
| Fix | Fixed the HTML Parser to not throw warnings on commented code with CSS variables inside |
| Fix | Fixed |= attribute selector matching elements that should not be matched |
| Fix | Fixed incorrect sampling coordinates for elements that are partly outside of the viewport, causing “squashing of the image into the visible portion |
| Fix | Fixed incorrect clipping for elements creating sublayers (e.g. opacity, mix-blend-mode, etc.) that may cause elements disappearing |
| Fix | Fixed rare occurrence of an assert for trying to destroy a missing texture |
| Fix | Fixed incorrect passing of options for the rendering library needed for multithreaded awareness. Read the rendering migration guide. |
| API | Removed support for ARMv7 processors for iOS |
Version 1.17.0.1
Section titled “Version 1.17.0.1”| Enhancement | The Player now supports Mac M1 natively |
| Enhancement | Added support for vw, vh, em, rem size units for inline images |
| Enhancement | Added an option for setting virtual keyboard layout for text to AlphaNumeric in Unreal Engine |
| Enhancement Unreal Engine | 4.27 support |
| Enhancement | Added support for fill-rule attribute in SVGs. |
| Enhancement | Allow usage of element within a element in an SVG. |
| Enhancement | Improved the HTML parser error logging to include better error descriptions |
| Enhancement | Unity3D: Integrate request`s method, body and headers |
| Enhancement | Unity3D: Virtual keyboards for GDK Xbox and Playstation 4/5 consoles. |
| Enhancement | Prevent atlas modifications and show message on screen when Atlas meta-data file is read-only in Unreal Engine |
| Enhancement | Add a way to load UI from different predefined locations (resource hosts) in Unreal Engine |
| Enhancement | Add a way to override and reimplement all input processing in Unreal Engine via the Input Preprocessor feature |
| Enhancement | Updated the Components sample to use the latest version of the coherent-gameface-components |
| Fix | Fixed occasional video freezes and playback issues |
| Fix | Fixed a crash when handling JavaScript events |
| Fix | Fixed asserts when View methods on ChakraCore are called on multiple views. |
| Fix | Fixed showing nodes after changing their styles while they were hidden using display:none |
| Fix | Fixed using heading tags with data-bind-for |
| Fix | Fixed converting JavaScript numbers to integer and unsigned according to ECMA-262. |
| Fix | Fixed baseline offset for inline images with floating point height |
| Fix | Fixed cohtml crash for data binding expressions bound to null values. |
| Fix Unreal Engine | Fixed a crash when |
| Fix Unreal Engine | Made the contained textures inside the Atlas to be Editor only data as they may not be packaged in a Client |
| Fix Unreal Engine | Fixed DedicatedUIThread map OpenSSL module loading check fail in Debug configs on Sony platforms |
| Fix Unreal Engine | Update deprecated Shader Platform API Getter |
| Fix Unreal Engine | Fixed TArray crashes when exposed by |
| Fix Unreal Engine | Fixed failing rebuild of the Cohtml Texture Atlas |
| Fix | Fixed a crash when an inline SVG node is removed from the DOM and then added again. |
| Fix | Fix rare crash when parsing inline SVG content. |
| Fix | Fix broken display of SVG elements when they are added, removed and then readded in the DOM. |
| Fix | Fixed passing float arrays to CoherentToTransformMatrix2D when using the properties. |
| Fix | Unity3D: Fixed gamepad events regression from version 1.15.3.1 |
| Fix | Unity3D: Input manager Enter key char code fixed to 13. |
| Fix | Unity3D: Fixed CohtmlTouchKeyboard and TextInputHandler code flaws |
| Fix | Unity3D: Change system`s resource request calls to be Synchronous |
| API | Unified the custom CSS properties to have a coh- prefix. font-fit-mode is changed to coh-font-fit-mode. The old names are working, but are deprecated. |
| API | Unified the custom attributes to have a coh prefix. caretblinkinterval is changed to cohcaretblinkinterval; coh-inline to cohinline; coh-fastseek to cohfastseek. The old names are working, but are deprecated. |
Version 1.16.5.2
Section titled “Version 1.16.5.2”| Fix | Fixed a crash on document unload related to the unified garbage collection |
| Fix | Fixed video playback freeze when video errors are present |
| Fix | Fixed a crash when a sublayer ends up with zero size |
| Fix | Fixed linking errors when delay loading renoir library with LTCG enabled |
Version 1.16.5.1
Section titled “Version 1.16.5.1”| Feature | ExperimentalUnified garbage collection for JavaScript and C++ DOM objects for V8 |
| Feature | Implemented video element “preload” attribute which now preloads video data for faster seeking |
| Feature | Introduced an example JS library for handling videos with states “coh-state.js” |
| Enhancement | JavaScript garbage collection runs in more incremental steps for V8 |
| Enhancement | Initialize virtual keyboard with the data from HTML input elements attributes in Unity3D |
| Enhancement | Added more native JS array methods to the CoherentArrayProxy |
| Enhancement | Made CSS animations to stop on display:none and restart on showing the element |
| Fix | Fixed text shadows on multiline inline text |
| Fix | Fixed enormous memory allocation when letter spacing is negative |
| Fix | Fixed images drawn with incorrect size when CSS filter is applied |
| Fix | Fixed a regression that failed to parse background shorthand without image/color |
| Fix | Fixed a leak during video playback when the Inspector is enabled |
| Fix | Fixed resource request spam when a video reaches its end |
| Fix | Fixed rare video stalls during playback |
Version 1.16.0.1
Section titled “Version 1.16.0.1”| Feature | Support for Unreal Engine 5 early access |
| Feature | Support for Apple M1 |
| Feature | Moved all GDK platforms to using V8 for JavaScript virtual machine |
| Feature | Added API for setting additional fallback font families for all elements |
| Enhancement | Updated PlayStation 4 SDK to version 8.5 |
| Enhancement | Updated PlayStation 5 SDK to version 3.0 |
| Enhancement | Added json based configuration file for the Player |
| Enhancement | Allowed to automatically bind UFUNCTION methods that have parameters in Unreal Engine |
| Enhancement | Enhanced video API for seek performance |
| Enhancement | Made XHRs not delaying the document load event |
| Enhancement | Improved experimental inline layout support – better layout and input handling |
| Fix | Fixed issue with unnecessary creation of textures (caused by improper clipping of texture based on the parent element) |
| Fix | Fixed styles rematching crash on removing nested data-bind elements |
| Fix | Fixed packaging and running of the Player for Mac OS X for Unity3D |
| Fix | Fixed css rules matching for custom elements not defined in the registry |
| Fix | Fixed missing mutation observer notification on document unloading |
| Fix | Fixed wrong layout when setting explicit 0 dimensions of elements |
| Fix | Fixed scrolling size of elements not accounting for children margins |
| Fix | Fixed accessing delayed stylesheets in scripts |
| Fix | Fixed XHR asserts caused by synchronously finished resource job due to invalidated job id |
| Fix | Reduced an error message severity related to the CaretPositionFromPoint API |
| Fix | Fixed developer options disabling on library re-initialization |
| Fix | Fixed CohtmlTMapBinder.h compiling with non-MSVC compilers |
| Fix | Fix sanitization of URL`s containing hashtag symbols in Unreal Engine |
| Fix | Fix crash with Standalone net mode with more than 1 Player when using a UMG widget with a Cohtml component in Unreal Engine |
Version 1.15.3.2
Section titled “Version 1.15.3.2”| Enhancement | Made the C# backend to be able to fill Renoir`s Rendering capabilities |
| Enhancement | Enabled SDF GPU text algorithm for PlayStation 4 and PlayStation 5 with the C# backend |
| Fix | Fixed memory leak on V8 platforms when navigating to another page |
| Fix | Fixed linking of iOS samples |
| Fix | Fixed running Unity3D editor in game console mode |
| Fix | Fixed texture destruction in the Unity3D C# backend |
Version 1.15.3.1
Section titled “Version 1.15.3.1”| Feature | Added Coherent texture stats and texture stats page In Unreal Engine 4 |
| Feature | Added a new capturing mode for the .rend captures that obfuscates the used image assets |
| Feature | Added Xbox One GDK support for Unity3D |
| Feature | Replaced ChakraCore with V8 for JavaScript engine for Xbox One with the XDK |
| Feature | Replaced ChakraCore with V8 for JavaScript engine for PlayStation 4 |
| Feature | Replaced ChakraCore with V8 for JavaScript engine for PlayStation 5 |
| Enhancement | Added launching the Dev Tools from Unity3D editor on Mac OS X |
| Enhancement | Added support for Android arm64 and x86_64 in Unreal Engine 4 |
| Enhancement | Added new Unreal Engine 4 console command (cohtml.setmipbias N) for setting the mip bias for all textures used by the SDK |
| Enhancement | Improved performance 3x of the C# backend in Unity3D |
| Enhancement | React based samples now provide npm scripts for production and development builds |
| Enhancement | Updated Webpack version to 5.39.0 for React based samples |
| Fix | Fixed crash during compound selector matching due to uninitialized simple selector |
| Fix | Fixed invalid return value of |
| Fix | Fixed input duplication with multiple Systems in Unity3D |
| Fix | cohtml.js`s Universal Module Definition now properly accepts the global window object |
| Fix | Fixed warning logs when C# backend in Unity3D is used |
| Fix | Fixed resource loading in Unity3D for Android |
Version 1.15.1.8
Section titled “Version 1.15.1.8”| Feature | Added support for SVG clip path |
| Fix | Fixed resource loading error when playing video in a loop |
| Fix | Fixed crash when dynamically adding inline SVG images |
| Fix | Fixed drawing of inline SVG images when scrolling |
| Fix | Fixed a crash on Mac OS X in Unity3D with Metal rendering backend |
| Fix | Fixed a crash in style resolving with inline SVG images |
| Fix | Fixed a crash on top-level exception in JavaScript event handler |
Version 1.15.0.1
Section titled “Version 1.15.0.1”| Feature | Inline SVG support |
| Enhancement | Extended support for the SVG Tiny 1.2 Specification |
Version 1.14.3.1
Section titled “Version 1.14.3.1”| Feature | Added an HTML linter that detects spelling errors in Gameface`s data binding attributes |
| Feature | Added support for multiple images in the CSS background shorthand |
| Feature | Exposed Blueprint API for object model removal in Unreal Engine 4 |
| Feature | Added example input forwarding implementation using the Unreal Engine 4 input preprocessor |
| Enhancement | Added V8 for iOS for arm64 and x64 architectures |
| Enhancement | Added documentation about how to run Unreal Engine 4 Editor as a server |
| Enhancement | Package additional UI samples and resources for Unreal Engine 4 |
| Enhancement | Updated GDK support to the 2021 April release |
| Enhancement | Support for Nintendo Switch for Unity3D 2019.4 |
| Enhancement | Optimized setting numeric values to style from JavaScript |
| Enhancement | Optimized matching complex CSS rules without pseudo classes |
| Enhancement | Allow getAnimations to return animations added in the current frame to an element with the forceStylesResolving option |
| Enhancement | Allow intercepting of XmlHttpRequest requests |
| Enhancement | Optimized data-binding-for for often changing collections |
| Enhancement | Added protected virtual onEnable and OnDisable methods in CohtmlView in Unity3D |
| Enhancement | Extended Unity3D documentation with sections about Localization, HDRP/URP, Memory Tracking, Web sockets, DefaultUISystem Devtools |
| Fix | Fixed crash when destroying the view with never updated data-binding expressions |
| Fix | Fixed crashes when stringifying CSS values to JavaScript or the Inspector |
| Fix | Fixed support for shuffled keywords in background position CSS properties |
| Fix | Fixed wrongly reported background position shorthand value in JavaScript |
| Fix | Change the ImageData.ContentRect to match Texture`s imported size in Unreal Engine 4 |
| Fix | Fix asserts and issues with dedicated UI thread HUD in Unreal Engine 4 |
| Fix | Fixed warnings for missing images in certain cases |
| Fix | Fixed auto switch IL2CPP/Mono dll search in UPM package in Unity3D |
| Fix | Always use the C# rendering backend for Xbox One Series X and Nintendo Switch in Unity3D |
| Fix | Fixed NullReference exception when force shutdown on C# recompile triggered in Unity3D |
| Fix | Fixed a possible crash when uninitializing RenderingLibrary in Unreal Engine 4 |
| Fix | Fixed automatic binding always overriding manual CoherentBind in Unreal Engine 4 |
| Fix | Fixed crash in UCohtmlHUD constructor when creating the HUD on a worker thread in Unreal Engine 4 |
| Fix | Fixed wrongly reported errors and warnings in data binding. |
| Fix | Fixed warnings in InternalizationManager and IBreakIterator when building Cohtml plugin for Unreal Engine 4 without UnityBuild |
| Fix | Fixed animation instability that could result in drawing elements and styles with off-by-one pixel error |
| API | arm64 and x64 requires linking with v8_monolith library |
| API | Nintendo Switch now links with a static V8 library |
Version 1.14.1.2
Section titled “Version 1.14.1.2”| Feature | Added support for rotate3d and translate3d transform functions |
| Feature | Added HUD, GameMode and Map, showing how to use actorless UI on dedicated UI thread in Unreal Engine 4 |
| Feature | Added optional memory allocation tracking for the Unity3D plugin |
| Feature | Preview support for V8 on PlayStation 4 |
| Feature | Visual Studio code extension providing autocomplete support for data-binding |
| Feature | Support for clip-path property |
| Enhancement | Support for multiple background images for background-position and background-size |
| Fix | Fixed transform-origin parsing for |
| Fix | Fixed race conditions in user images in Unreal Engine 4 |
| Fix | Fixed marshaling exceptions on C# Rendering Backend when HDRP or URP is enabled in the Unity3D plugin |
| Fix | Fixed asserts about wrong threads when destroying a system in the Unity3D plugin |
| Fix | Fixed crash during quit of the Unity3D editor |
| Fix | Fixed asserts for missing images |
| Fix | Fixed artefacts when an element is clipped and parent has blur |
| Fix | Fixed DX12 backend to clear user images properly |
| Fix | Fixed a rare crash upon applying CSS filters |
Version 1.14.0.7
Section titled “Version 1.14.0.7”| Feature | Support for loading a page in single frame |
| Feature | Added HTML preloading and caching API |
| Feature | Added Stylesheet preloading and caching API |
| Feature | Support for HDR rendering |
| Feature | Added support for position: fixed |
| Feature | Added InstaLoad sample for Windows |
| Feature | Update V8 to 8.8.278.14 for Mac OS X, Linux, Stadia |
| Feature | Added TexturePreloading API in the Cohtml HUD BaseComponent and UWidget |
| Feature | Added support for wide color render targets with 16/32 bits per channel |
| Feature | Added new CSS color definition — color(coh-scrgb float float float float) — that can be used to define color values above 1.0 |
| Feature | Added support for enabling the wide color render targets in Unreal Engine 4 |
| Feature | Added support for enabling the wide color render targets in Unity |
| Feature | Added a new sample that demonstrates the HDR rendering |
| Feature | Added new |
| Feature | Added support for Nintendo Switch for Unity3D |
| Enhancement | Added support for whenDefined in the custom elements API |
| Enhancement | Trigger load event on image elements before the image is uploaded on the GPU |
| Enhancement | Removed AsyncStream requests for textures already loaded in Unreal Engine 4 |
| Enhancement | Add UE4 Editor synchronous resource requests option |
| Enhancement | Add support for data-binding TPair and TMap in Unreal Engine 4 |
| Enhancement | Reduced task scheduling delays for resources when responses are performed synchronously |
| Fix | Fixed expandable objects in the Inspector |
| Fix | Fixed missing vcruntime140_1.dll required by V8 8.8 |
| Fix | Fixed memory leak on Nintendo Switch with V8 |
| Fix | Fixed prototype of upgraded custom elements on V8 platforms |
| Fix | Fixed the console and debugger in the Inspector on Linux and Mac OS X |
| Fix | Fixed a regression that caused a crash when using engine.off during event execution on V8 platforms |
| Fix | Fixed missing installation files with “Add to existing Game” option |
| Fix | Fixed potential crash in SCohtmlWidget when running windowless |
| Fix | Fixed missing shared libraries for Unreal Engine 4 Stadia packages |
| Fix | Fixed graphics artifacts where an element with a drop-shadow effect left trails when its parent element was the same size and was being animated. |
| API | Deprecate duplicate Trigger JS Event Blueprint function |
| API | Added Decoded image state in ImageCacheStats |
| API | Breaking ChangeRemoved static data binder. Developer option “–use-static-binding” will not have effect. |
| API | The API for setting the scene`s rendering target also specifies its format |
Version 1.13.1.3
Section titled “Version 1.13.1.3”| Feature | Improved text rendering |
| Feature | Updated V8 to version 8.8.278 for Microsoft Windows |
| Feature | Precise text layout and positioning |
| Feature | Embedded a last resort fallback font |
| Feature | Implemented font preloading to avoid reading fonts from disk in time critical threads |
| Feature | Nintendo Switch uses V8 for JavaScript execution |
| Enhancement | Optimized matching of complex selectors against DOM elements |
| Enhancement | Add support for automatic binding of UFunctions without parameters in Unreal Engine 4 |
| Enhancement | Added option in Unreal Engine 4 plugin for setting the default font |
| Enhancement | Changed the Unreal Engine 4 plugin modules to be ClientOnly |
| Fix | Fixed growing memory usage when data-bind-for is used inside data-bind-if |
| Fix | Fixed advancing a View without a document |
| Fix | Fixed a layout issue with aligned inline text |
| Fix | Fixed a freeze when using font-fit mode fit |
| Fix | Fix a crash in UMG Editor after saving UMG widgets with Cohtml and GT Widget in Unreal Engine 4.26 |
| API | New font API for preloading fonts with specific font description |
| API | Deprecated the AddFontsFromFolder API |
| API | Deprecated the SetDefaultFallbackFontName API |
Version 1.12.4.2
Section titled “Version 1.12.4.2”| Feature | Added clipboard support in Cohtml Player for Mac OS X |
| Feature | Added support for font-weight CSS property support |
| Feature | Added clipboard support for CohtmlPlugin in Unreal Engine 4 |
| Feature | Added support for media decoders and inspector for UnrealEngine 4 on Nintendo Switch |
| Feature | Added WebSocket support for Unity3D |
| Enhancement | Added support XMLHttpRequest timeout |
| Enhancement | Added support for Unreal Engine 4.26 |
| Enhancement | Added support for Universal Rendering Pipeline for Unity3D |
| Enhancement | Allowed OnEnabled and OnDisabled to be overridden in Unity3D |
| Fix | Fixed exposing the INodeProxy to C# code in Unity3D |
| Fix | Fixed redrawing SVG images every frame |
| Fix | Fixed complex text shaping issues when mixing different languages |
| Fix | Fixed Cohtml Player not working with –root cmd argument on Mac OS X |
| Fix | Fixed freeze when running the video playback sample on a machine without audio devices |
| Fix | Fixed missing context when using mutation observers |
| Fix | Fixed issues with parsing @font-face URL declarations |
| Fix | Fixed parsing of multiple CSS selectors followed by selection pseudo selector |
| Fix | Fixed crash on closing the Player with open Websocket connections |
| Fix | Fixed reversed Ctrl and Command/Meta modifiers on Mac OS X |
| Fix | Fixed crash on Xbox One with Unity3D |
| Fix | Fixed missing JavaScript context during destruction of canvas elements |
| Fix | Fixed layout of flexbox items after changing their text content |
| Fix | Removed usage of Unity3D APIs in static constructors on PlayStation 4 |
| Fix | Fixed clashes between renoir float2 and client float2 types |
| Fix | Fixed parsing of fonts specified with url() without quotes |
| Fix | Fixed mixing of files in a single folder from Unity3D packages for different platforms |
| API | Changed the logging severity of assert failures to be CriticalError and above the current Error level |
| API | The load event is fired after the fonts from the stylesheets have been loaded |
Version 1.12.2.1
Section titled “Version 1.12.2.1”| Feature | Add aspect ratio media feature support |
| Feature | Added support for the change event listener for input and textarea elements |
| Enhancement | Support VW/VH suffices in scrollTop and scrollLeft element properties |
| Enhancement | getModifierState support for Keyboard and Mouse events |
| Enhancement | Update PlayStation 4 to SDK 8.0 |
| Enhancement | Update PlayStation 5 to SDK 2.0 |
| Fix | Fix image alignment with coh-inline paragraphs |
| Fix | Fixed CohtmlToTransformMatrix2D to handle invalid inputs |
| Fix | Fixed text-transformation styles sticking to detached nodes |
| Fix | Added I18NManager in Unity3D for PlayStation 4 and PlayStation 5 |
| Fix | Fixed View flicking when creating multiple views |
| Fix | Fixed a crash in FInternationalizationManager class |
| Fix | Fixed crash when passing null for custom data-binding attribute state |
| Fix | Fixed mouse cursor notification for input fields without explicit type |
| Fix | Fixed event.target.selection indices for input elements |
| Fix | Fixed the timestamp for gamepad events in Unreal Engine 4 |
Version 1.12.0.1
Section titled “Version 1.12.0.1”| Feature | Support for CSS property text-stroke |
| Feature | Support for layout and display of text in complex scripts |
| Feature | Support CSS transitions for shorthand properties |
| Feature | Add a way to pick the primitive that the Gameface component attaches to by specifying its name in Unreal Engine 4 |
| Feature | Experimental] New Unity C# backend. It is supported for Unity 2019.3 or newer and for every platform except MacOSX, iOS and Androd. |
| Feature | Support for Xbox Series X in Unity. The platform is supported only with C# rendering backend. |
| Enhancement | Added Gameface Mac Player and Launcher to the UE4 packages |
| Enhancement | Added mechanism for reusing ViewStates between HUD/UWidget recreations in Unreal Engine 4 |
| Enhancement | Added vw, vh suffices for scrollHeight and scrollWidth properties |
| Enhancement | Added HTTP support for the Player on Mac OS X |
| Fix | Fixed crash when binding JavaScript models with null value |
| Fix | Fixed a crash when invoking innerHTML inside custom element callbacks |
| Fix | Fixed wrongly calculated dimensions when using dynamically sized flex containers |
| Fix | Fixed performance regression caused by allowing multiple paint rectangles |
| Fix | Fixed XHR response status code propagating to JavaScript |
| Fix | Fixed event.target.selection index values on input events |
| Fix | Trigger video onerror for unsupported codecs and errors during decoding |
| Fix | Fixed document loading after image loading has been canceled |
| Fix | Fixed custom event attributes handling on cloned elements |
| Fix | Fixed suffixed properties like right[PX|VH|VW] in computed styles |
| Fix | Fixed potential crash during initialization on Mac OS X |
| Fix | Fixed default input element cursor |
| Fix | Ignore unsupported CSS selectors and continue parsing the stylesheet |
| Fix | Fixed allocations without tags in MediaPlayerSourceBuffer |
| Fix | Fixed accumulating unresolved promises for engine.call invocations with missing C++ handlers |
| Fix | Fixed setting timestamp value when updating the gamepad data in Unreal Engine 4 |
| Fix | Fixed user image request leaks that caused deadlocks |
| Fix | Fix possible broken state of ClickThroughQuery after resize |
| Fix | Fix crash when game starts with Korean language |
| Fix | Fix crash in break-iterators due to incorrect string conversion in Unreal Engine 4 |
| Fix | Add proper handling of overlapping border radii when clipping with rounded rectangle and filling and stroking rounded rectangle |
| API | Add API for setting rendering resolution, independent from the HTML resolution Render sublayers that are transformed with the correct scaling as well |
| API | Expose methods for setting all the caches |
| API | Calls to engine.call without C++ handler bound, will reject the returned promise objects |
| API | Modify the Renoir backends initialization so that all constructors take a single settings object |
Version 1.11.0.1
Section titled “Version 1.11.0.1”| Feature | Added experimental generation of text atlases on GPU |
| Enhancement | Increased maximum allowed blur radius for blur effects from 24px to 95px. |
| Enhancement | Added PlayStation 5 CommonGame and samples |
| Enhancement | Added XboxSeriesX CommonGame and samples |
| Enhancement | Added XboxOneGDK CommonGame and samples |
| Fix | Fixed Player failing to start in evaluation packages |
| Fix | Fixed crash when updating and unregistering a model in the same SynchronizeModels |
| Fix | Fixed keeping unresolved promises for engine.call calls without a C++ handler registered for the call |
| Fix | Fixed crash when calling UnloadDocument explicitly before destroying a view or navigating to another URL |
| Fix | Fixed ES6 modules crash and assert failure in Debug configuration |
| Fix | Fixed parsing CSS stylesheets containing unsupported media queries |
| Fix | Fixed evaluation of data-binding expression after unregistering and registering model for a second time |
| Fix | Fixed ChakraCore crashes and possible memory leaks due to missing context |
| Fix | Reduced video buffer size to reduce memory consumption |
| Fix | Fixed performance regression of finished animations with fill mode forwards/both |
| Fix | Fixed PlayStation 4 and XboxOne assembly definitions in Unity3D UPM package. |
| Fix | Fixed using the inspector with Unity3D UPM packages |
| API | Calls to engine.call without a C++ handler registered and no failure callback for the promise will trigger error messages |
Version 1.10.0.2
Section titled “Version 1.10.0.2”| Feature | Added support for custom elements upgrading (V1 API) |
| Feature | Added support for drawing and styling all HTML tags |
| Feature | Added support for break-iterator for Asian text in UnrealEngine 4 |
| Enhancement | GPU timing for Nintendo Switch is now available when doing a performance trace in the Inspector |
| Enhancement | Added packaging of V8 libraries with separated debug symbols for Unix based platforms in UnrealEngine 4 |
| Fix | Fixed a crash in V8 due to double exposing of the same C++ objects |
| Fix | Fixed a crash when reloading a view with JavaScript breakpoint set at file level |
| Fix | Fixed color interpolation between semi-transparent colors |
| Fix | Fixed a rare issue causing nesting of events in the inspector performance timeline |
| Fix | Fixed frontend and backend inspector performance events not appearing in the timeline |
| Fix | Fixed disappearing elements when using gradients as masks |
| Fix | Fixed wrong pending image counter causing an assert failure in Debug |
| Fix | Fixed the scroll of Computed style panel in Inspector`s Elements tab |
| Fix | Fix assertion caused by |
| Fix | Fixed crash when game starts with Korean language in UnrealEngine 4 |
| Fix | Fixed crash in Cohtml break-iterators due to incorrect string conversion in UnrealEngine 4 |
Version 1.9.9.8
Section titled “Version 1.9.9.8”| Fix | Fixed crash when calling FreeRenderingResources on views with SVG images |
| Fix | Fixed possible leak of SVG tessellated data |
Version 1.9.9.5
Section titled “Version 1.9.9.5”Version 1.9.9.2
Section titled “Version 1.9.9.2”| Enhancement | Added support for the background-position-x and background-position-y CSS properties |
| Enhancement | Improved Dualshock 4 controller support for Unity3D |
| Fix | Fixed wrongly fired resource abort notifications for already completed requests |
| Fix | Fixed race issues when executing layout tasks in parallel |
| Fix | Fixed linker issues when the library is delay loaded with certain compiler options |
| Fix | Fixed a crash which was occurring during event dispatching |
| Fix | Fixed an error about missing context argument in engine.off |
| Fix | Fixed a bug causing rare failures to load style sheets |
| Fix | Improved tagging of memory allocations to better reflect its usage |
| Fix | Fixed chaining CSS animations on the same CSS property |
| Fix | Fixed by ref binding of empty |
| Fix | Removed requirement for Vulkan runtime on Windows for Unity3D plugin |
| Fix | Fixed scrolling on Linux in Unity3D with the new InputSystem |
| Fix | Fixed Unity3D editor deadlocks when stopping the game |
| Fix | Fixed checkout issues for Perforce users in the Unreal Engine 4 plugin |
| Fix | Fixed memory alignment issue in VirtualAllocators on PS5 and Switch |
| API | Added option to disable internal allocators that retain memory |
| API | Added “pixels per scroll” to set the speed of the scrolling in Unity3D |
| API | Increased the version of cohmtl.js – update all your copies |
Version 1.9.7.2
Section titled “Version 1.9.7.2”| Feature | Support for WebSockets in Unreal Engine 4 |
| Fix | Fixed disappearing elements with certain style changes |
| Fix | Fixed crash when registering new engine.on handers during execution of a handler |
| Fix | Fixed crash when locking vertex or index buffers fails |
| Fix | Renamed internal rapidjson and rapidxml libraries to avoid clashes |
Version 1.9.5.4
Section titled “Version 1.9.5.4”| Feature | Added line break iterator API to aid text wrapping |
| Feature | Enabled saving profile from Inspector`s Performance tab |
| Feature | Added support for aborting of resource requests when the view is destroyed or navigate to another page |
| Feature | Update PlayStation 4 SDK to version 7.5 |
| Feature | Added setting for converting property names to lower case in Unreal Engine 4 when using the automatic UType binder |
| Feature | Added a special CSS property “coh-composition-id” which allows users to compose the element with a custom renderer |
| Feature | Added special CSS properties “coh-custom-effect-name” along with several custom animatable parameters that allow users to apply a custom shader to the element |
| Feature | Added new RendererCaps members which allow customizing the maximum allowed texture size. These new properties must be filled in the |
| Feature | Support for Live Views in Unity3D |
| Enhancement | Increased the maximum allowed paint rectangles |
| Enhancement | Paint rectangles now leave a short trail |
| Enhancement | Made CohtmlView and CohtmlUISystem Unity3D specific methods virtual |
| Enhancement | Added customizing the Library configuration in Unity3D |
| Fix | Fixed getPropertyValue for the transform CSS property |
| Fix | Fixed crash when using toLocaleLowerCase on Xbox |
| Fix | Fixed FInputGesture deprecated warnings in Unreal Engine 4 |
| Fix | Fixed History feature minor memory retention on reload |
| Fix | Fixed capital letters, spaces and special characters in Unity3D with the new Input System |
| Fix | Fixed multiple views rendering and overlaying in HDRP mode for Unity3D |
| Fix | Fixed crash in the CSS parser for malformed calc expressions |
| Fix | Fixed crash when toggling view visibility in Unreal Engine 4 |
| Fix | Fixed crash when responding to resource requests after destroying the library in Unreal Engine 4 |
| API | Added an API for an external break iterator implementation |
| API | Add |
| API | Add |
| API | Added API for clearing the navigation history of a given |
| API | Added an option to receive resource request calls on the main thread |
Version 1.9.2.4
Section titled “Version 1.9.2.4”Version 1.9.2.2
Section titled “Version 1.9.2.2”| Feature | Paint rectangles can be toggled by the Inspector rendering panel |
| Enhancement | Added support for percent values in SVG images |
| Enhancement | Reduced per-frame allocations for transformations |
| Enhancement | Extended the performance timeline of the Inspector with additional events |
| Enhancement | Made the destruction of the UCohtmlWidget non-blocking in the Unreal Engine 4 plugin |
| Fix | QuerySelectorAll returns elements in the correct depth-first-search order |
| Fix | Fixed crash when dispatching events during document unloading |
| Fix | Fixed crash when starting a XmlHTTPRequest during document unloading |
| Fix | Fixed elements disappearing during scrolling |
| API | Deprecated the Android builds with the gnustl standard library. They are moved to the *_gnustl folders |
| Fix | Fixed lifetime of the AudioWrapper objects in the Unreal Engine 4 plugin |
| Fix | Fixed the plugin unload order in the Unreal Engine 4 |
| Fix | Crash when responding to XmlHTTPRequests after the plugin has been uninitialized in Unreal Engine 4 |
Version 1.9.0.12
Section titled “Version 1.9.0.12”| Feature | Support for Unreal Engine 4 4.25 |
| API | This version is not compatible with versions of Unreal Engine 4 different that 4.25 |
Version 1.9.0.11
Section titled “Version 1.9.0.11”| Feature | Unity3D Package Manager packages for console platforms |
| Feature | Added custom memory allocator support to Renoir backends |
| Feature | Added callbacks for resources lifetime in Renoir backends |
| Enhancement | Improved the performance of loading font collections |
| Enhancement | Reduced the repaint area when a small part of the view is changed |
| Enhancement | Improved error messages when binding map-like objects with non-string keys |
| Enhancement | Improved using custom SystemSettings in Unity3D |
| Enhancement | Added engine.off information to the Documentation |
| Enhancement | Updated support for Unity3D HDRP to the latest rendering pipeline API changes |
| Fix | Text wrapping properly respects |
| Fix | Query selectors and CSS selectors work with data- attributes |
| Fix | Fixed crash when multiple gradient definitions are parsed in parallel |
| Fix | Fixed assert on view destruction for ChakraCore platforms with multiple views and data-binding are used |
| Fix | Fixed degrading performance when using hover on complex selectors |
| Fix | Fixed updated layout styles depending on rem or em units when the unit changes |
| Fix | Fixed flex properties that continued to be in effect after removing their CSS declarations |
| Fix | Fixed loading resources with a backslash in the URL for Unity3D |
| Fix | Fixed gamma-correctness for Unity3D HDRP |
| Fix | Fixed handling of events by the TextInputHandler when Advance() is not called on the System |
| Fix | Fixed crash caused by updating of the pointed/hovered elements after scrolling. |
| API | Deprecated handled flag for input events |
Version 1.8.2.10
Section titled “Version 1.8.2.10”Version 1.8.2.5
Section titled “Version 1.8.2.5”| Feature | Added support for images that have non-premultiplied alpha |
| Enhancement | Updated Unity3D HDRP rendering support to new Unity3D 2019.3 |
| Enhancement | Mouse pointer events are handled during scrolling |
| Enhancement | Added localization sample with React |
| Fix | Fixed border color when top side of the border is missing |
| Fix | Fixed pointer-events for HTML elements when the parent is clipped or creates a stacking context |
| Fix | Fixed typing into text input fields when text transform is used |
| Fix | Fixed Unity3D warning about package version using more than 3 numbers |
Version 1.8.1.4
Section titled “Version 1.8.1.4”| API | Changed Unity3D license keys – please download your new key from the developer portal |
| Feature | Added support for multiple UISystem instances in Unity3D |
| API | Refactored the Unity3D plugin to be based on the vanilla C++ API |
| Enhancement | Localization works for elements that are added dynamically to the DOM |
| Enhancement | Added support for DirectX 12 to the Unity3D plugin |
| Fix | Fixed running Unity3D with Vulkan on Linux |
| Fix | Fixed text transformation on dynamically created elements |
| Fix | Reintroduced the scrolling optimization with fixes for the artifacts and input issues. |
Version 1.8.0.11
Section titled “Version 1.8.0.11”| Feature | |
| Enhancement | Allowed registering models with complex sub-model as a first member (on the same address) |
| Fix | Fixed array-like behavior of NodeList collections for platforms using ChakraCore |
| Fix | Improved rendering of SVGs when background-repeat with transformations is used |
| Fix | Fixed crash when destroying the view or navigating to a different URL with XML HTTP Requests in flight |
Version 1.7.4.1
Section titled “Version 1.7.4.1”| Fix | Reintroduced the scrolling optimization with fixes for the artifacts and input issues. |
Version 1.7.3.1
Section titled “Version 1.7.3.1”| Enhancement | Added sample with polyfill for |
| Enhancement | Added sample for using subtitles for videos |
| Enhancement | Moved text case transformations to the DOM thread |
| Fix | Fix turned off the scrolling optimization, because it can break the input in certain cases |
| Fix | Fix layout overwriting the scroll position set on the DOM thread |
| Fix | Fix crash when element change parents with overflow: hidden |
| Fix | Fix some animations not running to complete 100% |
| Fix | Fix crashes due to missing temporary allocator in TriggerEvent when calling it from fibers or different threads |
| Fix | Fix scrollWidth for text with overflow |
| Fix | Fix coordinated for scroll event in Unity3D packaged games |
| Fix | Fix Unity3D reloading when TextTransformationManager is used |
| Fix | Fix scrolling coordinates with the new Unity3D input system |
Version 1.7.0.15
Section titled “Version 1.7.0.15”| Fix | Reintroduced the scrolling optimization with fixes for the artifacts and input issues. |
Version 1.7.0.14
Section titled “Version 1.7.0.14”| Fix | Reverted scrolling optimization due to causing artifacts and input issues. |
Version 1.7.0.12
Section titled “Version 1.7.0.12”| Enhancement | Improve performance of scrolling and hit tests |
| Enhancement | Improve performance of reading font files |
| Enhancement | Add virtual list scrolling sample |
| Enhancement | Add support gamepad with Input Manager in Unity3D |
| Enhancement | Implement gamepad editor tool to insert gamepad controls in Unity3D |
| Enhancement | Add units support for flex basis |
| Enhancement | Add support for preloaded images in Unity3D with DirectX 12 |
| Enhancement | Support building the PlayerOverrides project in Unreal Engine 4 |
| Fix | Fix crash in video when there are multiple layout threads and views are not updated every frame |
| Fix | Fix scrolling in elements with dynamically changed content and size |
| Fix | Fix crash when using data-bind-for for a string value |
| Fix | Fix crash when converting a non-boolean value to boolean for data-binding |
| Fix | Fix undefined behavior when binding empty arrays and vectors |
| Fix | Fix clearing of canvas textures in certain cases |
| Fix | Add missing temp allocator for IME related methods of |
| Fix | Fix scrolling and panning when it is performed very slowly |
| Fix | Fix triggering events with null objects from C# to JavaScript in Unity3D |
| Fix | Fix changing styles in the inspector in Chrome 80 and later |
| Fix | Fix submission warnings for debug symbols on Stadia |
| API | C++ standard library to libc++ on Stadia |
| API | C++ standard library to libc++ on Linux |
| API | Add developer option for controlling whether to snap the display boxes before transforming. Warning: Enabling this option results in more repainting. |
Version 1.6.1.1
Section titled “Version 1.6.1.1”| Feature | Support for WebSockets (see the documentation how to use them) |
| Feature | Support for Android x86_64 |
| Feature | Moved Unity3D packages to use the Unity3D Package Manager |
| Enhancement | Improved support for nullable types in Unity3D |
| API | Moved COHTML_BUILD_VERSION and COHTML_SDK_VER to |
Version 1.6.0.4
Section titled “Version 1.6.0.4”Version 1.6.0.1
Section titled “Version 1.6.0.1”| Enhancement | Significantly reduced memory usage of SVG images |
| Enhancement | Exposed the image cache inspection API to Unity3D |
| Enhancement | Added support for DateTime struct in Unity3D |
| Enhancement | Added support for read-only List in Unity3D |
| Feature | Support for Unreal Engine 4 4.24 |
| Fix | Fixed drawing order for combinations of elements with z-index and positioning |
| Fix | Fixed several issues with stroking paths in SVG images |
| Fix | Fixed clipping child elements when parent has border-radius |
| Fix | Fixed text selection and caret placement on transformed text |
| Fix | Firing events on wrong elements in certain cases |
| Fix | Fixed text alignment with text-overflow |
| Fix | Fixed parsing floating point numbers in stylesheets on non-US locale POSIX based platforms |
| Fix | Exposed UnbindCall and UnregisterEvent to Unity3D |
| Fix | Exposed ITextTransformationManager to Unity3D |
| Fix | Fixed exposing FString on POSIX based platforms |
Version 1.5.0.1
Section titled “Version 1.5.0.1”| API | Improved anti-aliasing |
| Feature | Added a dropdown ( |
| Feature | Added new input sample using the text entry API |
| Feature | Support for Unity3D new InputSystem |
| Enhancement | Fixed pathological memory usage with better GC heuristics |
| Enhancement | Vertex and index buffers for SVGs are properly reused |
| Enhancement | Added rotate-around-point for SVG |
| Fix | Fixed various issues with scaling SVGs |
| Fix | Fixed assert when using box-shadow on an element with width 0 |
| Fix | Fixed bitmap fonts reloading after FreeRenderingResources |
| Fix | Fixed support for SVGs with transform and gradients |
| Fix | Fixed crash when seeking a paused video |
Version 1.4.2.2
Section titled “Version 1.4.2.2”Version 1.4.2.1
Section titled “Version 1.4.2.1”| Fix | Fixed regression in rendering certain SVGs with applied transformation |
| Fix | Fixed text-shadow being rendered when the text is not visible |
Version 1.4.2.0
Section titled “Version 1.4.2.0”| Feature | Unity3D support for Linux |
| Feature | Unity3D support for PlayStation 4 |
| Enhancement | Made async and defer scripts work according to the standard |
| Enhancement | Enhanced the Player to support DPI on Mac OS X |
| Fix | Fixed styling of elements affected by attribute based CSS selectors |
| Fix | Fixed using preloaded images in Unity3D on Xbox One |
| Fix | Fixed [] of dom collections to return undefined for invalid indices |
| Fix | Fixed using sampler filtering for bitmap fonts |
| Fix | Fixed detecting mouse events on elements with certain transformations |
| Fix | Exposed the ILocalizationManager to Unity3D |
| Fix | Fixed SVGs disappearing with certain transformations |
| API | Fixed gamepad indices to work as specified by the standard. Read more about the changes |
Version 1.4.1.0
Section titled “Version 1.4.1.0”| Feature | Dynamic data-binding is available as an experimental option |
| Feature | Support for gamepad in Unity3D |
| Feature | Support for custom plugins in the Player |
| Feature | Support for localization in the Player |
| Feature | Added the document.elementFromPoint and document.elementsFromPoint methods |
| Enhancement | Support for the text-overflow CSS property |
| Enhancement | Support for the white-space CSS property |
| Enhancement | Reduced memory consumption of CSS variables |
| Enhancement | Added support for BC7 compressed textures |
| Enhancement | Improved performance of dash stroke paths |
| Enhancement | Enhanced new text entry API |
| Enhancement | Added option for controlling vertex and index buffer ring size |
| Enhancement | Added option for controlling the SDF character size for font rendering |
| Enhancement | Improved layout for text with different alignment |
| Enhancement | Added relatedTarget to JavaScript events |
| Enhancement | Added support for HTTP(S) resources in Unity3D |
| Enhancement | Added location for keyboard events in Unreal Engine 4 |
| Enhancement | Added location and isRepeat for keyboard events in Unity3D |
| Fix | Fixed drawing of positioned elements below non-positioned elements |
| Fix | Fixed GC triggered crash in Unreal Engine 4 with preloaded images |
| Fix | Fixed borders when border-radius is used |
Version 1.4.0.3
Section titled “Version 1.4.0.3”| API | New License Keys have been generated! |
| Feature | Support for Google Stadia for native and Unreal Engine 4 |
| Feature | Support for Linux for native and Unreal Engine 4 |
| Feature | Support for Unreal Engine 4.23 |
| Enhancement | Data-binding attribute for mask-image |
| Enhancement | Moved shaders inside the plugin for Unreal Engine 4 |
| Enhancement | Updated Preact sample and documentation |
| Enhancement | Added first tier of a more powerful text entry API |
| Enhancement | Gamepad support for the Player on Mac OS X |
| Enhancement | Added API to control which resources can be loaded from a view |
| Fix | Fixed issues with using the IME and changing focus |
| Fix | Fixed the order of applying transformations and filters to elements |
| Fix | Fixed box shadows visible for non-visible elements |
| Fix | Fixed adding visible children to non-visible elements |
| Fix | Fixed video playback in Unreal Engine 4 on Mac OS X |
| Fix | Fixed setting relative URL using the history API |
| Fix | Fixed crash when calling C++ method from JavaScript inside engine.on events |
| Fix | Scaling SVG`s no longer results in wrong transformations |
| Fix | Fixed mouse buttons for MouseEvent in Unreal Engine 4 |
Version 1.3.2.1
Section titled “Version 1.3.2.1”| Enhancement | Added support for five button mouse events |
| Enhancement | Added support for scroll events for textarea |
| Enhancement | Support for pre tags |
| Enhancement | Added support for the change event for input elements |
| Enhancement | Added UserIndex for virtual keyboard support in Unreal Engine 4 |
| API | Added API to customize the resource loading in Unreal Engine 4 |
| Fix | Fixed controller indices when connecting and disconnecting multiple controllers |
| Fix | Fixed the garbage collector on PlayStation4 to collect more aggressively on certain loads |
| Fix | Fixed several JavaScript engine crashes on PlayStation4 and Xbox One |
| Fix | Fixed crash when calling C++ methods with wrong number of arguments from JavaScript |
| Fix | Fixed reversed mouse scroll in Unreal Engine 4 |
Version 1.3.1.4
Section titled “Version 1.3.1.4”| Fix | Fixed rendering artifacts related to text without specified width. |
| Fix | Fixed memory corruption on PlayStation 4, XBox One, iOS, UWP. |
Version 1.3.1.1
Section titled “Version 1.3.1.1”| Feature | Support for mixing languages and fonts in a single text. |
| Enhancement | Updated Android samples projects to support ARM64 |
| Enhancement | Updated Android samples projects to Android Studio 3.4 |
| Enhancement | Added support for optional RequireJS modules with error event for script and link elements |
| Fix | Fixed the offsetWidth and offsetHeight functions for hidden elements |
| Fix | Fixed using custom-element-tag as selector in CSS stylesheets |
| Fix | Enabled ARC for the metal backend library |
| Fix | Fixed cooking game on the fly with Unreal Engine4 |
| Fix | Fixed crash when removing DOM elements with data-binding attributes |
Version 1.3.0.2
Section titled “Version 1.3.0.2”| Feature | Added ability to define Custom data-binding attributes |
| Feature | Vulkan backend Windows implementation for the native SDK |
| Feature | Experimental Unreal Engine 4 Switch support. Video and inspector arenot supported yet. |
| Feature | Experimental support for libc++ for Android |
| Feature | Experimental support for Android ARM64 |
| Feature | Added support for CSS cursors in Unreal Engine 4 |
| Feature | Added text-transform for Unreal Engine 4 |
| Feature | Added an API to advance a view, without it rendering anything |
| Feature | Added support for overflow-wrap CSS property |
| Enhancement | Added DPI scaling to the player application |
| Enhancement | Added data-bind-font-size |
| Enhancement | Enhanced virtual keyboard support for Unreal Engine 4 |
| Enhancement | Added engine.whenReady promise object, equivalent toengine.on(‘Ready’) |
| Enhancement | Added support for mipmaps in DDS textures |
| Enhancement | Added support for the touchmove event |
| Enhancement | Added controller support in the PlayStation 4, Nintendo Switch andUWP samples |
| API | Added API to control the size of the text atlas texture |
| Fix | Fixed assert when creating input elements in multiple views |
| Fix | Fixed missing invocations to the finish callback of animations |
| Fix | Fixed restarting an animation inside the finish callback |
| Fix | Fixed logging warnings in cohtml.js |
Version 1.2.3.1
Section titled “Version 1.2.3.1”| Fix | Fixed crash when using by-value getters in data-binding |
| Fix | Fixed crash when recreating views on PlayStation 4 |
| Fix | Fixed missing text on the UMG widget on PlayStation 4 |
| Fix | Fixed broken gradients on the UMG widget on PlayStation 4 |
| Fix | Fixed rendering uninitialized textures with the UMG widget on Xbox One |
Version 1.2.2.3
Section titled “Version 1.2.2.3”| Feature | Added the :active pseudo selector |
| Feature | Added the visibility CSS property |
| Feature | Added the KeyboardEvent.repeat property |
| Enhancement | Added data-bind-html, which allows to set innerHTML with data-binding |
| Enhancement | Allowed the localization texts to contain html tags |
| Enhancement | Added the load event to script and stylesheet elements |
| Enhancement | Enhanced log messages for wrong property names used for data-binding |
| Enhancement | model}} (without property) can be used for data-binding |
| Enhancement | Scrolling works correctly with nested scrollable elements |
| Enhancement | Automatically casting enum types to int for iOS and Switch for binding |
| Enhancement | Binding supports long numbers |
| Enhancement | Regular on event handlers work with data-bind-for |
| Enhancement | Not handled promise rejections are logged |
| Enhancement | Added engine.unregisterModel API to unregister a model from JavaScript |
| Enhancement | Added an API to set the ILocalizationManager in Unreal Engine 4 integration |
| Enhancement | Added support for exposing UDataTable to JavaScript |
| Enhancement | Added ability to customize the automatic binding in Unreal Engine 4 |
| Fix | Fixed disappearing SVG images when background-image property is changed |
| Fix | Positioning of text caret in text inputs with alignment |
| Fix | Fixed text selection when text has CSS transform |
| Fix | Fixed crash in Unreal Engine 4 when chaining multiple property accesses in data-binding |
| Fix | Fixed the gamepaddisconnected event to contain which gamepad has been disconnected |
| Fix | Fixed cloneNode to clone attached event listeners |
Version 1.2.1.1
Section titled “Version 1.2.1.1”| Feature | Updated Unreal Engine to 4.22 |
| Fix | Fixed crash when using |
| Fix | Fixed support for React v16.5 |
| Fix | Fixed using iterator names that are prefix of other iterator namesin data-binding |
| Fix | Fixed using |
| Fix | Fixed indexOf and slice for arrays exposed by-ref on ChakraCoreplatforms |
Version 1.2.0.4
Section titled “Version 1.2.0.4”| Feature | Added support for CSS transitions |
| Feature | Added support for pointer-events CSS property |
| Feature | Enhanced the flex CSS property to support setting grow and shrink |
| Feature | Added support for CSS cursors |
| Feature | Added support for the console tab and script debugging on Mac OS X |
| Feature | Added support for mix-blend-mode: add |
| Feature | Added support for KeyboardEvent.location |
| Feature | Added support for copy and paste |
| Feature | Added support for Home and End keys |
| Feature | Added automatic sizing for text fields |
| Feature | Added API to get the Nodes attributes from |
| Feature | Added text selection to all elements |
| Enhancement | Refactored Renoir backend API to work better with low-level rendering APIs like Metal |
| Enhancement | Replaced JavaScriptCore with ChakraCore on Xbox One and PlayStation 4 |
| Enhancement | Replaced JavaScriptCore with V8 on Mac OS X |
| Enhancement | The inspector no longer disconnects when the view is reloaded |
| Enhancement | Significantly improved inspector loading speed for pages with lots of elements |
| Enhancement | Data-binding attributes are visible in the inspector |
| Enhancement | Reduced thread-local variables count to allow running on more Android devices |
| Enhancement | Android uses the Android NDK r15b |
| Enhancement | Added gestures support in Unity3D |
| Enhancement | Added range requests support in Unity3D |
| Enhancement | Added gamepad support to PlayStation4 samples |
| Enhancement | Improved performance for drawing polylines in canvas |
| Enhancement | Allowed loading stylesheets encoded in UTF-8 with BOM |
| Enhancement | Moved V8 background tasks to worker threads tasks |
| Enhancement | Added GPU debug metadata in Unreal Engine 4 |
| Enhancement | Implemented animation shorthand CSS property |
| Enhancement | Added custom HTMLMediaElement events signaling when a decoder cannot keep up (cohplaybackstalled) and when it catches up (cohplaybackresumed). These events can be used to synchronize other animations with the video playback. |
| Enhancement | Seeking paused videos now shows a preview of the sought position |
| Enhancement | Added non-standard property to the CanvasRenderingContext2D “enableFastLineSegmentDrawing” which can allows much faster drawing in a canvas if the image consists of line segments only |
| Fix | Fixed assert when calling bound C++ methods with incorrect arguments from JavaScript |
| Fix | Fixed assert when removing the src attribute of an img and reloading the view |
| Fix | Fixed using the skewX property in animations |
| Fix | Fixed leaking some GPU resources on reloading the view |
| Fix | Fixed calling the connectedCallback on custom elements in appendChild |
| Fix | Fixed calling bound methods on objects that have been removed with |
| Fix | Fixed using unsigned numbers for specifying a color in data-binding |
| Fix | Fixed possible memory leak of ParseHTML when the system is destroyed before the load has finished. |
| Fix | Fixed crash when using canvas stroke with gradient |
| Fix | Fixed Inspector to show all transformations on an element with multiple transformations. |
| Fix | Fixed currentTime attribute when the animation is paused |
| Fix | Fixed onBlur, onFocus events on input elements when using React |
| API | Changed Renoir API to allow simultaneous usage from Coherent GT and Gameface |
| API | Split Renoir backend in UnrealEngine 4 to a separate module |
| API | Added virtual destructors to pure virtual classes and structs |
| API | Added default implementation to ViewListener`s methods |
| API | Renamed Renoir library files to start with lib |
| API | Moved enable color writes to the PSO instead of SetRenderTarget param. This is part of a breaking change in Renoir backends. For more information, see the migration guide |
| API | Moved MSAA to the PSO. This is part of a breaking change in Renoir backends. For more information, see the migration guide |
| API | Added upload buffer (constant buffers) management in Renoir. This is part of a breaking change in Renoir backends. For more information, see the migration guide |
| API | Moved auxiliary constant buffers from the Renoir backend to Renoir core library. This is part of a breaking change in Renoir backends. For more information, see the migration guide |
| API | Started doing ClearQuad instead of ClearRenderTarget based on new backend capability. This is part of a breaking change in Renoir backends. See the For more information, see the migration guide |
| API | Added BeginRenderPass and EndRenderPass backend commands to Renoir. This is part of a breaking change in Renoir backends. See the For more information, see the migration guide |
Version 1.1.0.4
Section titled “Version 1.1.0.4”| Feature | Added default rendering backend implementation for the Metal graphics API |
| Feature | Added support for CSS Custom properties (variables) |
| Feature | Added support for CSS “!important” rule |
| Feature | Added support for multiple values in the CSS background-image property |
| Feature | Added support for the CSS calc() function. Currently, mixing percentages with other value types is not supported. |
| Feature | Selection API for input and textarea |
| Feature | Added support for CSS ::selection pseudo element |
| Feature | Added support for CSS :root pseudo-class |
| Feature | Added cache control API for clearing and setting sizes of caches |
| Feature | Added JavaScript capturing event phase processing |
| Enhancement | Added support for the letter-spacing CSS property for inputs, buttons and textareas |
| Enhancement | Added default styles for input, button and textarea |
| Enhancement | Added text-align support for input, button and textarea |
| Enhancement | Improved support for SVGs without viewBox |
| Enhancement | Cohtml.js can be used in a standard web browser. Significantly increases the compatibility of pages testing in web browsers. |
| Enhancement | Added samples for workflows based on WebPack and Redux |
| Enhancement | Add support for multiple data models in data-bind expressions |
| Enhancement | Upgraded the JavaScript VM on Windows and Android to V8 6.9.427The Debug configuration now uses V8 build in Debug, so there will be more error checking at the cost of some performance |
| Enhancement | Reduced the count of dynamic TLS slots allocation for Nintendo Switch |
| Enhancement | Added support for Unreal Engine 4.21 |
| Enhancement | Implemented path stroking/filling with gradients in canvas elements |
| Fix | Added CloneNode for CustomElements |
| Fix | Fixed CustomElement |
| Fix | Fixed canvas element resize behavior (canvas context state is now correctly reset) |
| Fix | Added missing ICU library to the Nintendo Switch package |
| Fix | Fixed animations` currentTime in Web Animations API (it was reported incorrectly when the animation is paused) |
| Fix | Fixed crash on Nintendo Switch when not passing a custom log handler |
| API | Input elements no longer inherit the font related styles of their parents |
| API | Added GPU debug metadata emission useful for graphics debugging.Enable with |
Version 1.0.0.6
Section titled “Version 1.0.0.6”| Feature | UWP Added support for UWP ARM. |
| Feature | UWP The SDK will now use ChakraCore as JavaScript VM on UWP x86. JavaScriptCore is still the JSVM for UWP x64. This nets about 30% performance increase in JavaScript execution. ChakraCore on UWP x64 will be available in a later release. |
| Feature | API Added initial support for virtual lists to the data binding system. Virtual lists allow users to work on sections of some lists of data instead of the full data. For example, you might want to display only the first 5 items of your in-game store instead of all items. See the docs for engine.makeVirtualList. This release brings support for pagination i.e. splitting your list into pages. Future improvements will add support for predicate filtering and sorting. |
| Feature | JavaScript can now modify objects exposed by C++. This allows the UI to update game state directly without invoking functions. |
| Feature | Added partial support for custom elements across all platforms. Custom elements provide a way for JavaScript devs to create their own HTML elements. Support is partial because new classes can only be derived from HTMLElement. |
| Feature | API Added the ability to dump all currently used images in the UI. This is useful when you want to know which files to package, preload or generate atlases for. See the new method |
| Feature | Added support for the line-height CSS property. |
| Feature | Added support for exposing objects containing |
| Enhancement | API Added support for the window.onresize event. |
| Fix | Fixed a bug in the Player application which would fail to load files whose paths contained non-ASCII characters. |
| Fix | Fixed a crash in the Player application when using the –height= parameter. |
| Fix | Fixed a bunch of minor memory leaks across the scripting subsystem. |
| Fix | Animations on elements with display: none will now be properly paused and resumed when display: none is removed. |
| Fix | Added virtual destructors to the |
| Fix | Fixed rendering of SVG gradients which were misplaced when under the effects of a transformation (translation, rotation, etc.). |
| Fix | Fixed a bug which would cause some SVG files no never be loaded if a lot of SVGs were loaded simultaneously at the start of the application. |
| Fix | Errors thrown inside event handlers of engine.on are now properly logged across all platforms. Previously, these errors would be silently ignored. |
| Fix | Invoking console.log with null or undefined will now produce the same behaviour across all platforms. Previously, some would throw errors, others would log empty strings or empty objects. |
| Fix | Fixed a crash when calling |
| Fix | Fixed a bug which would cause videos to sometimes stop spuriously. |
| Fix | Fixed a bug which would cause some SVGs to be rendered incorrectly. |
| Fix | Fixed a bug which would cause elements whose background is a linear-gradient to not update when another linear gradient is applied. |
| Fix | Fixed rendering artefacts caused when the current value of box-shadow and only box-shadow was changed on an element. |
| Fix | Fixed an issue which would cause hover effects on images to not appear every other time. |
| Fix | Fixed a bug which caused playFromTo from the WebAnimations API to not play correctly after an animation has ended. |
| Fix | Fixed an assert in Debug that was being hit when calculating new styles for some elements that have both box-shadow and transform applied. |
| Fix | Fixed a crash on Nintendo Switch when destroying rendering resources. |
| Fix | You no longer have to define COHERENT_HORIZON manually to build for Nintendo Switch. |
| Fix | Fixed a bug which would cause the SDK to throw an error whenever you accessed window.history.state on iOS. |
| Fix | Fixed a crash caused when using regular expressions while the garbage collector is running. |
| Fix | MacOS Some debug features were disabled in debug builds on MacOS and iOS (e.g asserts). They are now available on all platforms in Debug. |
| Fix Unreal Engine | Displaying a Gameface UMG widget inside a ScaleBox widget will now preserve scaling properly. |
© 2026 Coherent Labs. All rights reserved.