Release notes and migration guides¶
Here you can find Kanzi release notes and migration guides:
Release notes list new features, feature improvements, documentation changes, and defect fixes.
Migration guides provide instructions how to port your Kanzi applications from the previous Kanzi release.
Kanzi version |
Release notes |
Migration guide |
|---|---|---|
Migration effort is not required. |
||
Migration effort is not required. |
||
Migration effort is not required. |
||
Migration effort is not required. |
||
Migration effort is not required. |
||
Migration effort is not required. |
||
Migration effort is not required. |
Kanzi 3.9 beta 1 release highlights¶
These features are new in Kanzi 3.9 beta 1:
Data Trigger functionality.
Use a Data Trigger to apply an action to either set a property value of a target node or activate an Activity node. A Data Trigger keeps that action applied for as long as the condition in that Data Trigger is met. When the condition in that Data Trigger is no longer met, Kanzi reverts the changes that it applied using that Data Trigger. See
DataTriggerclass in the Kanzi Engine API reference.Navigation Manipulator component.
Use the Navigation Manipulator to set the keyboard keys that the user can use to navigate to different directions in your application.
Kanzi Java API extensions.
Added these additional Kanzi features to the Kanzi Java API:
DataSourceandDataObject, including support for defining new typesActionandTrigger, including support for defining new typesTextureImage2DResourceManagerProtocolHandler, which allows implementing custom resource loading in Java
Added Java Kanzi Engine plugins and Kanzi Studio support.
Kanzi Java API now enables you to write Kanzi Engine plugins entirely in Java. Like their native counterpart, these plugins allow you to break down application code into reusable modules. Each plugin can carry extensions of Kanzi functionality, including new types and related metadata.
You can export a plugin and related classes into a JAR file, import it to a Kanzi Studio project and use with the Kanzi Studio Preview.
To see a full list of changes in Kanzi 3.9 beta 1, see Kanzi 3.9 beta 1 release notes.
Kanzi 3.9 alpha 6 release highlights¶
These features are new in Kanzi 3.9 alpha 6:
Linear color workflow
Linear color workflow enables more accurate light calculations, which results in higher-quality images. Additionally, the introduction of linear color workflow simplifies the workflow with images that store data in different color spaces, such as SRGB and UNORM.
These images show an example of blending in nonlinear gamma (left) and linear (right) color space.
See Color workflow.
Support for glTF 2.0
You can now import to your Kanzi Studio project all data from glTF 2.0 models, such as nodes, meshes, cameras, skins, animations, morph targets, lights, textures, physically-based materials, and so on.
See Importing 3D assets and Physically-based material properties.
To see a full list of changes in Kanzi 3.9 alpha 6, see Kanzi 3.9 alpha 6 release notes.
Kanzi 3.9 alpha 5 release highlights¶
These features are new in Kanzi 3.9 alpha 5:
Content Layout node.
Use the Content Layout nodes to present content in a UI control as a single item.
For example, use a Content Layout node to create the layout for a list item or a button with a border, a background, an icon, and a label.
See Using the Content Layout nodes.
To see a full list of changes in Kanzi 3.9 alpha 5, see Kanzi 3.9 alpha 5 release notes.
Kanzi 3.9 alpha 4 release highlights¶
These features are new in Kanzi 3.9 alpha 4:
Integration with the Android Application framework:
Improved
kzDroidFwintegration to Android UI and development ecosystem. Kanzi now supports:Simultaneous use of multiple
KanziViewitems in the same application across separate Activities or FragmentsLoading and instantiating prefabs from multiple kzb files to different
KanziViewitemsConfiguring
KanziViewin layout using attributesApplication development entirely in Java
kzJava now includes:
The
Node,Node2D,Node3D, andMathAPIsAutomatically generated native metadata references
Asynchronous resource loading support to
ResourceManager
Text Box node and Input Method Editors (IME) support text composition. See Using the Text Box nodes.
To see a full list of changes in Kanzi 3.9 alpha 4, see Kanzi 3.9 alpha 4 release notes.
Kanzi 3.9 alpha 3 release highlights¶
These features are new in Kanzi 3.9 alpha 3:
Introduced the Kanzi UI automation plugin that provides runtime access to Kanzi UI elements and enables test automation. This plugin works on top of Kanzi Engine.
Added a Kanzi Studio project template that includes the shaders for physically-based rendering.
To see a full list of changes in Kanzi 3.9 alpha 3, see Kanzi 3.9 alpha 3 release notes.
Kanzi 3.9 alpha 2 release highlights¶
These features are new in Kanzi 3.9 alpha 2:
Text Box nodes
Use the Text Box nodes to add single-line text input to your application.
To see a full list of changes in Kanzi 3.9 alpha 2, see Kanzi 3.9 alpha 2 release notes.
Kanzi 3.9 alpha 1 release highlights¶
These features are new in Kanzi 3.9 alpha 1:
Main loop scheduler
The
MainLoopSchedulersubsystem is responsible for the application main loop control flow, with support for extension through Stages and Tasks.Prerelease of Kanzi Java API
Introduced the first version of Kanzi Java API that provides access to the Kanzi native classes from Java. It uses patterns and conventions that are familiar to Java developers. This version exposes a subset of these subsystems:
Metadata
Property
Message metadata
Message
Object
Node tree
Resource management
Some functionality, workflow, and the API is going to change in the future releases of Kanzi. Your feedback is very important to us and it helps us improve Kanzi. To send your questions, findings, and comments use the Kanzi Support Portal at support.rightware.com.
Data Driven Exclusive Activity Host
Introduced the Data Driven Exclusive Activity Host node. Use a Data Driven Exclusive Activity Host node to create Activity nodes using a data source. For example, you can define the content of menus in a data source and use a Data Driven Exclusive Activity Host node to create the menus in your application.
Introduced new render passes
Use the Gather Lights Render Pass and Gather Nearest Lights Render Pass to collect Light nodes for lighting 3D nodes in a scene.
Use the Node List Render Pass to filter and hold a list of nodes that you want to render using other render passes.
See Rendering.
Uniform bindings
Uniform bindings in material types enable you to modify the values of shader uniforms without making changes to the shader code.
See Uniform bindings.
To see a full list of changes in Kanzi 3.9 alpha 1, see Kanzi 3.9 alpha 1 release notes.
Kanzi 3.8 release highlights¶
These features are new in Kanzi 3.8:
Property Target Easing Interpolator
Use the Property Target Easing Interpolator when you want to dynamically set the target value for a property and want to interpolate the current value to the target value over time using an easing function.
New functionality for binding expressions
In binding expressions you can now use:
Trigonometric functions
Relational operators
Logical operators
Accessor functions
Vector functions
Multiplication of vectors and quaternions
See Bindings expressions reference.
Asset Packages
With asset packages you can create an asset library with content, such as UI components, materials, brushes, styles, and textures. Use asset packages to make this content readily available for use in different Kanzi Studio projects or to share the content within your company for all your Kanzi applications.
See Asset packages.
Cubemap Render Pass
Use the Cubemap Render Pass to reflect the environment on the surface of 3D nodes.
To see a full list of changes in Kanzi 3.8, see Kanzi 3.8 release notes.
Kanzi 3.7 release highlights¶
These features are new in Kanzi 3.7:
Activities
Activity system allows you to define structure of the UI of your application and implement UI navigation. See Activity nodes.
Render pass prefabs
Introduced render pass prefabs which you can use to create render pass trees that define how Kanzi renders 3D content in your project. You can customize and reuse render pass prefabs in your application. See Rendering, Using render passes and Tutorial: Create a Gaussian blur effect.
Bindings
Introduced To Source bindings, which enable you to push a property value to another node or render pass. See Bindings.
Added support for bindings in render passes. See Customizing instances of a render pass prefab.
You can now use the GetCurrentValue binding function to get the current value of the property that you want to bind.
To see a full list of changes in Kanzi 3.7, see Kanzi 3.7 release notes.
Kanzi 3.6.9 release highlights¶
Kanzi 3.6.9 includes changes and bug fixes. To see a full list of changes in Kanzi 3.6.9, see Kanzi 3.6.9 release notes.
Kanzi 3.6.8 release highlights¶
Kanzi 3.6.8 includes feature improvements, changes, and bug fixes. To see a full list of changes in Kanzi 3.6.8, see Kanzi 3.6.8 release notes.
Kanzi 3.6.7 release highlights¶
Kanzi 3.6.7 includes feature improvements, changes, and bug fixes. To see a full list of changes in Kanzi 3.6.7, see Kanzi 3.6.7 release notes.
Kanzi 3.6.6 release highlights¶
Kanzi 3.6.6 includes a feature improvement, changes, and bug fixes. To see a full list of changes in Kanzi 3.6.6, see Kanzi 3.6.6 release notes.
Kanzi 3.6.5 release highlights¶
Kanzi 3.6.5 includes feature improvements and bug fixes. To see a full list of changes in Kanzi 3.6.5, see Kanzi 3.6.5 release notes.
Kanzi 3.6.4 release highlights¶
These features are new in Kanzi 3.6.4:
Kanzi Studio solution
Renewed the functionality and workflow for Kanzi Studio solutions: projects that include other projects. Kanzi Studio now loads projects from a Kanzi Studio solution in separate project tabs in a single Kanzi Studio window. You can configure how you want to access prefabs and resources from these projects. See Tutorial: Combine and Combining Kanzi Studio projects into a Kanzi application.
ASTC
You can now decrease the size of your kzb files and improve the startup time of your Kanzi application by compressing the textures using the ASTC algorithm. The ASTC offers more control and better compression than the other compression formats available in Kanzi. See Compressing textures.
To see a full list of changes in Kanzi 3.6.4, see Kanzi 3.6.4 release notes.
Kanzi 3.6.3 release highlights¶
These features are new in Kanzi 3.6.3:
Focus manager
Introduced the focus manager to maintain the focus nodes in Kanzi. The focus manager includes features, such as focus scopes and fencing, separation of active and logical focus, and directional focus definitions. See Focus.
Application performance profiling
Improved the application performance profiling system to include performance measurements for each frame, startup, and tools to help you visualize the performance of your Kanzi application. Kanzi now includes performance profiling builds for reference platforms. The application performance profiling system is now available to all users. See Measuring application performance.
New render passes
Introduced Draw Objects With Material Render Pass and Material Setup Render Pass render passes to provide additional functionality and flexibility to rendering. See Setting materials for rendering,
DrawObjectsWithMaterialRenderPass, andMaterialSetupRenderPass.
Kanzi Connect tools in Kanzi Studio
These Kanzi Connect introspection tools allow you to connect to a Kanzi Connect server and get Kanzi Connect message triggers and actions, and data sources directly in Kanzi Studio. To use the Kanzi Connect functionality, you must have Kanzi Connect installed.
To see a full list of changes in Kanzi 3.6.3, see Kanzi 3.6.3 release notes.
Kanzi 3.6.2 release highlights¶
To see a full list of changes in Kanzi 3.6.2, see Kanzi 3.6.2 release notes.
Kanzi 3.6.1 release highlights¶
To see a full list of changes in Kanzi 3.6.1, see Kanzi 3.6.1 release notes.
Kanzi 3.6 release highlights¶
These features are new in Kanzi 3.6:
Multi-project
You can now use Kanzi Studio to combine multiple Kanzi Studio projects and kzb files into a single Kanzi application. See Combining Kanzi Studio projects into a Kanzi application and Tutorial: Combine.
Application idle state
Kanzi suspends the main loop when there is no input, tasks, timers, animations, or when there is nothing in the application that updates the rendering.
To see a full list of changes in Kanzi 3.6, see Kanzi 3.6 release notes.
Kanzi 3.5 release highlights¶
These features are new in Kanzi 3.5:
Themes enable you to use a single Kanzi Studio project for multiple variants of your product.
See Theming your applications and Tutorial: Theme your application.
Prefab View nodes enable you to change a prefab at application runtime. See Using node prefabs.
Rulers and guides help you position the elements in your application. See Using rulers and guides.
The Preview now shows the scale, rotation, and transformation values for either the Render Transformation or Layout Transformation property of the selected node.
You can now purchase Kanzi Studio dongle licenses. See Using a dongle license to activate Kanzi Studio.
To see a full list of changes in Kanzi 3.5, see Kanzi 3.5 release notes.
Kanzi 3.4 release highlights¶
These features are new in Kanzi 3.4:
Support for OpenGL ES 3.0
Kanzi now supports OpenGL ES 3.0. This allows you to:
Use HDR images and cubemaps in .hdr, .exr, and .dds file formats.
Use multiple color attachments in a render pass.
Use color space setting for color uniforms in material types.
Use new texture and raw image formats.
Kanzi Lite
You can use Kanzi Studio to create projects and export a kzb file for Kanzi Lite projects. Kanzi Lite allows you to develop Kanzi applications for proprietary graphics backends.
To see a full list of changes in Kanzi 3.4, see Kanzi 3.4 release notes.
Kanzi 3.3 release highlights¶
These features are new in Kanzi 3.3:
Data sources
Use data sources to separate the user interface from the application data and to remove the dependencies between a Kanzi Studio project and the application code which define the Kanzi application.
Kanzi allows you to define the format and structure of your data source by defining a Kanzi Engine data source plugin.
See Tutorial: Get application data from a data source and Data sources.
Multisampling
Use multisampling (MSAA) to reduce aliasing in selected parts of your Kanzi application. When you use multisampling, Kanzi does not always store the full resolution of the image in the memory. This means that multisampling requires as little as one quarter of the memory bandwidth as supersampling does.
See Using multisampling.
To see a full list of changes in Kanzi 3.3, see Kanzi 3.3 release notes.
Kanzi 3.2.2 release highlights¶
Kanzi 3.2.2 includes bug fixes. See Kanzi 3.2.2 release notes.
Kanzi 3.2.1 release highlights¶
Kanzi 3.2.1 includes bug fixes. See Kanzi 3.2.1 release notes.
Kanzi 3.2 release highlights¶
These features are new in Kanzi 3.2:
Animation system
Kanzi 3.2 comes with the new animation system that is more flexible, efficient, robust, easier to use, and enables you to create animations you could not create with the old animation system. See Animation system and Creating animations and timelines using the Kanzi Engine API.
Easing functions
In the state manager you can now use easing functions and easing modes to animate the transitions between states. See Using state transitions.
To see a full list of changes in Kanzi 3.2, see Kanzi 3.2 release notes.
Kanzi 3.1.1 release highlights¶
These features are new in Kanzi 3.1.1:
Progressive rendering
You can now distribute rendering workload across several frames to reduce the amount of work and time required to render one whole frame. See Distributing rendering across several frames and the example project in
<KanziWorkspace>/Examples/Progressive_Rendering.
To see a full list of changes in Kanzi 3.1.1, see Kanzi 3.1.1 release notes.
Kanzi 3.1 release highlights¶
These features are new in Kanzi 3.1:
Localization and internationalization
Kanzi now includes both localization and internationalization. You can localize your Kanzi application to translate and customize it for a specific locale (language and location). In your Kanzi applications you can display text in languages that write right-to-left or use ligatures. For example, in your Kanzi applications you can use Chinese, Japanese, Korean, Hindi, and right-to-left languages, such as Arabic and Hebrew. See Tutorial: Localize your application tutorial and Localization.
To see a full list of changes in Kanzi 3.1, see Kanzi 3.1 release notes and Kanzi 3.1 migration guide.
Kanzi 3.0 release highlights¶
We created Kanzi 3.0 so that you can create even more compelling user experiences. We improved the workflows, created new tools and objects, and redesigned Kanzi Studio interface to enable you to create user interfaces quickly and try out your concepts faster. Kanzi 3.0 brings the creation of concepts, prototyping, development, and production of user interfaces closer than ever.
Pages. We introduced Pages so that you can quickly create application hierarchy. Pages come with out of the box transitions and a visual tool that simplifies the management of applications with complex hierarchies. See Using the Page and Page Host nodes.
Compositions. You can now isolate parts of your application and view each as a separate item in the Preview. This means that you can now edit a prefab without instantiating it, and separately inspect and edit a page and its hierarchy. See Using node prefabs and Using the Page and Page Host nodes.
Visual tools. With Kanzi 3.0 we give you even more visual tools so that you can work faster and manage your projects more efficiently. Pages tools enable you to create and edit the structure and transitions between different parts of your application. State tools enable you to create states quickly and manage different states in your application with little effort. See Using the Page and Page Host nodes and Using state managers.
Preview tools. With the new Preview tools you can do much more right in the Preview. You can create and position 2D objects, create and edit text blocks, add triggers, create and position cameras, and zoom and pan around the Preview. See Editing your application in the Preview.
Assets. We greatly simplified management of assets you use in your Kanzi Studio projects. On top of that we created a library of assets you can use by simply dragging and dropping them into the Preview and then edit them to suit your needs. See Importing.
New layouts and controls. We added 11 new layouts and controls that provide even more flexibility in your applications.
Scripting. You can now use JavaScript scripts to program the logic of your Kanzi applications. See Using scripts.
Plugins. Kanzi includes both Kanzi Studio and Kanzi Engine plugins that enable you to extend the functionality of Kanzi.
To see a full list of changes in Kanzi 3.0, see Kanzi 3.0 release notes.