Kanzi 3.4 リリースノート¶
新機能 (New features)¶
これらの機能は Kanzi 3.4 で新しく追加されました。
OpenGL ES 3.0 のサポート
Kanzi は、OpenGL ES 3.0 をサポートするようになりました。これにより、次のことが可能になります。
.hdr、.exr、.ddsファイル形式のHDR画像とキューブマップを使用します。
レンダーパスで複数のカラアタッチメントを使用します。
マテリアルタイプのカラーユニフォームには、カラースペース設定を使用します。
新しいテクスチャと生画像フォーマットを使用します。
Kanzi でOpenGL ES 3.0+を使用する を参照してください。
Kanzi Lite
Kanzi Studio を使用してプロジェクトを作成し、Kanzi Lite プロジェクト用のkzbファイルをエクスポートできます。Kanzi Lite を使用すると、独自のグラフィックスバックエンド用の Kanzi アプリケーションを開発できます。
機能改善¶
Page ノードと Pages ウィンドウの改善:
Page ノードは、Page ノードと Page Host ノードの2つに分割されました。これにより、遷移ロジックが大幅に改善されます。
Transitions は、Pages ウィンドウの重要な部分となりました。これにより、アプリケーションのユーザーインターフェースフローを単一のスペースで操作できるようになります。
Page ノードと Page Host ノード間のトランジションは、Library でアクセスできるリソースになりました。これにより、再利用可能なトランジションを作成することができます。
Pages ウィンドウと State Transition Editor ウィンドウでズームすると、ポインターの位置でズームされます。
Page ノードと Page Host ノードを使用する を参照してください。
バインディングの改善:
REM 関数を MOD 関数に加えて追加し、計算の丸めを制御できるようにしました。
REM は、ある数を別の数で割ったときの余りをゼロに向かって丸めたものを計算します。剰余 (remainder) を参照してください。
MODは、数学的なモジュロ合同関数を使用して、ある数を別の数で割ったときの余りを計算します。mod(モジュロ) を参照してください。
Binding Editor はエラーが発生した際に、より詳細な情報を提供するようになりました。
バインディングの使用 を参照してください。
行列の代わりに、Kanzi は回転にクォータニオンを使用するようになりました。クォータニオンの主な利点は、回転をより一貫した方法で記述できること、ジンバルロックに陥らないこと、任意の回転間の補間を定義できることです。この変更は次に影響します:
変換を作成するためのバインディング式の構文。バインディング式リファレンス を参照してください。
Set Property アクションでは、Rotation X、Rotation Y、または Rotation Z を使用することはできません。
Properties では、変換を行列として編集することはできません。
回転のトリガー条件は利用できなくなりました。
アニメーションシステムの改善:
Kanzi Engine APIにクリッピング、再生モード、およびリピート機能を追加しました。Timeline および Kanzi Engine APIを使用したタイムラインの設定 を参照してください。
新しい Kanzi アニメーションシステムを Kanzi Studio でも使用できるようになりました。新しいアニメーションシステムは、より柔軟で効率的、堅牢で使いやすく、従来のアニメーションシステムでは作成できなかったアニメーションを作成することができます。新しいアニメーションシステムの現在の欠点がプロジェクトに影響を与えない場合は、新しいアニメーションシステムを使用してください。既知の問題 を参照してください。
Project > Properties の Kanzi Studio で使用したいアニメーションシステムを選択するには、Animation System プロパティを設定します。
Default はプロジェクトを古いアニメーションシステムを使用するように設定します。
Experimental はプロジェクトを新しいアニメーションシステムを使用するように設定します。
デフォルトで、OpenGLとOpenGLESをランタイムで切り替えることができます。グラフィックスライブラリ を参照してください。
Kanzi は現在、シェーダー検証に glslang を使用しています。
Kanzi は現在、ETC2 圧縮をサポートしています。テクスチャを圧縮する (Compressing textures) を参照してください。
Render Target Texture の場合、Automatic 設定を使用して、使用されるノードのサイズに基づいて Render Target のサイズを設定できます。ただし、この機能はまだ Render Pass Prefab では使用できません。レンダーターゲットテクスチャ (Render Target Texture) を使用する を参照してください。
Preview の Node tool にスナップ機能を追加しました。Preview でアプリケーションを編集する を参照してください。
ステート遷移のために、Back、Elastic、Exponential、および Power のイージング関数のパラメーターを設定できるようになりました。イージング関数の設定 を参照してください。
アプリケーションをローカライズする際、標準のロケール名に加えて、ロケール名として任意の文字列を使用することができます。ロケールの使用 を参照してください。
Properties のコンテキストメニューを使用して、新しいプロパティタイプを作成できるようになりました。
kzbファイルのサイズを、冗長なシステムプロパティ情報を削除することで最適化しました。
これらのアイテムの新しいデザイン:
New Project ダイアログ
Quick Start ダイアログ
デフォルトの背景画像
ドロップダウンメニュー
変更点¶
Kanzi ライブラリは、Visual Studio 2013 および 2015 のみで利用可能です。Kanzi ライブラリ を参照してください。
Kanzi Studio は現在 .NET Framework 4.6.1 を使用しています。
IMGラッパーをIMG SDK 4.0に更新しました。
iMX6、Linux x86、Linux ARM、およびLinux ARM HFプラットフォームの構成とライブラリは、現在、別の契約の下で提供されています。
Preview ツールのデフォルト設定における Node tool は、現在ローカルスペースです。
APIの変更点¶
スクロールビューおよびリストボックスノードにマルチタッチサポートを追加しました。
スクロールビューノードでのズームのためにマルチタッチサポートを追加しました。
スクリプト関数 removeLocalValue、goToState、goToPreviousState、goToNextState、trySetFocus に追加されました。
新しい
TextureAPI。Node2DクラスのコンポジションAPIをリファクタリングしました。合成レンダーターゲットのメモリアロケーションが改善されました。
Node2Dクラスおよび派生クラスのメモリを最適化しました。Node2DとNode3Dクラスは、変換を記述するために、Matrix3x3 と Matrix4x4 の代わりにSRTValue2DとSRTValue3Dを使用するようになりました。メッセージ引数APIをC++に変換しました。この機能のC APIはもう利用できません。
メッセージタイプ宣言 API を変更しました。固定文字列を使用する必要があります。
メタクラスは固定文字列の使用を必要とします。
libPNGライブラリを1.6.21に更新しました。
Text Block ノードにワードラップとコンテントの高さを制限するプロパティを追加しました。
リストボックス3Dノードのためのデータリストアイテムジェネレーターを追加しました。
ノードに透視変換を追加しました。
デフォルトで、フォーカスは Screen ノードに設定されます。
ボタンノードのいずれかがフォーカスを持っている場合、デフォルトで、テンキーのキーボードキー Space、Enter、および Enter から入力を受け取るようになりました。
ドキュメント¶
Kanzi アプリケーションのデモモードを作成するためにJavaScriptスクリプトを使用する方法を示すチュートリアルを追加しました。
Page ノードと Page Host ノードの操作方法を示すチュートリアルを追加しました。
Kanzi Studio でステートマネージャーと State Tools を操作する方法を示すチュートリアルを追加しました。
ローカライゼーションチュートリアルを改訂しました。現在、2つのチュートリアルがあります。
ローカライズと国際化の機能を使用してアプリケーションをローカライズする方法については、チュートリアル: アプリケーションをローカライズする を参照してください。
Kanzi Studio プラグインインターフェースのドキュメントを追加し、ステートマネージャーとリソースディクショナリの操作方法を示しました。Kanzi Studio プラグインAPIリファレンス を参照してください。
ステートマネージャーに関する内容を改善しました。ステートマネージャー (State Manager) をご覧ください。
Kanzi Studio の修正¶
Preview をリサイズすると、コンテンツが中央に配置されたままになります。
Kanzi Studio は、データソースプラグインをリロードすると、データソースプロパティの変更を表示するようになりました。
Kanzi Studio は、選択されたノードのスコープ内で利用可能な Navigate to Page アクションのエイリアスをリストします。
Kanzi Studio がクラッシュしたときにシェーダーが上書きされる問題を修正しました。
.fbxファイルからインポートされたコンテンツのスキニングサポートを妨げていた問題を修正しました。
Kanzi Studio がプロジェクト名に非ASCII文字を使用している場合に、Kanzi Engine プラグインを使用してプロジェクトを作成できない問題を修正しました。
Kanzi Studio は、透明性を持つパレット画像を正しく表示するようになりました。
State Transition Editor で Apply ボタンをクリックしても、State Transition Editor が閉じなくなりました。
テキストタイプのプロパティの値を Text Block Text プロパティに設定できない問題を修正しました。
Node Tree でノードを Alt を押しながら右クリック する際に、作成コンテキストメニューで Kanzi Studio が Alias を表示できなかった問題を修正しました。
.psdファイルのインポートをキャンセルした際に、そのファイルが削除される問題を修正しました。
シェーダーコンパイラパスで引用符を使用できない問題を修正しました。
Preview と Kanzi Studio の安定性を大幅に向上させるいくつかのバグを修正しました。
Kanzi Engine の修正¶
マルチkzbファイルでResourceManager.setDefaultMemoryStrategy(OptimizeMemory)が失敗する原因となっていた問題を修正しました。
ナビゲーションロジックにおけるデフォルトのサブページ動作の問題を修正しました。
tryAcquireResourceが存在しないファイルのfile:// URLに対して例外をスローする問題を修正しました。
Scroll View ノードがフリーズする原因となっていた問題を修正しました。
カスタムメッセージが機能しない問題を修正しました。
FreeTypeライブラリに関連するリークを修正しました。
setForegroundBrushが色を2回設定できない問題を修正しました。
レンダラーのリークを修正しました。
マテリアルシェーダーは、マテリアルブラシにアタッチすると正しくデプロイされるようになりました。
ブレンディングが適用されない問題を修正しました。