CGI Studio 3.3.1
CGI Studio 3.3.1 - What's new:
Welcome to CGI Studio 3.3.1, Candera's software development platform for development of hybrid 2D and 3D graphical interfaces for Automotive Systems.
This page informs about the most important features, added since the last Release.
Multi-threading support
Various features belonging to multi-threading have been introduced. The next sections give an overview of those features.
Asynchronous Jobs
FeatStd contains the new feature of asynchronous jobs. Users can submit jobs that should not block the currents thread execution, thus should be executed asynchronously. These jobs are further dispatched and executed by a provided dispatcher queue. Asynchronous jobs can further be executed in a separate thread, or at a defined time slice on the same thread. As soon as the execution has been finished, the request handle becomes valid and the result can be retrieved. This feature is the base for further features introduced in this Release, in particular Asynchronous Asset Loading and Asynchronous Text Rendering.
Asynchronous Asset-Loading
Asset Loading, especially reading from the asset repositories, can be a time consuming task, which blocks the CPU from further processing. This can even slow down rendering in certain cases. To improve this, asset loading requests can now be submitted as asynchronous jobs. These jobs can be done either in parallel on a separate thread, or interleaved with the rendering in smaller chunks. Whenever an asset is available, the main thread can retrieve it and add it to the render loop.
Asynchronous Text-Rendering
The Candera engine provides asynchronous text rendering to improve the handling of time-consuming text processing, such as glyph creation, shaping or layout specific calculations. While asynchronous text rendering is not directly speed up, performance improvements are expected to be seen during rendering, as text processing gets decoupled from it.
Analyzer Multi-Thread Recording
The Scene Analyzer supports performance log files which contain recordings over multiple threads now. See the screenshot below.
Glyph Texture Atlas
This version introduces a new text node renderer for TextNode2D and a TextBrushCache which uses a glyph atlas for rendering. The GlyphAtlas stores glyphs in bitmap atlases together with lookup information for re-use. The advantage of the glyph atlas is that dynamic texts are rendered faster.