What's new

This section highlights the most important new features of new Releases.

CGI Studio 3.16 - Community Edition

CGI Studio 3.16 Community Edition - What's New

Welcome to CGI Studio 3.16 Community Edition, Candera's first free software development platform for hybrid 2D and 3D graphical interfaces for embedded systems.

Along with this new release a few new implementations have been added to our package:

New Community Edition Samples
Scene Composer / Hardware Deployment
Field of Usage

If you want to upgrade to the Professional Edition please send an e-mail with the subject Community Edition Upgrade to sales@candera.eu. Please include the following information to speed up the process: name, company name, e-mail, phone number, country, optional: job title.

Documentation

This page provides information regarding the most recently added features and updates since our last release.

CGI Studio 3.16

CGI Studio 3.16 - What's New

Welcome to CGI Studio 3.16, Candera's software development platform for hybrid 2D and 3D graphical interfaces for embedded systems.

Scene Composer
Samples
Engine and Player
CGI Studio Connector
Documention

This page provides information regarding the most recently added features and updates since our last release.


CGI Studio 3.15.1

CGI Studio 3.15.1 - What's New:

Welcome to CGI Studio 3.15.1, Candera's software development platform for hybrid 2D and 3D graphical interfaces for embedded systems.

This page provides information regarding the most recently added features and updates since our last release.


Scene Composer


Smart Importer


Candera Engine


Core Controls

A new set of Core Controls has been introduced. These controls are designed to minimize functionality to achieve smaller memory footprints and improved performance. They are particularly suitable for low-end platforms or as a foundation for custom control development. For more details, please refer to this page.


Control Behaviors CMake Flags

Within the new CMake environment, several CMake flags have been introduced to tailor the Control Behaviors included in the build. For more details, please refer to this page.


Professional Edition


Documentation

CGI Studio 3.15

CGI Studio 3.15 - What's New:

Welcome to CGI Studio 3.15, Candera's software development platform for hybrid 2D and 3D graphical interfaces for embedded systems.

This page provides information regarding the most recently added features and updates since our last release.


Solution Creation Improvements

Smart Importer

CGI Studio Connector

CGI Studio Connector has been implemented as a tool for connecting the CGI Studio Courier application to other systems. For more information, please refer to here.

Monotype

This feature to load font bitmap data into the font engine cache has been implemented. For details, please refer to here.

New Behaviors

CGI Studio Professional Edition 

Next to the CGI Studio Enterprise Edition, a newly introduced Professional Edition is available. Its purpose is to create HMIs easier and faster, with fewer steps required to finalize the HMI (e.g. no compiling of the player and easier Python based data binding).

Help system (This document) updated

For more information on how to use the new help system, please click here.

CGI Studio 3.14

CGI Studio 3.14 - What's New:

Welcome to CGI Studio 3.14, Candera's software development platform for hybrid 2D and 3D graphical interfaces for embedded systems.

This page provides information regarding the most recently added features and updates since our last release.


Solution Creation Improvements

Usability Improvements

New CMake Environment and starting points

See Build System Setup for more details.

3D ADAS template scene

Template of an instrument cluster containing a modifiable 3D ADAS control.

drawing-7-1718347337.png

Help system (This document) updated

For more information on how to use the new help system, please click here.

CGI Studio 3.13

CGI Studio 3.13 - What's New:

Welcome to CGI Studio 3.13, Candera's software development platform for hybrid 2D and 3D graphical interfaces for automotive systems.

This page provides information regarding the most recently added features and updates since our last release.


Scene Composer improvements

Import feature improvements

For more information on the above points, please see the article in Import of Resources chapter.

Diagram Bird's Eye

The feature to get a bird's eye view of the entire Fusion diagram or State Machine Editor has been added. For more information on this feature, please see Diagram Bird's Eye article.

Easy Mode 

Easy Mode has been implemented as a standard feature to customize the properties of each element. Until CGI3.12, it was necessary to generate an Easy Mode configuration file using the "SceneComposerConfigurator.exe" file, but now customization is possible from the preferences. Its configuration can still be exported or imported to easily sync between many users. For more information on this feature, please see Easy Mode article.

Fusion

For more information on this feature, please see Fusion>Basic Operation article.

State Machine

For more information on this feature, please see State Machine>Components in State Machine and State Machine>Basic Operation articles.

Improved control/behavioral

Monotype

Supported versions have been updated for iType and WT-Shaper. For more information, see CGI Studio 3PSW on CGI Studio Components page.

Help system (This document) updated

For more information on how to use the new help system, please click here.

CGI Studio 3.12

CGI Studio 3.12 - What's New:

Welcome to CGI Studio 3.12, Candera's software development platform for hybrid 2D and 3D graphical interfaces for automotive systems.

This page provides information regarding the most recently added features and updates since our last release.


Smart Importer

For more information regarding the full functionality of this tool, please reference the Smart Importer article.


Vector Graphics Support

For more information regarding this feature, please reference the SVG article.


Fusion Editor

For more information about the Fusion Editor, please see the documentation about Fusion


3D Shapes Control

Many new 3D Shapes controls have been added, such as Arrow, Capsule, Cone, Disc and so on. They are available from the toolbox Controls>3D Shapes.

drawing-4-1686300615.png


Scene Composer Improvements


Rotation and zoom functions in the Player Panel

Rotation and zoom functions have been added to the Player Panel. For details of the functions, please click here.


Help system (This document) updated

A new UI help system with search and browsing history functions has been implemented. Tutorial videos previously accessed from external sites have been integrated into this help system. For more information on how to use the new help system, please click here.

CGI3.16 release and later, tutorial videos are no longer included in this documentation.


New Behaviors


CGI Studio 3.11

CGI Studio 3.11 - What's New:

Welcome to CGI Studio 3.11, Candera's software development platform for hybrid 2D and 3D graphical interfaces for automotive systems.

This page provides information regarding the most recently added features and updates since our last release.


Smart Importer

CGI Studio’s Smart Importer supports now

For more information regarding the full functionality of this tool, please reference the Smart Importer article.


Chart Control

A bar graph and a line graph got added.

A bar graph is a graph that presents categorical data with rectangular bars with heights proportional to the values that they represent. A line graph or curve graph is a type of chart which displays information as a series of data points connected by straight line or spline segments.

drawing-7-1676365481.png

For more information regarding the full functionality of this tool, please reference the BarGraph and LineGraph articles in the Predefined Controls.


Scene Composer Improvements


Documentation and Sample Updates

Newly added and reworked documentation about


MATLAB Connector (MLC) Improvements

Added IPC integration to allow running the CGI Application independently from the MATLAB state machine.

Tool Improvements:

Templates:

Documentation:


Cybersecurity - ISO/SAE 21434:2021

Candera has developed a guideline to integrate CGI Studio into a cybersecurity-relevant software stack. The document, available on demand, aids cybersecurity managers and engineers to accurately assess the risks and vulnerabilities of CGI Studio, and integrate it properly into their product and their Cybersecurity Management System.


Platform Support



CGI Studio 3.10

CGI Studio 3.10 - What's New:

Welcome to CGI Studio 3.10, Candera's software development platform for hybrid 2D and 3D graphical interfaces for automotive systems.

This page provides information regarding the most recently added features and updates since our last release.


Smart Importer

The new Smart Importer function will allow you to import files from Photoshop, then directly map elements within the file to CGI Studio controls using a built in AI service.

drawing-7-1676366631.png

For more information regarding the full functionality of this tool, please reference the Smart Importer article.


Multilanguage Support (Japanese)

CGI Studio now provides Japanese language support for the following applications,


Documentation and Sample Updates


Monotype Spark Engine

Monotype’s Spark font engine has been integrated into this latest version of CGI Studio.

For more information regarding this topic, please reference the Spark Engine article.


New Sublist Control

A new sub-list control has been added. This control will allow you to embed submenus within lists which can be conveniently expanded or collapsed. For more information regarding this control, please reference the Predefined Controls section for more information.



MATLAB Connector (MLC) Improvements

Tool Improvements:

Templates:

Documentation:


Extended Target Hardware Support


Updated and extended RICOH fonts

Updated and extended RICOH fonts have been provided by RICOH for CGI Studio 3.10.



CGI Studio 3.9

CGI Studio 3.9 - What's new:

Welcome to CGI Studio 3.9, Candera's software development platform for development of hybrid 2D and 3D graphical interfaces for Automotive Systems.

This page provides information about the most important features added since the last Release.


Control Center

In CGI Studio Release 3.9.0 we are proud to announce the Control Center - a new tool that integrates all tools of the CGI Studio product chain.
For new users, it provides a dashboard from which the Scene Composer, the Player, the Analyzer and the SCHost/application builds can be done with a button click.
For advanced users it also allows them to edit and build the CGI Panel, edit data bindings and Courier definitions. For clients with complex processes, it allows changing the scripts used for the operations above and customizing them to fit their needs.
All this information is stored in a Control Center solution that is specific to a certain application/Scene Composer solution, making it easy to share it between multiple users. [More...]


Android Improvements

More information can be found in our Forum CGI Studio Lighthouse.


ASTC Texture Compression Support for OpenGL ES 3.2

For improving rendering performance, bitmaps can now be converted to an ASTC format (Adaptive Scalable Texture Compression Format). SceneComposer now offers a new bitmap converter that can be selected for a BitmapProfile, called AstcBitmapConverter, and 14 ASTC formats to choose from.


SceneComposer User Interface Improvements

CGI Studio 3.9.0 offers the following improvements of the user interface: 


CGI Player - Value Generator

This feature in CGI Player provides the possibility to simulate the change of values on view elements. 
With this, view elements/controls can be simulated without logic implementation. [More...] 

drawing-7-1676367504.png

Smart Photoshop Importer

The Smart Photoshop Importer provides the ability to import Photoshop files in a smart way using Artificial Intelligence. This feature is in preview state. [More...] 

drawing-7-1676367558.png


CGI Studio 3.8

CGI Studio 3.8 - What's new:

Welcome to CGI Studio 3.8, Candera's software development platform for development of hybrid 2D and 3D graphical interfaces for Automotive Systems.

This page provides information about the most important features added since the last Release. 


Release Package Signature

CGI Studio Release Packages will now be released with a Release Package Signature. This way you can always make sure that the delivery is from Candera GmbH and it includes the original files without any change. [More...]


Adorners - Gizmos for Layouters

CGI Studio offers the option to use adorners for an easy manipulation of the nodes inside layouters. The adorners gizmos can affect the following properties: Vertical Alignment, Horizontal Alignment, Size and Margin (Left, Top, Right, Bottom) in the Layout category and the Position in the Transformations category. This editing can now be done using the mouse and keyboard without having to manually change the node properties values. [More...]  


LayoutMonitor Support in Player

The Layout monitor is a feature that allows the user to see the relevant areas computed by the layouter as an overlay on top of the rendering of the application. The user can select nodes in the scene tree, the layouter rectangles are drawn automatically. The visualization is useful to understand how the dynamic layout is applied. Additionally the retrieval of various layout properties is available. The feature is available in the Player. [More...] 


New Controls

Icon_Keyboard.png

Keyboard Control:
The Keyboard Control emulates physical computer keyboard that enables a user to enter characters into an InputField Control. The Keyboard Control is highly customizable via Configuration Script described below. To use the Control one needs to connect an InputField with a keyboard via KeyboardAction with Action Open. When the InputField send the event, the Keyboard appears and sends pressed characters to the InputField that activates it. [More...]

Icon_Roll.png

Roll Control:
The Control represents a vertical list of numeric values from a specified range with a specified step. Current value of the Control is visible in the middle of the control and can be zoomed like using lens. Changing the current value can be animated and can be done using touch/pointer or configurable keys of a keyboard. One can edit the current value of the Control by entering it with a keyboard.
To use the Control simply put it in a scene and configure all desirable properties. A roll can forward value as well as receive a send value as event. [More...]

Icon_MenuScreen.png

MenuScreens Control:
The Control represents a menu in the form of a grid of icons (instances of the Menu Item Control). 
It has configurable number of rows and columns as well as default and maximum number of screens. A user can swipe between neighbouring screens. The Control handles user input and forwards proper information to children MenuItem nodes. The children nodes may be removed and reordered in runtime. [More...]

Icon_MenuIcon.png

MenuIcon Control:
The main rationale behind the MenuIcon Control is an encapsulation and abstraction of an “icon” like in graphical environments of most known operating systems. It stores a bitmap and a string (label) together and provides single configuration of common behavior like positioning or highlighting. 
It is designed to use inside the MenuItem Control and most probably one would like to use the MenuItem instead of plain MenuIcon. [More...]

Icon_Icon_PageIndicator.png

PageIndicator Control:
A PageIndicatorElement is a control which is part of Page Indicator which indicates currently displayed page. This control is intended to be used as component of Page Indicator and therefore is not focusable as individual element.
The control offers possibility to customize it’s appearance through 9 patch image and color properties. [More...]

Icon_Mesh2D.png

Mesh2D Control:
Performs a perspective projection of a 3D rotated effect (e.g. Bitmap or SolidColor effects) based on the configured origin, rotation and field of view. [More...]

Icon_CoverFlowIcon.png

CoverFlow Control:
A CoverFlow is a proof-of-concept control that alows for horizontal swiping of child items. The items are scaled according to their location. [More...]

Icon_FPSCounter.png

FPSDisplay Control:
The FPS Display Control provides a Text Node that displays the currently rendered frames per second, which allows benchmarking running applications. [More...]

Icon_FrameCounterControlIcon.png

FrameCounterDisplay Control:
The Frame Counter Display Control provides a Text Node that displays how many frames were already rendered. [More...]

Icon_FrameTimeControlIcon.png

FrameTimeDisplay Control:
The Frame Time Display Control provides a Text Node that displays the time it takes between frames to be rendered, which allows benchmarking running applications. [More...]

New Behaviors

drawing-7-1676368920.png

Extended Animation Features

drawing-7-1676368970.png

In SceneComposer 3.8.0 the user can animate even more different properties. It is now able to animate Control Properties, Optionals, Variants and Script Component Properties. [More...]  


glTF 2.0 Importer to Support Physically Based Rendering

In order to be able to create HMIs using 3D objects with similar rendering quality as running on mobile versions of game engines, CGI Studio's render techniques have been improved by methods of Physically Based Rendering (PBR). glTF 2.0 is more than defining PBR materials, it is a new state-of-the-art file format that is now supported by CGI Studio. [More...] 


2D over 3D Support for Post Processing Effects

The process of creating and applying posr processing effects within CGI Studio has been simplified. The user can now drag and drop pre-defined post processing effects onto a camera via script.
An example has been created to show how the following post processing effects can be applied to a 2D and 3D scene:


External Texture Image

Users of CGI Studio are now able provide externally rendered images within the HMI on Linux systems using Wayland. For example an image decoded from a video stream or provided from an external image repository, such as a media database. [More...] 


CGI Studio 3.7

CGI Studio 3.7 - What's new:

Welcome to CGI Studio 3.7, Candera's software development platform for development of hybrid 2D and 3D graphical interfaces for Automotive Systems.

This page provides information about the most important features added since the last Release.


Auto Values

Auto values is a novel feature which displays parameter/property values internally computed by SceneComposer, Candera or inherited from other objects, as well as the information, that this value was automatically set.

The user can interact with auto-values through the switch button which is available - in the Properties panel - near the field were the value control is displayed as read-only. As can be seen in the image below, a suffix indicates that the value is auto. As expected, if the button is used the value will become editable and the user will be allowed to modify it as desired.

Example: The TextNode2D.LineHeight is a property where the auto values are often used. By switching auto on (which happens by default), Candera will compute the value to be used based on the associated text style. The user can overwrite this auto value through by switching auto off (using the auto button) and force the engine to use the specified line height which now the user can modify. By setting the height to “0” the automatic computation is again enabled and Candera will return to the usage of the automatically determined line height for text placement.

drawing-7-1676371424.png

More information is available in chapter Auto Values.


HMI Report

The HMI Report feature produces statistics, summary and details for the solution loaded in Scene Composer, including but not limited to:

The HMI report is presented in browser in the form of a set of HTML documents. Each document is linked to one another by a navigation bar.

To generate an HMI report after loading a solution, one must click on the Report button from within the main bar in the upper part of the screen and select the Create Solution Report: This will open the HMI Report Customization Dialog, where in the 2 mandatory text fields the user defines where to store the generated output and from where to load the css file necessary to style said HTML documents. Furthermore, using the checkbox grid the user can customize the resulting report.

drawing-7-1676371445.png

The 2 textboxes are for setting up where the output HTML documents shall be stored and from where to retrieve the css file needed to style said HTML documents. These 2 fields are mandatory. The checkbox grid is for selecting which of the available sub reports you would like to have added.

drawing-7-1676371464.png

More information is available in chapter HMI Report.


Annotations

A new property named Annotations was introduced for every SceneComposer element. This property can be used to assign individual information to the selected object and it is located in the Properties panel under the General section. The property can be restored to its default empty state using the Restore Default button.

Annotations are not included in the asset, but only in the HMI report.

drawing-7-1676371498.png

More information is available in chapter Annotations.


Canvas Text Outline

This feature enables adding an outline to a canvas text in a 3D scene by using a dedicated shader program.

drawing-7-1676370592.png

More information is available in chapter Canvas Text Outline.


Support for Object Script Reference Properties

It is possible to assign objects from the solution script component properties. Once a script has been assigned to a node, it is shown as a script component in the scene extra tree (a script having user parameter values) and the property panel will display the properties exposed by the script.

Scripts can use assigned objects for post processing effects, animating nodes in the scenes, starting and stopping animations, and other.

More information is available in chapter Support for Object Reference Properties.


Script Component Templates

It is possible to create a template from an existing script component. To do this, just right click on an existing script component - in Scene extra-Tree - and from the context menu select the "Save as Template... > ScriptComponent..." option.

drawing-7-1676370621.png

More information is available in chapter Script Component Templates.


Post Processing Effects

Until now the rendering flow of the effect had to be modelled completely with the scene graph including manual management of any temporary render targets involved, creating a rigid structure that was hard to extend and tweak since effect parameters were scattered around in the scene graph and its assets. That is why the usage of post processing effects was cumbersome and not intuitive. Consequently, the process was simplified through the introduction of a scriptable post processing pipeline and the creation of predefined effects. Since this version on, the user has the possibility to use them in an easy and intuitive manner, just by dragging and dropping any predefined effect on a camera node, or by creating a new effect with just implementing a single callback in a script.

Four predefined post processing effects are available in the "Templates": "References > SCL:ConstructionKit > ScriptComponents":

drawing-7-1676370638.png

A new sample "PostProcessing" was added to demonstrate how post processing effects can be used.

drawing-7-1676370197.png

More information is available in chapter Post Processing Effects.


State Machine Extensions for Sub-charting and Debugging

The state machine support has been extended with new modeling and debugging capabilities, for example sub-charts, used to abstract and hide modeling details of complex states and transitions, or the possibility to inspect the active state, transition dynamics and executed actions by attaching to a running Player and opening the State Machine panel.

More information is available in chapter State Machine.


Export Images

If necessary, it is possible to export any imported image from solution to a .png file. This operation can be done through the context menu which is available when right click on any image.

drawing-7-1676371530.png

More information is available in chapter How to Import Resources.


New Controls for CGI Studio 3.7

Breadcrumb Control
CGI Studio 3.7 provides a hierarchical navigational aid for user interfaces called Breadcrumb. 

drawing-7-1676370722.png

More information is available in chapter Breadcrumb.

Circular Slider Control
In addition to the Slider, there is now a circular version called Circular Slider.

drawing-7-1676370751.png

More information is available in chapter CircularSlider.

Dial Control
A Dial behaves similar to a physical rotary switch.

drawing-7-1676370779.png

More information is available in chapter Dial.

Drawer Control
CGI Studio 3.7 provides a control that allows to hide content that can be shown again when it is needed.
This control is Touch Screen compatible, but can also be used with Events.

drawing-7-1676370808.png
drawing-7-1676370818.png

More information is available in chapter Drawer.

Icon Button Control
The Icon Button is a new addition to the Button and TextButton.

drawing-7-1676370875.png

More information is available in chapter IconButton.

Particle Emitter Control
CGI Studio 3.7 provides a way to implement Particle Effects with Controls and Behaviors. 
There is a Showcase of different Particles Effects integrated in the 3D Effects Solution.

drawing-7-1676424069.png

More information is available in chapter Point Sprite Emitter.

Spin Box Control
CGI Studio 3.7 provides a Spin Box. With it Values can be increased or decreased by a certain value.

drawing-7-1676370944.png

More information is available in chapter SpinBox.


Behaviors: Deep Copy/Paste

If a behavior is just the reference of another (parent) behavior, the referenced behavior will be marked by a specific sign and a tooltip will become visible on it:

drawing-7-1676424740.png

If a behavior which contains referenced behavior is copied, a new option will become available in the context menu: "Deep Paste".

drawing-7-1676424763.png

More information is available in chapter Behaviors: Deep Copy/Paste Operation.


Focus Navigation

A default focus navigation has been implemented (based on nearest geometrical neighbor control and/or the tab order defined by the order in the scene tree). This enables changing the focused control to another control instance with keyboard focus navigation events (left, right, up, down, left-up, left-down, right-up, right-down, tab order previous and tab order next).


Gesture Recognition

An abstract interface for gesture detectors has been introduced. Existing gestures (click, press/release and drag/drop) have been restructured to implement that interface. In addition a swipe/flick gesture detector (detecting swipes/flicks to the left/right/up/down) and a transform gesture detector (rotation/pan/pinch) have been implemented.

More information is available in chapter Behavior Gesture.


Enhanced Player

The Player has now a new interface (CGIPanel) that allows to use the newly introduced features like:

drawing-7-1676425087.png

More information is available in chapter Player.


Enhanced Render Statistics

Render Statistics inform the user about current performance indicators during rendering. Therefore they are of major help when trying to identify performance bottlenecks. This statistic has been enhanced with the following information:

2D:

3D:

If CANDERA_RENDER_STATE_CACHING_ENABLED and CANDERA_DETAIL_STATISTICS_ENABLED are set to true, additional information about Render State Cache Effectivity is available.

These values are visible either in the Render Statistics Overlay of the Player, the Render Statistics Panel in SceneComposer (only for applicable properties) or directly accessible from the API.

drawing-7-1676370492.png

Default Render Target

A new camera is automatically assigned to a default render target. The user can specify a default render target via context menu in the Render Target panel. In case that no default render target is defined a default render target is set automatically when a new camera is created. Especially for beginners this features eases the start with Scene Composer.



CGI Studio 3.6

CGI Studio 3.6 - What's new:

Welcome to CGI Studio 3.6, Candera's software development platform for development of hybrid 2D and 3D graphical interfaces for Automotive Systems.

This page provides information about the most important features added since the last Release. In this release the focus was on the integration of the redesigned Player, culture management in Scene Composer, Monotype support and new Controls with key handling. A special highlight among the Controls is the dynamic list. Please see the details below.


RenderMode for SceneEditor 2D/3D to show RenderTarget Alpha Blending

With CGI Studio 3.6 we introduce a new render mode for the scene editor for 2D and 3D scenes. The user is now able to switch between "Normal Scene Editor Rendering" and "Alpha Blending Scene Editor Rendering". The new render mode allows you to easily identify transparent objects. This is especially useful for devices that support hardware layer blending.        

drawing-7-1676439135.png

More information is available in chapter RenderTarget Alpha Blending


Drop Shadow Effect and Outline Effect also available for TextNode2D

The newly implemented OpenGL 2D effects 

offer the possibility to add these visual effects also to TextNode2D. 

drawing-7-1676439114.png

For more information please see the OpenGL 2D Effects Solution Scene Composer sample solutions.


2D SolidColorBrushColorBlend Effect

A SolidColorBrushColorBlend effect adds a color effect to the existing SolidColorBrushBlend effect. It multiplies the FillColor with the Color. This effect can be useful when it comes to reusing ColorEffects out of an effect, to multiply a color with the actual color to blit; especially in cases where the original color should be preserved, but should be changed for certain effects. 

drawing-7-1676439172.png

For further details please see section SolidColorBrushColorBlend SolidColorBrushColorBlend.


Integration of Monotype

Users of CGI Studio can now use the commercial font engine Monotype (iType) together with its WT Shaper as alternative to the already used freetype, harfbuzz and ComplexScript engines. Switching to monotype can easily be done using CMake. More details on the integration of Monotype can be found in chapter Integration of Monotype


Copy & Paste or Drag & Drop from ToolBox to SolutionExplorer

To make CGI Studio SceneComposer even more convenient and userfriendly we introduced the possiblity to Copy & Paste or Drag & Drop items from the Toolbox to the SolutionExplorer. The performed Drag&Drop operation automatically creates a copy of the source object. It can be used to create your own variants of the controls delivered in the construction kit. 

drawing-7-1676439224.png

Copy and paste is performed using the context menu or the keyboard shortcuts CTRL+C and CTRL+V. Drag & Drop is done by picking the item with the mouse, dragging it to its destination in the SolutionExplorer and dropping it at the desired location.


Integration of the Player into SceneComposer

So far we were offering CGI Studio SceneComposer and Player as two separate applications. With CGI Studio 3.6 the Player can be started from within the SceneComposer. In the toolbar near the top left corner you can now find a play button and a drop-down menu to start the Player. In the drop-down menu you can choose one of the following options:

drawing-7-1676439264.png
Menu Entry Action
Generate and Play Generates assets and starts the Player
Generate and Play Selected Scene Generates assets and starts the Player with the current scene after pressing the "play" button on the left
Play Starts the Player after pressing the "play" button with the most recent generated asset
Configure... Opens a configuration dialog. Configurations, like the path to the Player, can be set. Further wise it allows to set additional parameters and the default scene that will be shown.

It is possible to start two Players in parallel with different assets. Starting a third Player is not possible because it would try to overwrite the first generated asset. The generated assets are stored in temporary application data user folders.


Player Re-Design

Speaking of the Player: it now features a fresh new design - both in the UI and internal architecture setup - for an improved user experience.

drawing-7-1676439457.png

Handling of Keyboard incl. Virtual Keyboard Events

With CGI Studio 3.6 it is now possible to directly react on virtual Key Events using the concept of Behaviors. A new Control Behavior "Virtual Key" has been added that receives a Change Value Event with a boolean. True will start emitting Key Events, false will stop emitting Key Events. A new Condition Input Behavior "Check Key Input" has been added, so it is possible for any control to react on it and call any Action Behavior. The "Check Key" Input Condition Input Behavior as well the "Virtual Key" Control Behavior can be configured with a Modifier and a KeyType.


drawing-7-1676439646.png

Line Spacing Customization

With CGI Studio 3.6 the user can customize the way multi-line text is imported from Photoshop. As CGI Studio is using a different text engine than Adobe, customization is needed to achieve the same presentation, especially spacing for multi-line text.

The Photoshop importer imports multi-line text as it is - setting default line spacing

With implementation of this new customization possibility, the Line Height property has been removed from the TextNode in SceneComposer. TextStyle has a new category (in the property grid) called "Metrics" that contains the following properties to display the line spacing values calculated from Candera: 

Property Description
Ascender Font ascender value in device pixels.
Descender Font descender value in device pixels.
Line Height Line height of the font (lineGap = lineHeight - (ascender - descender))
drawing-7-1676439804.png

Generic Transformation is optional

In order to increase the performance when rendering, the generic transformation used for 3D Nodes, Canvas Nodes and also for Textures, has become an optional parameter in SceneComposer.


Advanced Cluster Sample Solution

A new Advanced Cluster Solution has been added to the Sample Solutions that can be found on the startup screen of CGI Studio SceneComposer 3.6. It shows how to create an advanced cluster without the need of application logic. It is just using Controls for implementation and therefore works with the Player. 

drawing-7-1676439853.png

A description of how it is assembled and how it can be created from start can be found in the section for Sample Solutions Advanced Cluster Solution.


Extension of FeatStd::Variant

The list of data types of FeatStd::Variant has been extended by data types that are often used in applications: 

A new TryGet() method has been implemented, which returns true if the conversion was possible without value range limitation and false otherwise. You can find out more about this in the Class Reference of FeatStd::Variant.


Freetype Font Streaming

Instead of loading a complete font from asset file into RAM it is also possible to use the freetype custom IO stream API where only the required bytes are requested from the font. This features is especially useful for big fonts. This can be done on a font-by-font basis.

Even after introducing the new (stream-based) font data access strategy, it is still possible to select the old (memory-based) font data access strategy.


Offline Shader Compiler Plugin for R-Car D3 Integrity

With CGI Studio 3.6, a shader compiler plugin for Scene Composer is provided for Renesas R-Car D3 Integrity platform. This new shader compiler also supports offline compilation. All shaders and only those shaders that are used and are part of the asset library are compiled.


PSD Exporter sets Text Height

The PSD Export now sets the Layout Size of the TextNode2D to the text area size from Photoshop. The TextNode2D's clipping behavior is adapted so that rendering area is big enough for rendering complete lines and then apply clipping to the area.


Pivot Point

With CGI Studio 3.6 Scene Composer uses a real pivot point instead of a pivot offset. The pivot point is used as center point for rotation and scaling. It is available for 2D and 3D. A gizmo - an orange circle with an orange dot inside - shows the position of the pivot point in 2D scenes.

In 2D the existing translation modes (Pivot and Object, Pivot only, Object only) are now based on the real pivot point: 

drawing-7-1676440049.png

"Pivot and Object" mode: Position property (only) of the translated node is re-computed and updated.  
"Pivot only" mode: both Pivot property and Position property values of the translated node are re-computed and updated.  
"Object only" mode: both Position and PivotPoint properties of the translated node are re-computed and updated.  


Memory Usage Improvements

For CGI Studio 3.6 the memory Usage for large solutions has been improved significantly.


Integrated Text Management

CGI Studio supports internationalization in form of a custom solution based on the Translator plugin and customer external tools. All language tables can be now maintained directly in Scene Composer. For a better integration of the text's management, the following steps have been performed:

Further wise, CGI Studio 3.6 comes with an integrated Translator Plugin. In the toolbar you can find an icon to open the "Solution Icons: Cultures" dialog to add or delete languages as well as a drop-down box for choosing the currently active language. 

drawing-7-1676440145.png

More information about the Translation Plugin can be found in chapter Scene Composer Translator Plugin.


Unique Identifiers for Behaviors

With CGI Studio 3.6 unique identifiers for behaviors have been introduced. For this, an Identifier class has been introduced which matches any arbitrary string path / string tree. The concept is derived from Java String Interning (https://en.wikipedia.org/wiki/String_interning).


Support for True Type Font Container (TTC)

An Iterator has been implemented to iterate over the names of the faces contained by a TTC font. The order in which the face names are provided by the iterator is a hint for the index that needs to be passed at Font::Setup(name, index), to properly load the expected face.


Toggle Button

We have now added a new Control "Toggle Button" that behaves like a Push Button but it toggles with each press between "On" and "Off". It is typically used for activating and deactivating a persisting functionality. 

drawing-7-1676440215.png

The visual appearance of the Toggle Button can be altered in the properties panel. The texts, the images and also the colors for hovered and disabled can be configured.

drawing-7-1676440350.png

Clock Control

CGIStudio 3.6 offers a new DigitalClock and an AnalogClock Control, which can be found in the ConstructionKit. 

drawing-7-1676440423.png

More information can be found in chapter Digital Clock and Analog Clock.


Input Field Control

CGI Studio 3.6 provides an Input Field Control for Keyboard Input. 

drawing-7-1676440461.png

For more information please check section InputField.


Dynamic List

The list control has been extended by supporting Courier Data Binding and generic windowed list model fragments. 

drawing-7-1676440496.png

For more information please see the Dynamic List Tutorial.


Databinding UI

With Scene Composer 3.6 each bindable property of a Behavior, Widget, Behavior Building Block or Control will have a button next to the property that allows to define or break a link to a data source. 

The buttons indicate if the binding is established or not: 

drawing-7-1676440637.png

Additionally, when hovering the buttons, the concerned binding source is displayed as tooltip (see the lower right corner of the picture above). 


Sequential and Bidirectional Transitions

Until now, only simultaneous transitions from one scene to another were possible, meaning that, for example, one scene would fade out while the other one fades in. With CGI Studio 3.6, it is possible to configure transition rules, which result in a sequential playback of the respectively involved transition fragments. To accomplish this, new options to set the transition strategy for "Activation" and "Deactivation" fragments have been added to Scene Composer's Rules Editor.

Additionally, transition rules can now be set as bidirectional, further simplifying the transition setup process. Now, only one rule is needed for a transition in both directions.

For more information about the new Transition features, please read the chapter Transitions.

drawing-7-1676440720.png


CGI Studio 3.5

CGI Studio 3.5 - What's new:

Welcome to CGI Studio 3.5, 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. Focus of this Release was to improve usability of SceneComposer, but also brand new features have found their way into it. Please see yourself.


Monotype

Font engine iType feature has been integrated. iType is a font engine which main purpose is fast and qualitative rasterization of fonts.

There are two different approaches to integrate the third party code iType into CGI Studio:

Monotype/iType has a special porting API with which target and OS specifics can be overridden. CGI Studio provides a single solution for all targets. For this, the framework links the API to the device and operating system layers. It is also possible to use an own customized port instead of the CGI Studio solution.

For complete description refer to Integration of Monotype chapter.


Candera Scripting

Script Events

This versions adds support for script events. Script events can be sent and received by both Lua scripts and native code.

Candera Object References in Scripts

This versions adds support for referencing Candera objects in scripts. These object references are aware about the lifetime of the objects they reference without interfering with them. They can be passed from native code to scripts and vice versa, as well as dereferenced to call object specific methods in Lua.


Property Editing Improvements

Visualization of Enums as Icons

In CGI Studio SceneComposer for some properties the user can choose from a defined set of values e.g. the type of layout he wants to use (GridLayout, StackLayout...) or he can define the values for horizontal and vertical alignment. CGI Studio 3.5 offers intuitive icons to the user, so he can easily decide, which option he wants to take. Tooltips when hovering these icons make these icons even more user friendly. 

drawing-7-1676444810.png
Multi-Column Properties in the Property Panel

Several items have properties where more than one value can be entered: 

With CGI Studio 3.5 the input fields for these values are positioned next to each other in multiple columns to save space and reduce scrolling effort.
As you can see in the screenshot below, the appearance of the properties has been very much improved and looks a lot tighter. 

drawing-7-1676444922.png

Nine-Patch

When scaling images, the loss of too much quality shall be prevented. To optimize the scaling process, with CGI Studio 3.5 each image allows the configuration as Nine-Patch. By defining four stretchable areas for left, top, right and bottom, the image will be divided into 9 differently scaled patches (thus Nine-Patch) as seen in the image below. 

drawing-7-1676444964.png

The properties for the Nine-Patch can be defined on image level in the properties tab after activating the Nine-Patch functionality by clicking on the NinePatch icon. When the Nine-Patch functionality is activated, the user can define the 9Patch Stretchable Area by entering a value for each of the borders: left, right, top and bottom as explained in the right picture below. 

drawing-7-1676445214.png

The Nine-Patch configuration is considered at any kind of scale operation - no matter if it is a manual scale operation or during layout calculation. Here is an example that shows the original image and the same image resized using the Nine-Patch configuration: 

drawing-7-1676445278.png


Note: that when computing the resized image, the position of the center point is calculated accordingly. This is especially important as the image center is used when composing and positioning parts of a control (e.g. the needle image of a NeedleControl has to rotate around the defined image center no matter if it has been resized using the Nine-Patch.)

For complete description refer to 9-patch image chapter and for a small tutorial check 9-patch image chapter.


Pivot Hint

In addition to optimized resizing of images using the Nine-Patch approach, the user can define a Pivot Hint for each image. Additionally the Pivot Hint is used by Behaviors to allow them to set a Pivot Offset to an image that has been set.

drawing-7-1676445362.png

Controls and Behaviors

There is a bunch of new predefined Controls in SceneComposer. Those reach from Cluster Controls to IVI Controls. They cover many elements necessary in a user interface. Among those Controls are a progress-bar, gauge, telltale, list, button, slider and many more. Controls quicken the process of HMI development massively. The HMI elements can interact with each other and because of the underlying Behaviors no single line of code has to be written for many use cases.

drawing-7-1676445426.png

To make these Controls work and to be able to define own Controls, the list of Behaviors has increased significantly. There are many different Behaviors reaching from Event Handling to Value Processing. For a more detailed documentation of the new Controls and Behaviors please refer to Controls and Behaviors.

drawing-7-1676445463.png

The LayoutType of a Control can now conveniently be configured via the LayoutType in the properties panel of a Control.

A new tutorial is available here. This tutorial covers most of controls and behaviors.


Building Blocks for Behaviors

Behaviors can be nested and in this way combined to a reusable behavior building block that is part of the solution and appears in the Solution Explorer. These behavior blocks offer the possibility to configure, which of the properties of this behavior block will be published and are therefore editable at the time the behavior block is instantiated and used in the SceneComposer scene.

Visualization of Behaviors as Tree in SceneComposer

When many behaviors are nested, the hierarchy of the behaviors is shown trough the visualization of the behaviors integral map ( = "tree") structure. The tree structure of nested behaviors is now visualized properly in the Scene Tree View. This makes it easier to see, which behaviors belong together.

drawing-7-1676445503.png

For more information please check out the Behavior Building Blocks


EventHandler Tab

Every control needs an EventHandler in order to handle user events and take appropriate actions. With CGI Studio 3.5 an EventHandler Tab has been introduced in the Properties View for all Controls. In this EventHandler Tab the user can choose the event he wants to react on from a drop-down menu. Furthermore, conditions and actions can also be configured with drop-down menus in this tab. Once an Event is selected, only conditions that are suitable for the selected event are offered in the drop-down menu. 

drawing-7-1676445557.png

Additional EventHandlers can be added by clicking the '+' sign next to the EventHandler Tabs, more Actions can be added by clicking the '+' sign next to the Actions (marked in orange in the image above). 

Having only a selection of suitable and applicable conditions available at configuration time after selecting an event makes this new EventHandler Tab a welcome and user friendly feature.


New Data Types: Optional and Variant

Especially for the implementation of the new Behaviors new data types have been introduced.

Sample code for Optional: 

Optional<Int> opt;
if(true == opt) {
    Int value = *opt; //opt has been set
}
else {
    //opt has not been set
}


State Machine

CGI Studio introduces support for a new integrated solution to model behavior based on the state machine concept. By using traditional design means, multiple state machines can be defined. A state machine contains states and transitions and allows defining model changes into the graphical model when certain conditions are met. The state machine links workflow logic to existing CGI Studio graphical items and building blocks such as behaviors and controls. 

drawing-7-1676445659.png


CGI Studio 3.4.2

CGI Studio 3.4.2 - What's new:

Welcome to CGI Studio 3.4.2, 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. Focus of this release were 2D Composition in 3D using a Canvas Node and full integration of the Functional Safety features to SceneComposer.


2D Composition in 3D

With progressing SceneComposer releases 2D and 3D editing is converging constantly. More and more 2D composing functions are merged into 3D editor to pave the way for unified editing regardless of 2D or 3D content. With the latest introduction of layout support in 3D editor, you can now arrange your content on a canvas like you were used to in 2D editor. The layout strategies behave same.

The following layouters are available 

More information can be found in the Layouter Documentation

drawing-7-1676445808.png

Advanced Functional Safety

Functional safe user interfaces according to ISO 26262 become more and more important for graphical user interfaces. Candera Safety engine, which meets the strict ASIL B requirements, has been enhanced extensively to allow easy creation of appealing but safe content directly in SceneComposer. With this release comprehensive support for animations of safety content has been added. Find below an excerpt of most important features:

Together with available support for advanced image and text rendering it is now easier than ever to render attractive but safe HMI and blend seamlessly with Convenience HMI. At the same time Candera safety engine assures a secure and performant render path and guarantees freedom of interference with convenience HMI.

drawing-7-1676445859.png


CGI Studio 3.4.1

CGI Studio 3.4.1 - What's new:

Welcome to CGI Studio 3.4.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. Focus of this release were new features such as canvas text, functional safety support in SceneComposer, usability improvements, new samples and startup screen with online information.


2D Composition in 3D

Composition of 2D and 3D content will be unified more and more. As next step it is now possible to render true type text directly in 3D like you are used to in 2D. The text can be rendered on a dedicated canvas object, which is a plane object that can be oriented in 3D space. It is now very easy to apply different text effects directly via shaders. To get best performance the texts are automatically assembled to reduce the number of draw calls.

drawing-7-1676445949.png

Functional Safety SceneComposer

With version 3.4.1 a preview of advanced functional safety HMI composition is introduced in SceneComposer. The safety HMI sample shows how you can compose and export safety content directly in SceneComposer. Advanced functional safety includes following features with 3.4.1: 

drawing-7-1676446002.png

New Sample Solutions

For everyone who wants to explore the possibilities and capabilities of SceneComposer we offer new sample solutions. In this release you can have a look at the following new sample solutions: 

drawing-7-1676446179.png
drawing-7-1676446233.png
drawing-7-1676446295.png

Startup Screen with online information

Beside of recent and sample solution the startup screen now also shows the latest online news around CGI Studio development, including features, webinars, and other events to come.

drawing-7-1676446358.png

Usability Improvements



CGI Studio 3.4.0

CGI Studio 3.4.0 - What's new:

Welcome to CGI Studio 3.4.0, 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. Focus of this release were new features such as transitions, a new Player, animation property setters, performance improvements, language dependent fonts, custom property configuration, Uniform Buffer Object (UBO) support, CGI Analyzer with frame debugger, IVI controls, live data preview, sample solutions, and improved documentation.


Improved Documentation

The documentation was enhanced for:

Find below a glimpse of the layout-sample:

drawing-7-1676446505.png

Sample Solutions

Many samples are now on SceneComposer Start Screen

New samples have been added to ease exploring CGI Studio features. The new ones are: scripted car, layouter, cluster control tutorial, transitions

drawing-7-1676446551.png

Mark a solution and follow the link to the documentation at the bottom of the screen, you are guided to the related tutorial.


IVI Controls in Construction Kits

Now also controls are available to create menus or to support touch.

In the construction kit you can find the IVI controls available for your platform:

drawing-7-1676446591.png

Analyzer with Frame Debugger

The Analyzer provides a frame debugger as a new feature to help discovering visual defects much easier. The frame debugger gives an overview of what has been rendered in which order. Additionally, it gives visual access to the drawn content of each node. Furthermore, a statistical summary of the rendered frame is available.

drawing-7-1676446639.png

Debug color, depth, and stencil buffer content at custom defined time points.

drawing-7-1676446667.png

Animation Transitions

The transition framework has been extended to add a Animations as new build-in transition type. Now it is possible to trigger animations or group animations within transitions. With animation transitions almost any arbitrary transition can be realized.

The transition type Animation holds three additional optional parameters:

The animation specific parameters can be specified in the properties panel once the corresponding transition type has been selected: 

drawing-7-1676446806.png

The animations can be triggered through a request by matching the corresponding rule. 

drawing-7-1676446824.png

Reverse Transitions

The transition framework offers the possibility of reversing transitions, because transitions shall be reversed when a fragment is deactivated, while it’s fragment is in activation or vice versa. If a reversible fragment has been identified, the already running TransitionFragment shall go backwards, from its current state to the original one.

A reverse transition is executed if all of the following conditions are fulfilled:


Uniform Buffer Objects (UBOs)

Candera now supports uniform buffer objects on OpenGL ES 3.0 platforms. Uniform buffer objects batch uniform settings for e.g. light and materials. A reduced number of render state changes increases render performance on GPU-bound applications.

They can be set in Solution Options: 

drawing-7-1676446899.png


Transform Feedback

Candera supports transform feedback on OpenGL ES 3.0 platforms. This feature enables the user to utilize the vertex processing unit of the GPU to perform calculations and reuse the results. This is especially useful for debugging vertex transformations. Applications can also use it for use cases like speeding up particle systems.


Pixel Buffer Objects

Candera supports pixel buffer objects on OpenGL ES 3.0 platforms. This feature can be used to transfer data to and from video memory asynchronously.


Renderer Statistics Overlay

Candera introduces a helper class to draw renderer statistics data on screen as an overlay. That way critical information regarding rendering is available in real time on target platforms for diagnostic purposes. 

drawing-7-1676447002.png

Renderer Statistics

New render statistics have been added under the 2D section: Blits, Blits Culled, and Clears.

They can be seen here: 

drawing-7-1676447038.png

Language Dependent Fonts

Until now, the fonts could be configured based exclusively on unicode ranges. From this version onwards it is possible to configure the fonts on the basis of language. So, the configuration is extended in such a way that the font selection can be also conditioned by language ISO codes (the standardized nomenclature used to classify languages). The text style entries are grouped by culture (multiple). Every text style has - similar to "Entries" - a "Culture" list and every culture from this list has its own "Entries" list. In this way all the text style entries are grouped - as mentioned above - by culture.

This is an example for the Japanese and Chinese, just the culture is changed not the font:

drawing-7-1676447145.png
drawing-7-1676447128.png

New Animation Property Setters

It is now possible to animate more properties for cameras and nodes in both 2D and 3D scenes. The new properties which can be animated are:

Widgets have been enhanced to support properties of Vector4 and Margin type. This type of properties can also be animated.


Custom Property Configuration

A configuration file allows the user to set values that overwrite the default value from the ApplicationConfig file when SceneComposer starts. This file can be generated by using the SceneComposerConfigurator.exe.

Here you can see the default configuration of the properties for TextNode:

drawing-7-1676447208.png

The Pivot Offset has been removed and the properties Render Order Rank and Enable Snap To Device Pixel have been set to read only:

drawing-7-1676447226.png

Live Data Preview

SceneComposer was extended to allow an advanced usage of Courier plugin.

The user, when working with Courier, can define the data items and link them to widget/control properties via data binding. With live data you can simulate this for each item and store the simulation.

drawing-7-1676447274.png

New Player

A new Player is available under "<cgi-studio-root>/cgi_studio_player". It supports Courier which means that it recognizes touch-input for instance. Further features are Transitions and Memory Statistics. It also comes with a new Panel. 

drawing-7-1676447333.png


CGI Studio 3.3.3

CGI Studio 3.3.3 - What's new:

Welcome to CGI Studio 3.3.3, 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. Focus of this Release was Bugfixing, but also brand new features have found their way into it. Please see yourself.


Compiler Plugin for ApolloLake

Supports binary shader programs through GLSL shader compiler plugin. Requires Intel standalone GLSL compiler binary, and also target platform specific GLP file. Uses GHS compiler v2016.5.2 and INTEGRITY Intel Broxton version 11.4.2, monolith from updated BSP. Linking is done against libdrm version 2.4.67, and MESA version 11.2.1. DirectTextureImage on ApolloLake INTEGRITY allows the user to access the texture image data in VRAM directly: 


Amber Cluster Sample Tutorial and the Amber Cluster Demo

The Amber Cluster App is a complex application for Amber device, built with IAR compiler. It uses various features of Candera, and also integrates Courier. It uses data-binding implemented in the application for managing content, also uses the FeatStd templated state machine.

drawing-7-1676447496.png

Lua-Scripting Tutorial and the Lua-Scripting SampleSolution

The Sample Solution gives an overview of how scripts can communicate with each other. With the corresponding tutorial you can learn how the id handling works and how to manage that nodes even communicate with their sibling nodes.

drawing-7-1676447535.png


CGI Studio 3.3.2

CGI Studio 3.3.2 - What's new:

Welcome to CGI Studio 3.3.2, 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.


Visualization of Layouter Areas

The actual size and the arrange area of a selected node are visualized as boxes in the render panel. The actual size is the bounding box of the node with additional margins. The arrange area is the available space for layouting provided by the parent node. If a group node is selected, additionally arrange area and actual size of all child nodes are visualized.

drawing-7-1676447637.png

Yellow boxes visualize the arrange size (bounding boxes use also yellow).

drawing-7-1676447665.png

The dotted blue lines visualize the actual size of a node.

drawing-7-1676447679.png

Layout visualization is only activated for selected nodes.


 

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.

drawing-7-1676447807.png

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.



CGI Studio 3.3.0

CGI Studio 3.3.0 - What's new:

Welcome to CGI Studio 3.3.0, 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. Focus of this Release was to improve usability of SceneComposer, but also brand new features have found their way into it. Please see yourself.


Start up Screen:

drawing-7-1676447927.png

The first point you'll notice when starting SceneComposer 3.3.0 will be the new Start up screen, which eases the handling of recent solutions and samples. All your recent solutions are visible at a glance, and can be opened by a simple doubleclick. The need for locating known solutions in the filesystem is therefore not needed any more. Additionally you can find many prepared Samples and Templates, both being a reference and a showcase what can be done with CGI Studio.


Scripting:

drawing-7-1676447964.png

SceneComposer 3.3.0 introduces Scripting, which turns SceneComposer into an integrated development environment. Using the Lua language, complex behaviors for scene objects and their assets can be implemented and executed without the need to switch to other applications. This facilitates rapid development with fast iteration cycles that improve productivity and reduce development time and costs. Here is an introduction to scripting. The scripting reference manual can be found here.

Transitions:


Transitions:

drawing-7-1676447995.png

Brand new is our scene transition editor with which you can define transitions on a per scene basis and test these transitions directly in SceneComposer's display preview. The editor is intuitive and allows setting transitions to or from a scene just by dragging and dropping effects onto the scene list. Additionally the transition framework was extended to support cut, fade, slide and scale transitions or combinations of these effects by default. Transitions are also integrated in the behavior system, allowing you to add interactive controls to your application from the start.


Controls:

drawing-7-1676448029.png

Controls are nodes assembled of other nodes. They offer reusing large systems of nodes and abstracting their complexity. Several Common controls have been created to demonstrate their potential. An example is NeedleControl - an analog gauge you can place in your digital dashboard. The often needed settings - such as the range of values representable by the gauge's needle - are accessible as public properties. Many controls arrive with default graphics; a user will hastly grasp their concept.

Behaviors give controls functionality and so bring life to images and shapes on the screen. Each behavior is a simple building block that does something: one rotates a node, another handles an input, the other scales a real value from one interval to another, etc. They work together to compose more complex behaviors. By placing behaviors together comes the possibility to rapidly create animated or interactive elements on the screen without coding.


Appearance Library:

drawing-7-1676448058.png

The appearance library is a huge collection of various appearances. They can be used as templates that can simply be dragged on a 3D object to change its appearance. Among the appearances are wood, fur, carbon and cube-mapping-effects for example. On of the sample solutions shows all the different appearances. The appearances have special exposed properties that allow to modify the desired appearance. Please visit Materials Solution for more informations about the sample solution that shows the appearance library.


3D Primitive Shapes:

drawing-7-1676448099.png

3D Primitives have been added, and can be used from within SceneComposer. They can e.g. be used as placeholder objects if the desired 3D model is not yet ready. This is also one of the means to support rapid prototyping. You will find a sphere, a cylinder, a cube, a plane and a torus ready to be used.


Community Integration:

On the new Start up screen there is also a link to the "CGI Studio Lighthouse". Clicking on it will open your web browser pointing at the CGI Studio Lighthouse.

drawing-7-1676448129.png

The CGI Studio Lighthouse provides access to common resources like news and an FAQ. Additionally registered users can post their questions but also urgent requests there.


Feedback Form:

From now on it is possible to immediately send a feedback when using SceneComposer. Just select from the menu "Send a smile..." or "Send a frown..." and tell us what you like or don't like.

drawing-7-1676448154.png

Optionally you can include a screenshot and/or a recent log file to your feedback, which can be included automatically. If you provide us your e-mail address we can get back to you regarding your feedback. The data will be treated as confident and we will take any feedback serious.