Kanzi 3.6.4 release notes¶
New features¶
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 Kanzi Studio projects into a single Kanzi application 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.
Feature improvements¶
You can now measure the loading and deployment time of resources in your Kanzi application. See Measuring the loading and deployment time of resources.
Improvements to rendering:
Composition Target Render Pass now has the Filter Mode property, which you can use to set the filtering mode of automatically generated composition targets. By default Composition Target Render Pass uses linear filtering, but you can use this property to set the nearest filtering. See Rendering content to composition targets.
You can now set a Composition Target Render Pass to automatically resolve multisampling and mipmaps after rendering. Normally Kanzi resolves them when another render pass references the result composition target, but if you manually assign the composition target, use the Resolve Immediately property to avoid adding a render pass just to refer to the composition target render pass and perform the resolve. See Creating mipmaps for a Render Target Texture.
Kanzi now automatically creates stencil buffers for 2D and 3D composition targets. 2D composition no longer automatically clears the depth or stencil buffers, so render passes within scenes automatically composited by the
Node2D
must clear those buffers. By default the render passes always clear depth. This enables a Composition Target Render Pass to automatically create stencil buffers when the render pass uses them.Cubemaps now have seamless filtering enabled. This means that texels at the seams of cubemaps blend when you use linear filtering. To use this functionality, your target hardware must support this functionality.
Added the Move Focus and Set Focus actions, which enable you to control focus in your Kanzi application without using JavaScript scripts. See Using focus.
Added to the Text Block nodes the Remove Side Bearings property. Use the Remove Side Bearings property to position the leftmost characters of left-aligned text and rightmost characters of right-aligned text exactly within the boundary of the text block.
Custom Resource Manager protocol can now return null resources. For example, this enables you to display existing placeholder images until the new resource loads and then replace the placeholder image with a resource URI when the resource successfully loads.
You can now nest Grid List Box, Trajectory List Box 3D, and Scroll View nodes, each of which you can set to scroll on a different axis. See Nesting Grid List Box nodes and Nesting Trajectory List Box 3D nodes.
Removed the dllimports from the Kanzi template classes, which means that you can now use the
ListBoxConceptImpl
in you Kanzi Engine plugins.Kanzi Engine DLL files now include PDB files to help you debug your Kanzi application.
Kanzi Engine now throws an exception if it does not find a property type that you refer to in a kzb file.
Several Kanzi Studio usability improvements that help you get things done in less time:
You can now update with a single command all data sources in a project or entire Kanzi Studio solution. See Updating data sources.
You can now update with a single command all Kanzi Engine plugins in a project or entire Kanzi Studio solution. See Updating a Kanzi Engine plugin in a project.
Improved the Kanzi Studio command line commands so that you can automate and streamline your workflow in Kanzi Studio projects. For example, you can now create and update data sources and Kanzi Engine plugins using a script. See Automating Kanzi Studio tasks.
You can now instantiate a Scene prefab in a Viewport 2D node using a Prefab Placeholder node, including from a referenced project using a resource ID.
In the Library when you run the Show Details command on a resource that is stored in a file, you can now see the path to the resource file.
In Edit > User Preferences > Advanced you can now set the number of images you want Kanzi Studio to compress in parallel. See Compressing textures.
In Edit > User Preferences you can now set Kanzi Studio to ask if you want to load referenced projects when you open a Kanzi solution project.
When you create a Render Target created from a Viewport node, Kanzi no longer draws the debug objects to the Render Target in the Preview.
You can now remove all resources in the Library which are not in use by selecting Project > Delete Unreferenced Items. See Deleting resources and prefabs that your project is not using.
When you import an image with a name that already exists, Kanzi Studio now provides more options so that you can select whether you want to overwrite that single image, all images with the same name, add all images with the same name as new images, or cancel the importing.
Separated the Preview and thumbnail rendering processes. This way when the thumbnail rendering terminates, the Preview continues working without interruption.
You can now use the State Manager to change tags for a node.
You can now restart the Preview using the Restart button in the Preview.
In the navigation actions for the Page and Page Host nodes you can now use the Immediate property to make an instant navigation transition without an animation.
Removed the functionality of the
clearFocus()
scripting function. A valid application must have a node with focus.You can now set focus to a node when that node is being attached. In the
onAttached()
override of a node, you can call thetrySetActiveFocus()
function to set focus to that node.Kanzi Studio now marks in the Library with red type those material types that have varying variables with different precisions in the vertex and fragment shaders.
Changes¶
Now when you use the
file://
protocol to load textures, to improve the visual quality, Kanzi sets the texture to use the Linear, instead of Nearest filtering.Added the Linux CPP11 configuration.
Updated the LibPNG library used by Kanzi Engine to version 1.6.35.
Documentation¶
Added a tutorial that helps you learn how to add to your Kanzi application the pan, pinch, multi-click, and long-press gestures. See Tutorial: Pan, zoom, tap.
Added a tutorial that helps you learn how to add to your Kanzi application drag-and-drop functionality. See Tutorial: Drag and drop.
Improved the tutorial that helps you learn how to add keyboard input to your Kanzi application to show how to use the focus actions.
Improved the tutorial that helps you learn how to create application flow with Page nodes to show how to use the Kanzi Engine API to create Page navigation.
Refreshed the topic about how to use bindings to include new procedures and designs. See Using bindings.
Improved the instructions for using the Kanzi State Manager to include:
How to use the actions Go to State, Next State, and Previous State. See Using state manager actions to set states.
How to use the triggers entered-state and left-state. See Reacting when a node enters or leaves a state.
How to use keyframe animations for state transitions. See Using custom easing functions in state transitions.
Improved the instructions on how to use UVs in Kanzi Studio. See Using 3D models with UVs.
The documentation now covers the use of the
RenderOpacity
shader uniform. See Shader uniforms.Added the descriptions of settings that you can set for a Kanzi Studio project. See Configuring Kanzi Studio projects.
Added instructions on how to show a Kanzi Engine plugin message type in Kanzi Studio as either a trigger or an action. See Creating custom message types.
Added instructions on how to create mipmaps for a Render Target Texture. See Creating mipmaps for a Render Target Texture.
Added instructions on how to set the colors that Kanzi uses to draw the Performance HUD. See Showing the performance measurement graphs in the Performance HUD.
Added information for using the
Srt2D()
andSrt3D()
constants in bindings expressions.Updated the Chinese translation of the documentation to include the content released with Kanzi 3.6.3.
Fixes¶
ID |
Description |
Area |
---|---|---|
8833 |
When you render a Composition Target Render Pass to a Render Target Texture, setting the Width and Height of the Render Target Texture to Automatic now works. |
Kanzi Engine |
8781 |
Fixed |
Kanzi Engine |
8615 |
Fixed the |
Kanzi Engine |
8559 |
Fixed the issue which prevented the |
Kanzi Engine |
8529 |
Fixed the issue which on devices using Vivante framebuffer sometimes caused multiple pointers to stay pressed on the touch screen after releasing the fingers from the touch screen. |
Kanzi Engine |
8466 |
Fixed the issue which caused the Pipeline State Render Pass to create wrong result when you set the Color Write Mode property to Alpha. |
Kanzi Engine |
8456 |
The |
Kanzi Engine |
8444 |
Fixed the issue which prevented the change of the value of the Material property in some cases. |
Kanzi Engine |
7898 |
The kanzi/core.ui/graphics3d/mesh_create_info.hpp header is now included in |
Kanzi Engine |
Several fixes made based on static code analysis, including Visual Studio 2017, Clang, and Coverity. |
Kanzi Engine |
|
8900 |
Having the |
Kanzi Studio |
8870, 8055 |
You can now drag multiple items from the Assets window. |
Kanzi Studio |
8840 |
Fixed the auto-recording of changes in the State Tools. |
Kanzi Studio |
8813 |
Setting Blend Mode to Alpha: Automatic now resolves to Alpha: Mixed instead of Alpha: Non-premultiplied. |
Kanzi Studio |
8752, 8547, 8541, 8449 |
Improved performance and stability of Kanzi Studio and the Preview. |
Kanzi Studio |
8687, 8481 |
You can now create a Prefab View 3D node in a Viewport 2D node. |
Kanzi Studio |
8649 |
In the Find Project Item dialog when you select multiple found items, Kanzi Studio now correctly selects these items in the Node Tree and Library. |
Kanzi Studio |
8648 |
In the Dictionaries window the search now returns also those resources that you just added to a resource dictionary. |
Kanzi Studio |
8610 |
When you run the Delete Unreferenced Items command on binary shader, Kanzi Studio no longer deletes binary shaders. |
Kanzi Studio |
8573 |
You can now use the Kanzi Studio property editors |
Kanzi Studio |
8548 |
Fixed the issue which prevented Kanzi Studio to compress some images using the ETC2 algorithm. |
Kanzi Studio |
8498 |
Prepare Project for Release command now plays nicely with the composition tabs. |
Kanzi Studio |
8480 |
Fixed the issue which prevented you to instantiate a Scene node prefab using a kzb URL. |
Kanzi Studio |
8471 |
Fixed the default keyboard shortcut for closing composition tabs. |
Kanzi Studio |
8017 |
When you open a prefab in a composition tab, the Node Tree window now by default shows only the nodes in that prefab. |
Kanzi Studio |