Release notes
Changelog
Version 1.12.0.1
Released 30 Nov 2020
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.12.2.1
Released 18 Dec 2020
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.4.2
Released 08 Feb 2021
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 |
Migration guide
Introduction of MSDF user fonts
So far, we only had support for offline user-generated Bitmap fonts. In this version, we are introducing offline user-generated MSDF font support.
- The
ST_RenderSDF
shader type was removed and newST_TextSDFGPU
,ST_TextStrokeSDFGPU
,ST_BatchedTextSDFGPU
,ST_TextMSDF
,ST_TextStrokeMSDF
andST_BatchedTextMSDF
shader types were introduced and added to the shader mappings. The first three are used for rendering of SDF fonts generated on the GPU, while the other three are used for the newly introduced MSDF rendering. Client attention/changes required! - The
PST_SDFRender
andPST_SDDOutlineRender
pixel shader source was moved from the CohShadeGeometry.ihlsl file to the CohShadeGeometryRare.ihlsl one. Client attention/changes required! - The
PST_MSDFRender
andPST_MSDFOutlineRender
pixel shader types were implemented in the CohShadeGeometryRare.ihlsl file. Client attention/changes required!
Changes related to the user font API
With the introduction of another type of user font, we decided to simplify the API for loading user fonts.
- As a result, we are no longer using the old
cohtml::System::BitmapFontDescription
object, but the newcohtml::System::UserFontDescription
one. Aside from the changed name, it has two new parameters. The first is thetype
of the font, which specifies whether we are using the old Bitmap font logic, or the newly introduced MSDF one. The second one is thespread
, which should be set to 0 in the case of Bitmap fonts and to the correct value for fonts that are using distance fields like the MSDF fonts, for example. - The pair of
cohtml::System::AddBitmapFont
functions have been changed to a pair ofcohtml::System::AddUserFont
ones, that take the newcohtml::System::UserFontDescription
configuration object instead of the oldcohtml::System::BitmapFontDescription
one. This means that all references to that type (and its subtypes) should be changed to reflect how the new API works.