Kanzi 3.9.10 リリースノート

スマートマテリアル

スマートマテリアルとマテリアルルールを導入しました。

  • スマートマテリアルは、マテリアルのプロパティを変更すると、必要なプリプロセッサ定義を自動的に調整します。スマートマテリアルはメッシュにも適応します。たとえば、メッシュがモーフィングやスキニングを使用する場合、スマートマテリアルは自動的に調整されます。

  • マテリアルルールを使用すると、マテリアル入力と頂点アトリビュートに対するシェーダープリプロセッサの定義を自動化できます。これにより、任意のマテリアルプロパティを追加または変更すると、マテリアルタイプが必要なプリプロセッサ定義を自動的に設定します。

スマートマテリアルを使用する を参照してください。

../../_images/properties-set-preprocessor-value-use-texture.png

レンダリング

  • Cubemap Render Pass および Composition Target Render Pass レンダーパスのコンポジションターゲットに対して Kanzi がミップマップを作成する方法をカスタマイズできるようになりました。コンポジションターゲットのミップマップの作成 を参照してください。

  • Image-Based Lighting Filter Pass レンダーパスプリセットを導入しました。このプリセットを使用すると、Environment Ambient Texture と Environment Reflection Texture をリアルタイムでレンダリングできます。動的なイメージベースドライティング用のキューブマップのレンダリング を参照してください。

    ../../_images/rendering-cubemaps-dynamic-ibl.gif
  • Physically-Based Rendering マテリアルタイプでイメージベースドライティングを使用する場合の、ラフなスペキュラー反射の品質を改善しました。

    • 新しい KANZI_SHADER_ROUGHNESS_ONE_LOD_OFFSET プリプロセッサ定義を使用して、Physically-Based Rendering マテリアルタイプで、Environment Reflection Texture のどのミップマップレベルを最大ラフネスにマッピングするかを指定できるようになりました。このプリプロセッサ定義のデフォルト値は 3 で、最後から 4 番目のミップマップレベルを使用します。物理ベースレンダリングマテリアルの変更点 を参照してください。

    • Physically-Based Rendering マテリアルタイプでは、Environment Reflection Texture のサンプリングに使用する反射方向が、ラフネス値が高いほどサーフェスの法線方向に曲げられるようになりました。

  • Kanzi Studio でプロパティタイプの名前を変更する際のプロパティタイプ名の検証を統一しました。

ターゲットプレビュー (Target Preview)

Target Preview を導入しました。これにより、Kanzi Studio プロジェクトで行った変更を、アプリケーションをエクスポートして再デプロイすることなく、ターゲットデバイス上でリアルタイムに確認できます。ターゲットプレビュー (Target Preview) を参照してください。

../../_images/target-preview-android.gif

Kanzi AppView

Kanzi アプリケーションに Android アプリケーションを埋め込むことができる Kanzi AppView プラグインを導入しました。https://docs.kanzi.com/appview/0.8.2 を参照してください。

../../_images/kanzi-app-view-plugin.png

アニメーション (Animations)

  • Kanzi Studio のユーザープリファレンスで、Animation Editor のキーフレームスナップモードを設定できるようになりました。アニメーションクリップエディタツールバー (Animation clip editor toolbar) を参照してください。

    ../../_images/animation-editing-settings.png
  • Animation Editor では次のことができます。

    • Snap ツールを一時的に有効にするには、Shift キーと Alt キーを押し続けます。

    • より多くの種類のキーフレームのイージングファンクションから選択できるようになりました。キーフレーム間のイージングファンクションの設定 を参照してください。

    • 選択したアニメーションのみを操作できます。選択されていないアニメーションはオパシティが下がった状態で表示されます。

    ../../_images/animation-clip-editor-easing-functions.png

Split View

Kanzi Studio で、プレビューカメラの視点からアプリケーションを表示する View ウィンドウを開けるようになりました。View では、アプリケーションの操作のみを行えます。

View ウィンドウを有効にするには、Edit > User Preferences の Advanced タブで Use Split View workflow を有効にします。プレビュー (Preview) を参照してください。

../../_images/user-preferences-split-view.png

Split View はエクスペリメンタル機能であり、皆様からのフィードバックは非常に重要です。フィードバックを送信するには、https://forms.office.com/e/JcTpTkqGW9 のフォームを使用してください。

../../_images/split-view-camera.gif ../../_images/split-view-interactions.gif

Kanzi Java API

ウィンドウ管理 (Windowing)

  • CMake 用の QNX プラットフォームパッケージに DefaultQnxEGLGraphicsOutput と QnxEGLPBufferGraphicsOutput が含まれるようになりました。以前は、これらは SCons パッケージでのみ利用可能でした。

  • Kanzi の出力を QNX ストリームにストリーミングできるようになりました。qnx::QnxStreamEGLGraphicsOutput を参照してください。

  • QNX で、Kanzi アプリケーションに使用させたいコンテキストタイプフラグを設定できるようになりました。QNX コンテキストタイプの選択 を参照してください。

  • EGL コンテキストクライアントバージョン:

    • EGL コンテキストクライアントバージョンを選択するオプションを追加しました。

    • Kanzi に未指定の ES バージョンを使用させることができるようになりました。

    • EGL コンテキストクライアントバージョンのデフォルト値が EGLContextClientSelection::Unspecified から EGLContextClientSelection::Automatic に変更されました。

    • 以前は、Wayland と QNX のグラフィックス出力では、EGL コンテキストクライアントバージョンのデフォルト値として es3 を使用していました。新しいデフォルト値は EGLContextClientSelection::Automatic です。これにより、ES3 をサポートしないシステム (特に Wayland 上の Ubuntu 20.04) でのクラッシュを防止します。

    EGLContextClientVersion を参照してください。

Kanzi Studio のユーザビリティ

  • Preview ウィンドウで Node tool を使用するときに、Camera ノードの位置を操作できるようになりました。カメラノードの位置を設定する を参照してください。

    • Orbit Camera を動かすには、Alt を押しながら以下の操作を行います。

      • マウスの左ボタンをクリックしてドラッグすると回転します。

      • マウスの中央ボタンをクリックしてドラッグするとパンします。

      • マウスホイールを回すとズームします。

    • Free Camera を動かすには、マウスの右ボタンを押しながら以下の操作を行います。

      • マウスを動かすと、カメラのアングルを任意の方向に傾けたり回転させたりできます。

      • W、S、A、D を使用して、カメラの位置を前、後ろ、左、右に移動します。

      • E と Q を使用して、カメラの位置を上下に移動します。

      • マウスホイールを回してカメラスピードを設定します。

      • 移動中に Shift を押し続けると速度が2倍になります。

      • F を使用すると、Preview で選択された3Dオブジェクトにカメラを移動します。

  • Preview のステータスバーで、カメラのスピードとラディウスに関する情報を確認できるようになりました。

    ../../_images/free-camera-speed-info.png
  • カラーエディタに16進数フィールドが追加されました。

    ../../_images/slider-color-picker-hex-textbox.png

ドキュメント

Android のシステムアラートウィンドウに Kanzi を追加する方法を示す例を追加しました。Android System Alert の例 を参照してください。

../../_images/android-system-alert.png

注目すべき修正点

Kanzi Engine

  • バインディングを持つ Cubemap Render Pass を使用したときに、Kanzi が終了する原因となっていた問題を修正しました。(RENDERING-1024)

  • Cubemap Render Target Texture でミップマップを使用できない問題を修正しました。(RENDERING-1028)

  • HDR の Half-float テクスチャに無限大の値が含まれることがある問題を修正しました。(RENDERING-1149)

  • 宣言されていたものの実装されていなかった Mesh::setInstanceData 関数と Mesh::setInstanceSubData 関数の実装を追加しました。(RENDERING-1193)

Kanzi Studio

  • メッセージトリガーの Message Source ドロップダウンに、関連する項目のみが表示されるようになりました。(PRODUCT-410)

  • 大量のレイヤーグループを含む PSD ファイルをインポートすると Kanzi Studio が終了してしまう問題を修正しました。(PRODUCT-409)

  • Data Sources ウィンドウで XML Data Source File に無効なファイルパスを設定すると Preview が終了してしまう問題を修正しました。(PRODUCT-110)

  • 浮動小数データタイプに対するプロパティタイプエディタ Slider.PropertyGridEditor の設定を修正しました。(PRODUCT-528)

Kanzi Java API

Kanzi Android framework (droidfw)

  • Kanzi Android framework (droidfw) を使用する Android アプリケーションで、KanziViewAdapter.handleVisibilityChange を使用してビューの表示/非表示を手動で切り替えると、Kanzi のフレームレートが設定された上限を時折超えてしまう問題を修正しました。(ANDROID-668)

関連項目

Kanzi 3.9.10 マイグレーションガイド

既知の問題