Katana 3.0v1リリースノート

前書き

これらのリリースノートでは、 Katana 2.6v4から3.0v1の詳細。

のすべての変更の概要についてKatana 3.0行、参照の新機能Katana 3.0

発売日

2018年5月30日

以前のリリース

のリリースノートKatana 2.6v4

システム要求

公式にサポートされているオペレーティングシステム

  • Windows 7 64ビット以上
  • Linux 64ビットオペレーティングシステム(CentOS / RHEL 6)

ハードウェア要件

最小 お勧め
CPU デュアルコアプロセッサ
ストレージ 1 GB以上のインストール可能
システムRAM 1 GB以上が利用可能
グラフィックスRAM 1 GB以上が利用可能 2+ GBが利用可能
表示 800 x 600 1920 x 1080
OpenGL OpenGL 4.3+

「推奨」は、特定のニーズを満たすことを保証するものではありません

テスト済みワークステーションハードウェア

以下にリストされている構成は、Foundryがテストした構成ですKatana。市場では絶えず変化する性質と多種多様なコンピューターハードウェアが存在するため、Foundryはハードウェアを公式に認証することはできません。以下のリストは推奨事項として使用できますが、特定のニーズを満たすことを保証するものではありません。

  • NVIDIA Quadro M4000

  • NVIDIA Quadro P4000

  • NVIDIA Quadro K4000

  • NVIDIA Quadro K6000

NVIDIA Webサイトから最新のグラフィックドライバーをダウンロードしてインストールしてください。

問題が発生した場合は、次のアドレスのサポートポータルから直接カスタマーサポートに連絡してください。 https://support.foundry.com

新機能

3Delightレンダラー

Katana今バンドル3Delight:プロダクションレンダリングの高い要求に耐えるように設計された単方向パストレーサー。3Delightプラグインのワークフローオプションは次のとおりです。

  • 完全にインタラクティブなライブレンダリング(ライト、オブジェクト、マテリアル、カメラの追加、減算、変更)
  • 簡略化されたレンダーパス管理とサンプリングコントロール
  • マルチライトツールとGafferThreeノードを介したインタラクティブライトミキシング
  • 深い出力を持つすべてのライトタイプの高速大気レンダリング
  • すべてのライトタイプにわたる統一されたライトサンプリング
  • Cryptomatteワークフローのサポート
  • 完全なOSLシェーディングエンジン

Katanaインストーラーは、3Delightをオプションのコンポーネントとして提供しますKatanaインストール。3Delightは、プレビューおよびライブレンダリングで無料で使用できます。ディスクおよびバッチレンダリングには、 3delight_r透かしを削除するライセンス。お問い合わせくださいsales@foundry.com詳細については。Katanaのサンプルプロジェクトでは、必要に応じてレンダラーで3Delightを使用するようになりました。

注意:  Katanaレンダラーに依存しないレンダラープラグインAPIを介して他のレンダラーを引き続きサポートします。

Hydra-Powered Viewer

Katana 3.0には、既存のものよりも大幅にインタラクティブでスケーラブルな新しい3Dシーンビューアータブが含まれています視聴者タブ。

新しいビューアーはヒドラ、オープンソースの主要コンポーネントとしてPixar Animation Studiosで開発された、最新のスケーラブルなOpenGLレンダリングアーキテクチャユニバーサルシーンの説明 (米ドル)事業。

ビューアー(Hydra)タブは次を使用して実装されますKatanaのViewer API。これは、 Katana 2.6。

パフォーマンスの改善

アプリケーションの起動

  • TP 81173 / BZ 39462- Katanaでファイルにアクセスしようとしなくなりました/ workspaceそして /ショット始めるとき。

  • TP 234052- Katanaでファイルにアクセスしようとしなくなりました/ネット始めるとき。これらの試行により、自動マウントの動作がトリガーされ、 Katana起動。

  • TP 279489-生成にかかる時間を短縮することにより、起動時間を改善 Pythonモジュール。

ノードグラフ

  • ノード名前空間の管理の改善により、ノードグラフのパフォーマンスが向上しました。

  • ノードグラフイベント処理とOpツリー同期のパフォーマンスが向上しました。

  • ノードグラフのパラメーター式の自動名前変更のパフォーマンスが向上しました。

シーングラフ

  • TP 311882-の描画パフォーマンスの改善シーングラフ多数の場所が固定されている場合はタブ。

    A locationHasPinnedDescendants()メソッドが追加されましたScenegraphManager.Scenegraphクラス。

  • TP 340612-の描画パフォーマンスの改善SceneGraphViewウィジェット。 シーングラフタブとGafferThreeのオブジェクトのテーブル。

ガファースリー

  • TP 311323-GafferThreeノードおよびその他のUIパフォーマンスPackageSuperToolAPIベースのノードが改善されました。

レンダリング

  • TP 303663-完成したインタラクティブレンダーのカタログアイテムを削除すると、関連する画像メモリがすぐに解放されるようになりました。

  • TP 303768-メモリ処理の改善Katanaのディスプレイドライバ。メッセージキューのサイズはデフォルトで制限されていません。ディスプレイドライバーは環境変数を尊重するようになりましたKATANA_PIPE_MAX_QUEUE_SIZE。設定されていない場合、デフォルトで16384

  • レンダーが大量のログ出力を生成する場合、バッチレンダー中のレンダーログメカニズムのパフォーマンスが向上しました。

  • TP 312192-のパフォーマンスの向上モニターレンダラーからの画像更新のタブの処理。

  • TP 327156-に送信されるピクセルデータを設定できるようになりましたKatana Display Driver APIを介してRGBAまたはARGBとして。RGBAは、によって使用される内部ピクセル形式ですKatanaこのピクセル形式を使用すると、 Katanaアルファチャネルの順序を変更するためにチャネルスウィズルを実行する必要はありません。次の例は、このチャネルピクセル形式を有効にする方法を示しています。

    NewChannelMessage_v2Ptr newChannelMessage_v2( new FnKat::NewChannelMessage_v2(*newFrameMessage)); // Setup NewChannelMessage_v2 newChannelMessage_v2->setChannelID(/* Channel ID */); newChannelMessage_v2->setChannelOrigin(0, 0); newChannelMessage_v2->setChannelDimensions(1000, 1000); newChannelMessage_v2->setSampleRate(sampleRate); newChannelMessage_v2->setDataSize(4 * sizeof(float)); newChannelMessage_v2->setPixelLayout(FnKat::NewChannelMessagev2::PixelLayout::RGBA); newChannelMessage_v2->setChannelName(legacyChannelName);
  • 改善されたパフォーマンスKatanaのメモリ割り当てとメッセージ送信オーバーヘッドの削減を含む、ディスプレイドライバAPI。

    のための新しい「ゼロコピー」オプションDataMessageタイプが導入されました。これにより、ディスプレイドライバーの作成者は、ピクセルバッファーの所有権をディスプレイドライバーAPIに転送できます。これにより、ピクセルコピーとメモリ割り当てのオーバーヘッドが大幅に削減されます。例えば:

    // Pixel buffer clean-up callback. void ImageDataDeleter(void* data) { char* dataArray = reinterpret_cast<char*>(data); delete[] dataArray; } // Sending pixel buffers back to Katana... FnKat::DataMessage dataMsg(/* ... */); // Configure coordinates/dimensions unchanged... // Allocate pixel buffer... char *dataArray = new char[blockSize]; // NEW: Pass pixel data clean-up callback to setData() and the Display Driver  // API will take ownership of the pixel buffer. dataMsg.setData(dataArray, blockSize, ImageDataDeleter); // Send to Katana via Katana Pipe interface pipe->send(dataMsg);

資産プラグイン

  • 付属のデフォルトのファイルシーケンスプラグインKatana Python実装を置き換えるためにC ++で再実装されました。PythonベースのFile Sequenceプラグインの使用は推奨されません。これらのプラグインのサポートは、将来のリリースで削除される予定ですKatana。(見る非推奨以下のセクション。)

CELマッチング

  • CELマッチングのパフォーマンスが向上しました。

  • CELの不整合と改善されたパフォーマンスに対処値式。これらは、中括弧で表示され、一致するパスについてアサーションを作成する式です。たとえば、CEL式/ root / world / * {@type == "camera"}値式を使用して/ root / worldの子をテストします@ type == "カメラ"

    複数値属性のインデックス作成が一貫して機能するようになりました。式/ foo / bar {attr( "myAttr"、1)}そして / foo / bar {@myAttr [1]} 同一のままである-それらは/ foo / bar(少なくとも2つの要素を持たなければならない)で "myAttr"の2番目の要素にインデックスを付けます。以前は、負のインデックスは「attr()」構文を使用する場合にのみ許可されていたため、 / foo / bar {attr( "myAttr"、-1)}許可されましたが / foo / bar {@myAttr [-1]} ではなかった。両方の構文は現在、Pythonと同じセマンティクスを持つ負のインデックスを受け入れます。インデックスを使用して、配列の最後からインデックスを作成します-1最後の要素を参照します。

    これらの変更により、一部の病理学的CEL式の動作が変更される場合がありますが、標準の使用には影響しません。これが当てはまらない場合は、問題を報告してください。

    注意:混合型の算術演算が一貫して評価されるようになりました未定義 (「値ではない」)。これは、いくつかの驚くべき型変換を実行できる、以前の実装の場合には必ずしも当てはまりませんでした。これは、属性が存在しない属性値の等価性テストの動作にも影響します。たとえば、次のCEL式は、次の場所を選択しません。 Katana 3.0 myAttrが存在しない場合: / root / world / geo / * {@ myAttr == 0.0}。アサーションが成功するのが目的である場合myAttr虚偽(0.0「」、またはヌル)その後、次の式を使用する必要があります。 / root / world / geo / * {@ myAttr以外}

  • TP 336919-A ヌルコレクション式言語(CEL)に定数が追加されました。のヌル値は、属性が欠落しているか、またはNullAttribute

    のようなCEL式@myAttrそしてattr( "myAttr")などと比較することができますヌル欠落している属性とNullAttribute値。例えば、 // * {attr( "missingAttr")== null}という名前の属性を持たない場所に一致しますmissingAttrまたはそれがどこにあるNullAttribute

Opタイプ

  • を利用してAlembicIn Opのパフォーマンスを改善FnAttributeユーザーが提供したデータの所有権を取得する機能。

  • 属性変更の単一セットが特定の場所に適用される一般的な場合のAttributeSet Opのパフォーマンスが向上しました。

  • TP 286382-ConstraintResolve Opのパフォーマンスが向上しました。具体的には:

    • / root / worldのglobals.constraintList属性に多数のパスがある場合のパフォーマンスが向上しました。
    • のパフォーマンスの向上FnGeolib :: Path :: IsAncestor FnGeolib :: Path :: IsAncestorOrEqual関数(C ++)およびPathUtils.IsAncestor PathUtils.IsAncestorOrEqual 関数(OpScript)
    • 導入されましたFnGeolib :: Path :: Compare関数(C ++)およびPathUtils.Compare 正規化されたシーングラフの位置パスを比較する関数(OpScript)。この関数を使用して、次のコンパレータを実装できます。 std :: sort (C ++)またはtable.sort (ルア)。
  • LookFileResolve OpおよびFnLookFileの方法 FnGeolibServices

  • OpScript Opのパフォーマンスの向上。

  • OpScriptノードは、LuaインタープリターとしてLuaJIT 2.1.0を使用するようにアップグレードされました。これにより、一般的なパフォーマンスが向上するだけでなく、将来の改善の基礎が築かれます。変更は一般に透過的であるはずですが、Lua5.1ベースの以前のOpScript実装は、LuaJITベースの実装で問題が発生した場合でも引き続き利用できます。この実装は、環境変数を設定することで選択できますKATANA_OPSCRIPT_INTERPRETERLua_5_1

    LuaJITはLua 5.1言語標準に厳密に準拠しており、Lua 5.1に祖父となった一部のLua 5.0コンストラクトはLuaJITでは使用できません。これらは:

    • そのmath.mod() function; use math.fmod() or the %代わりに演算子。
    • 暗黙のarg parameter for old-style vararg functions; use Lua 5.1 vararg expressions (...)代わりに
    • そのstring.gfind() function; use string.gmatch()代わりに

    OpScriptが以前のLuaJITリリースのアドレス空間制限の影響を受けないように、「GC64」モードでLuaJIT 2.1をビルドすることに注意してください。

    詳細については、次を参照してください。

  • TP 282745-ロックの競合を減らすことで、同時レンダリングにおけるOpScript Opのスケーラビリティが改善されました。これにより、キャッシュをフラッシュしてもOpScript Opの内部キャッシュがフラッシュされないという問題も解決されます。

FnAttribute

  • の実装FnAttributeより高性能になりました:

    • 静的属性:特定の属性(整数[0、256]、フロート0.0fと1.0f、ダブル0.0と1.0、空の文字列と空のグループなど)は一度だけ作成され、その後再利用されます。つまり、参照カウントをインクリメントおよびデクリメントする必要はありません。
    • 移動コンストラクターと演算子:これらの新しい演算子(C ++ 11)は、 FnAttribute。新しいコンパイラを使用すると、オブジェクトをいつ移動できるかが検出されます。つまり、参照カウントをインクリメントまたはデクリメントする必要はありません。

    注意:  Katana 3.0v1は異なるアルゴリズムを使用して属性ハッシュを計算するため、属性ハッシュはKatana 2.x.

  • TP 309635-の動作DataAttributegetNearestSample()メソッドが変更され、場合によっては、C ++プラグインをビルドするためにコードを変更する必要がありますKatana 3.0 API。

    の以前のリリースではKatanaを呼び出すことにより、サンプルバッファへの生のポインタを取得することが可能でしたgetNearestSample(time).data()。パフォーマンス上の理由により、 Katana 3.0このイディオムは許可されず、コンパイル時エラーが発生します。FnAttribute今ではConstVectorによって返されるオブジェクトgetNearestSample()を呼び出す前にローカル変数に割り当てられますデータ() 方法。以下に例を示します。

    // Works with both Katana 2 and Katana 3. `p` is valid until either of `sample` // or `myIntAttr` are destructed. auto sample = myIntAttr.getNearestSample(.0f); const int* p = sample.data(); // Results in a compile-time error in Katana 3. const int* p = myIntAttr.getNearestSample(.0f).data();

    マルチサンプルのサンプルバッファへの生のポインタを取得しやすくするためDataAttribute オブジェクト、 Katana 3.0は、新しいC ++ APIを次の形式で導入します。 getSamples()方法。以下に例を示します。

    for (const auto& sample : myIntAttr.getSamples()) { ProcessSample(sample.getSampleTime(), sample.data(), sample.size()); } // Assign the result of `getSamples` to a local variable if you want pointers to // remain valid for longer. Here, the raw pointers stored in `vec` remain valid // until either the `myIntAttr` or `samples` objects are destructed. auto samples = myIntAttr.getSamples(); vector<tuple<float /*time*/, const int* /*data*/, size_t /*size*/>> vec; for (const auto& sample : samples) { vec.emplace_back(sample.getSampleTime(), sample.data(), sample.size()); }

    さらに、新しいgetValuesAs()属性のプライマリタイムサンプルからの固定数の値で構築されたC ++オブジェクトを返す関数が追加されました。たとえば、あなたが持っている場合FloatAttribute 4x4マトリックスを表す場合、次のようなコードを使用してImathマトリックスオブジェクトに変換できます。

    auto m44f = myFloatAttr.getValuesAs<Imath::M44f, 16>();
  • FnAttributesは、構築されたデータバッファの所有権を取得できるようになりました。これにより、データをコピーする必要がないため、ピークメモリ使用量を削減し、全体的なレンダリング時間を短縮できます。 FnAttributeの内部バッファ。

    のためにFnAttributeデータバッファーの所有権を取得するには、呼び出し元は、削除機能とnull以外のデータポインター(コンテキスト)を FnAttributeのコンストラクタ。これにより、次の結果が得られます。

    1. FnAttributeサンプル時間の値のコピーを取得します{-0.5、0.0、0.5}。
    2. 各タイムサンプルバッファーのポインターの値(ポインターではなく、ポインターが指すもの)をコピーします。
    3. 破棄されると、属性はユーザー指定の関数を呼び出し、ユーザー指定のコンテキストをそれに渡します。使用例については、以下を参照してください。
    4. サンプルバッファーとユーザー指定のコンテキスト(これらは異なる場合があります)は、 FnAttributeデータの所有権を取得しました。

    使用例:

    // ----------------------------------------------------------------------------- // Create an IntAttribute with a single time sample of 10 values. int64_t tupleSize = 1; int64_t valueCount = 10; // Create a buffer to store our data -- this must live on the heap, as the // attribute we create stores pointers into this memory block. unique_ptr<int[]> buf(new int[valueCount]); // Fill `buf` with data. // ... FnAttribute::IntAttribute myIntAttr(buf.get(), valueCount, tupleSize, buf.get(), [](void* context) { delete[] static_cast<int*>(context); }); // myIntAttr now owns the buffer. buf.release(); // ----------------------------------------------------------------------------- // Create a FloatAttribute with three time samples of 64 values. int64_t tupleSize = 4; int64_t valueCount = 64; int64_t sampleCount = 3; // Create a buffer to store our data -- this must live on the heap, as the // attribute we create stores pointers into this memory block. unique_ptr<float[]> buf(new float[valueCount * sampleCount]); // Fill `buf` with data. // ... // FnAttribute copies these buffers into internal storage; they need not live on // the heap. const float* samples[] = {&buf[valueCount * 0], &buf[valueCount * 1], &buf[valueCount * 2]}; float sampleTimes[] = {-0.5f, 0.0f, 0.5f}; FnAttribute::FloatAttribute myFloatAttr(sampleTimes, sampleCount, samples, valueCount, tupleSize, buf.get(), [](void* context) { delete[] static_cast<float*>(context); }); // myFloatAttr now owns the buffer. buf.release();

Geolib3ランタイム

  • 「no-op」シーングラフの場所の計算とメモリのオーバーヘッドが大幅に削減されました。これにより、大規模な入力シーンでスコープが明確に定義された多くのOpが動作するレシピのシーンクック時間(したがってレンダリング時間)とメモリ使用量を大幅に改善できます。

  • まだクックされていない(またはGeolib3のキャッシュに存在しない)Op内のシーングラフの位置データの要求を処理するときにGeolib3の通常の動作を無効にする実験的な機能が追加されました。通常、Geolib3は現在のクック操作を中止し、要求された場所をクックします。Opが計算量の多いタスクを既に完了している場合、これらは失われます。この機能を有効にすると、Geolib3は位置データの欠落を検出すると、代わりにそのデータを再帰的にクックし、位置データが要求されたポイントで元のOpに戻ります。この機能を有効にするには、次の環境変数を設定します。 KATANA_ENABLE_RECURSIVE_COOKS=1

  • シーングラフのロケーションパスの操作と保存を行うGeolibランタイムのコアコンポーネントが書き直されました。この変更は、将来のパフォーマンスの改善を促進するための内部的な変更の増分プロセスの一部です。これらの変更はシーン処理に影響を与えず、ほとんどの場合パフォーマンスに中立であることが意図されていますが、シーングラフのロケーションパスを受け入れるまたは返すGeolib Cook Interfaceによって提供されるいくつかのメソッドのパフォーマンスの向上に気付くかもしれません。

  • の多くのAPI関数のシグネチャFnGeolibそして FnAttributeによって文字列パラメーターを取得しないように更新されましたconst std :: string&代わりに、軽量の「文字列ビュー」オブジェクトとして使用します。この変更は、既存のプラグインとソース互換になるように設計されており、一時的なメモリ割り当ての数を減らすための継続的な取り組みの一部です。 Katana

  • TP 251955-で導入されたまれな問題を修正Katana 2.0v4では、Geolibのクック結果の内部キャッシュが予期せず動作し、シーンクック中のパフォーマンスが低下する可能性がありました。この問題は、シーンの正確性には影響しませんでした。

  • TP 232097-クックインターフェースのパフォーマンスの改善getOpType()関数。

  • のパフォーマンスの向上FnGeolibOp :: GetGlobalAttr() (C ++)およびInterface.GetGlobalAttr() (Lua)関数。

    下位レベルを使用するC ++プラグインコードFnGeolibServices :: getGlobalAttrGeneric()関数を更新する必要があります:前の FnGeolibServices :: BaseGlobalAttributeProvider抽象基本クラスの名前が変更されましたBaseGlobalAttributeProviderLegacy非推奨と見なされます。このクラスを使用するプラグインコードは、改訂版に移行する必要がありますBaseGlobalAttributeProviderインターフェース。

  • のパフォーマンスの向上 FnGeolibUtil :: Path :: FnMatch() (C ++)およびPathUtils.FnMatch() (Lua)関数。

  • TP 327987-のパフォーマンスがわずかに向上execOp()

  • TP 329845-のパフォーマンスがわずかに向上getAttr()によって呼び出されるOp内で呼び出されたときexecOp()

  • のパフォーマンスをわずかに改善GeolibCookInterfaceメソッド。

機能強化

改訂されたUIテーマ

Katana UIテーマとカラーパレットは、最新のFoundryアプリケーションとより一貫した全体的に平坦な外観を実現するために更新されました。

注目すべき変更点は次のとおりです。

  • 厚い3Dベベルは、単一ピクセルのアウトラインに置き換えられました。
  • 選択されていないタブのタイトルは、Nukeのように、ペイン間のスプリッターの濃い色で表示されます。
  • 編集可能な状態のパラメーター編集ウィジェットは、通常の背景色と比較して暗い背景色で表示されますパラメータータブの代わりに、明るい。読み取り専用状態の場合、背景色は明るいままです。
  • 下部のコマンド領域Pythonタブも暗い背景色で表示され、ユーザーがそこにPythonコマンドを入力できることを強調します。コード評価の結果は、上部の読み取り専用の明るい領域に表示されます。
  • メニュー項目と選択したテキストは、黄色の背景に黒いテキストで強調表示されるようになりました。これは、メニュー項目の階層を強調するために、開いているメニューのタイトルにも適用されます。
  • で選択されている場所シーングラフタブまたはパラメータータブは灰色の背景色の白いテキストで強調表示されます。
  • ペイン間のスプリッター、強調表示されたパラメーター、属性、プロジェクト設定、およびドラッグアンドドロップ操作中のドロップターゲットの可能性が、メニュー項目および選択したテキストの強調表示に使用されるのと同じ黄色で強調表示されるようになりました。
  • 選択されたノード、そのポート、およびノード間の接続は、メニュー項目と選択されたテキストを強調表示するために使用されるのと同じ黄色で強調表示されるようになりました。
  • 垂直分割線の微妙なグラデーションは、単一ピクセルの実線に置き換えられました。

間違ったパレットの色が使用されている少数のケース(たとえば、黒で表示されるテキスト)は修正されていません。また、コントラスト比を改善して読みやすくするために、カラーパレットをさらに改良する予定です。

タブとレイアウト

  • TP 248121-新しいgetMenuBar()機能が追加されましたUI4.App.MainWindow.MainWindowクラスと UI4.Tabs.BaseTab.BaseTabクラス。メニューバーを提供するすべての組み込みタイプのタブに実装されました。

    • ノードグラフタブ
    • モニタータブ
    • カタログタブ
    • ビューアー(Hydra)タブ
    • UVビューアータブ
    • 視聴者タブ
    • Pythonタブ
    • メッセージタブ

    新しいAPI関数により、カスタマイズコードの開発者は、次のメニューバーにアクセスできます。 Katanaのメインウィンドウと、タブクラスのプライベートメンバー変数に依存することなく、パブリックで一貫した方法でメニューバーを提供するタブのメニューバー。

  • TP 279781-カスタムタブをサブメニューの階層にネストできるようになりましたKatanaタブメインメニュー。スラッシュを使用してプラグインの名前を指定します。例:

    PluginRegistry = [("KatanaPanel", 2.0, "Company/Show/Custom", CustomTab)]
  • タブの種類のリストKatanaタブメインメニューが再編成され、タブタイトルの表示が改良されました。

    • タブは、タブプラグインの検索パスごとに個別のセクションに整理されるようになりました。セパレータのタイトルは、次の名前のファイルを配置することによりカスタマイズできます。 separatorTitle.txtタブ内のフォルダーKATANA_RESOURCESディレクトリ。これらのファイルのテキストの最初の行は、セパレータのタイトルとして使用されます。
    • CELスクラッチパッドタブがから移動されましたタブプラグインを組み込みタイプのタブにする。
    • LookFileManagerノードのパラメーターの編集時にオーバーライドに使用できるフローティングペインで選択したノードのパラメーターを表示するためのメニューコマンドのテキストは、一貫性のために更新されました。
      • 古いテキスト: オーバーライドのティアオフパラメータ...
      • 新しいテキスト: フローティングペインにパラメーターを表示
    • タブのタイトルとフローティングタブのウィンドウタイトルの外観が変更され、それらのタブがネストされているメニューの名前が削除されました。 隠す/、そしてデバッグ/
    • サンプルプロジェクトタブを使用するように名前が変更されました"隠す/"それから隠すために接頭辞タブメニュー。以前にそのタイプのタブを含んでいたロードされたレイアウトは、代わりにエラーを表示します。
  • TP 281102-特定の種類のタブのコンポーネントにアクセスするための追加機能は、タブクラスのパブリックAPIで公開されています。

    • ノードグラフタブ: NodegraphPanel.getNodeGraphWidget() -ノードの描画を実装するタブのノードグラフウィジェットを返します。
    • モニタータブ: MonitorPanel.getEmbeddedCatalogTab() -を返しますカタログ内部に埋め込まれているタブモニターを押すことで切り替えることができるタブタブキー。

    上記の機能を使用して、上記のタイプのタブの外観をカスタマイズできます。たとえば、 Katanaタイプのコールバックを含む起動スクリプトonTabCreated

    from Katana import Callbacks def onTabCreated(objectHash, tab): pass # ... Callbacks.addCallback(Callbacks.Type.onTabCreated, onTabCreated)
  • TP 282368-新しい名前のコールバックタイプonTabCreated追加されました。そのタイプに追加されたコールバックは、タブが作成されるたびに呼び出されますKatanaという名前のキーワード引数として渡されたタブオブジェクトを使用したUI タブ

  • のデフォルトのレイアウトKatanaレイアウトメニューが更新されました。

ユーザーインターフェース

  • TP 63442 / BZ 33772-チェックボックスウィジェット、ラジオボタンウィジェット、および切り替えられたメニュー項目の外観が更新されました。

    • 排他的および非排他的なトグルメニュー項目は、Nuke製品ファミリと一致するさまざまなスタイルで表示されるようになりました。
      • 排他的なトグルメニュー項目は、ラジオボタンスタイルで表示されます。
      • 非排他的なトグルメニュー項目は、チェックボックススタイルで表示されます。
    • チェックされていないトグルメニュー項目は、空のインジケータシェイプで表示されるようになりました。そのため、このようなトグルメニュー項目はメニューコマンドと視覚的に異なります。
  • TP 81710 / BZ 39744-パラメーター、属性、プロジェクト設定、または設定にカーソルを合わせると、ツールチップが表示されます(少し遅れて)。これには、それぞれのアイテムのフルネーム、ヘルプテキスト、属性タイプが含まれます。

    を押したときCtrlパラメーター、属性、プロジェクト設定、またはプリファレンスにカーソルを合わせる前にキーを押すと、表示されるツールチップに各アイテムのすべてのウィジェットヒントも表示され、カスタムパラメーターインターフェイスの構築とデバッグに役立ちます。

    この機能強化の一環として、ラベルをクリックする動作マルチパラメータ、例えばのラベルscreenWindow CameraCreateノードのパラメーターが変更されました。以前は、ラベルをクリックしてmultiパラメーターを展開すると、そのラベルテキストはほぼ中央に配置されていました。 パラメータータブを使用すると、パラメータを再度折りたたむことが難しくなります。これで、ラベルテキストはグループパラメーターウィジェットのテキストと同様に左に揃えられ、複数のパラメーターをすばやく展開したり折りたたんだりできるようになりました。

  • TP 170062-を使用してLookファイルを参照する場合詳細設定>ブラウザを使用してLookファイルを追加のコンテキストメニューのメニューコマンドルックファイルで編集されるLookFileManagerノードのアイテムビューパラメータータブ、 Look File Globalsとして追加チェックボックスはデフォルトでオフになりました。

    ブール設定は、の状態を制御するために追加されましたLook File Globalsとして追加のチェックボックスブラウザを使用してLookファイルを追加アセットブラウザダイアログ: nodes / lookFileManager / addAsLookFileGlobalsDefault

  • TP 263340-次の2つの設定が追加されました好みのカテゴリ:

    • enableDisplayTransformDefault -かどうかを制御します表示変換を有効にするカラーピッカーダイアログのチェックボックスはデフォルトでオンになっています。
    • restrictRGBAComponentsDefault -かどうかを制御しますRGBAコンポーネントを制限するカラーピッカーダイアログのチェックボックスはデフォルトでオンになっています。

    この作業の一環として、次の追加の変更が行われました。

    • の効果表示変換を有効にするチェックボックスがすぐに編集された色パラメータの色サムネイルに適用されますパラメータータブ。カラーピッカーダイアログ自体で選択した色の外観に影響を与えます。
    • RGBAコンポーネントを制限するチェックボックスは、編集されたカラーパラメータまたは設定がアルファコンポーネントを提供する場合にのみ使用可能になりました。RGBコンポーネントのみを提供する編集された色の場合、チェックボックスはそのコンテキストでは適用されないため、使用できません。
  • TP 324312-事前にテキストを入力した後、次のツールボタンのいずれかをクリックして、それぞれのリストをフィルタリングするために、ポップアップを開くときに入力したフィルターテキストが選択されるようになりました。フィルターテキストを選択します。

    • ノードグラフタブ: ノードを見つける
    • パラメータータブ: パラメータを見つける
    • シーングラフタブ: シーングラフの場所を見つける
    • 属性タブ: 属性を検索
    • プロジェクト設定タブ: パラメータを見つける
  • PrimitiveCreateノードタイプのタイプパラメータとマテリアルノードタイプのmaterialPath パラメータは、アイテムテキストフィルタリングでドロップダウンメニューウィジェットを使用するようになりました。

  • 入力フォーカスを持つコントロールはフォーカス四角形で表示されるようになり、それらを識別しやすくなり、アイテムビューに入力フォーカスがあるときに矢印キーを押すと予測しやすくなりました。

ノードグラフとパラメーター

  • TP 82828 / BZ 40170-依存関係のディスクレンダリングに関する表現ノードグラフわかりやすくするためにノードのコンテキストメニューが調整されました。セクションタイトルが以前のディスクレンダリングの依存関係ディスクレンダリングの依存関係、メニュー項目の名前はプレビューレンダリングそしてディスクレンダリングプレビューレンダリングの前そしてディスクレンダリングの前

  • TP 264677-属性履歴は、属性関連パラメーターのコンテキストメニューから利用可能になりました。 パラメータータブ。属性履歴/継承ポップアップに属性名とシーングラフの場所が表示されるようになりました。複数の属性タブインスタンスでは、属性履歴/継承ポップアップを開くと、各タブインスタンスに対してスーパーインポーズされたポップアップが開かれなくなりました。

  • TP 283931- 背景ノードを選択したノードに合わせるコマンドは編集のメニューノードグラフ 1つのノードのみが選択されているときにタブを使用できるようになりました。

シーングラフと属性

  • TP 17505 / BZ 19641-ブランチの展開または折りたたみを停止するロケーションタイプをカスタマイズするためのAPI関数シーングラフタブが追加されました:

    • SetStopAtLocationTypes(* locationTypes):
      • を使用するときにシーングラフの展開または折りたたみを停止する場所のタイプを設定しますブランチを展開またはブランチを折りたたむメニューコマンド、またはグループの場所をダブルクリックするときシーングラフタブ。
      • locationTypes:シーングラフの展開または折りたたみを停止する場所の種類の名前のシーケンス。

    たとえば、関数をスタートアップスクリプトで使用して、停止する場所の種類を設定し、標準の場所の種類に加えてカスタムの場所の種類を含めることができます。

    • UI4.Widgets.SceneGraphView.SetStopAtLocationTypes( 'assembly'、 'component'、 'myCustomLocationType')

    この機能強化の一環として、コンテキストメニューの場所の種類アイコンが変更され、アプリケーションのフォントサイズの設定に合わせて拡大縮小されました。

    さらに、コンテキストメニューにはすべてシーングラフの展開と折りたたみがデフォルトで停止する場所のタイプ。以前は有効であったがコンテキストメニューには表示されなかった次のタイプの場所を含みます。

    • カメラ
    • ルックファイル

    これらのタイプのロケーションで停止および展開しないようにする場合は、上記のAPI関数を使用して、それらを含まないロケーションタイプのセットを提供できます。

  • TP 312851-タイプがシーングラフの場所のアイコンインスタンス配列" 追加されました (トリプルI)。

レンダリング

  • TP 81898 / BZ 39827- 「renderStarted」Katanaイベントタイプが拡張され、選択されたレンダーメソッドの名前とタイプに関する情報と、レンダラーの名前がrenderSettings.renderer属性/ルートレンダーが開始されたノードによって生成されるシーングラフ内。

    に登録されているカスタムイベントハンドラー「renderStarted」既存のイベントタイプに加えて、次のキーワード引数を受け入れるようにイベントタイプを変更する必要がありますノード引数:

    • レンダラー:から取得された、レンダリングに使用されるレンダラーの名前renderSettings.renderer属性/ルート
    • renderMethodType:開始されたレンダーのタイプ、例えば「previewRender」
    • renderMethodName:選択されたレンダリングメソッドの名前、例えば「previewRenderLowRes」
  • TP 82143 / BZ 39951-通常、ログインレンダリングログタブは、それぞれのログに新しいテキストが追加されるたび、およびカタログアイテムを切り替えるたびに、自動的に最後までスクロールされます。これにより、カタログアイテム間でレンダーログを比較することが難しくなる可能性があります。

    ここで、ログをスクロールするとレンダリングログタブアップ、自動垂直スクロールがオフ、およびスクロールロックこれを示すために、タブのネストされたタブウィジェットの右上にツールボタンがアクティブとして表示されます。別のカタログアイテムに切り替えると、前に表示したレンダーログのスクロール位置がキャッシュに保存され、後で同じレンダーログを再度表示すると復元されます。これにより、ユーザーは2つの異なるカタログアイテムのレンダリングログをより簡単に比較できます。

  • TP 89616 / BZ 42804-レンダラープラグインからのメッセージは、 RenderLogバッチモードのロガー。以前は、彼らはメインバッチロガー。

  • TP 107885 / BZ 48022-ライブレンダーのカタログアイテムのプログレスバーの色が青から緑に変更され、ユーザーがライブレンダーとプレビューレンダーおよびディスクレンダーをより簡単に区別できるようになりました。プレビューレンダリングとディスクレンダリングに使用される青色は、ライブレンダリングの緑色をよりよく補うためにわずかに変更されています。

    この機能強化の一環として、レンダーに使用されるレンダー方法のタイプがカタログアイテムのプロパティとして保存されるようになりました。のgetRenderMethodType()そしてsetRenderMethodType() 関数が追加されましたCatalogItemクラス。新しいプロパティの値の取得と保存を許可します。レンダリングメソッドタイプは、永続カタログアイテムの一部としても保存されます。 Katanaプロジェクト。同じプロジェクトを後で開いた後に取得できます。

  • TP 247619- Katana新しく作成された場所の完全なライブレンダリング更新をレンダラープラグインに送信するように設定できるようになりました。この動作は、 liveRenderSettings.sendFullUpdateForNewLocations整数属性1;完全な更新をサポートするレンダラープラグインは、端末Opを登録してこの属性を設定できます。

  • TP 264194-という名前のオプションのパラメーターincludeBypassedに追加されましたFarmAPI.GetSortedDependencies()関数:

    • FarmAPI.GetSortedDependencies(nodeOrNodes = None、includeBypassed = False):
      • 入力ノードのリストに基づいて、レンダーパスとその依存関係のリストを返します。
      • nodeOrNodes:利用可能なレンダーパスの検索範囲を定義する入力ノード。ノードリストが提供されない場合、現在のノードスコープに基づいてデフォルトリストが使用されます。
      • includeBypassed:バイパスされるノードを含めるかどうかを制御するオプションのフラグ。
  • TP 282669-以下から選択するオプションとして、次のOpenEXR圧縮タイプが追加されましたRenderOutputDefineノード:

    • B44 -非可逆4 x 4ピクセルブロック圧縮、固定圧縮率。
    • B44A -非可逆4 x 4ピクセルブロック圧縮、フラットフィールドはさらに圧縮されます。
    • DWAA -非可逆DCTベースの圧縮、32スキャンラインのブロック単位。部分的なバッファアクセスにより効率的です。
    • DWAB -256スキャンラインのブロックでの損失の多いDCTベースの圧縮。DWAA圧縮よりも、スペース効率が高く、フルフレームをデコードする方が高速です。

その他の機能強化

  • TP 281615-資産管理システムを介したLiveGroupsのバージョンアップのサポートが追加されました。

  • TP 305871-OpScriptノードは、Luaスクリプトの構文強調表示をサポートするようになりました。

  • 押すタブまたはシフト+タブ OpScriptノードの編集中script.luaパラメーターはそれぞれテキストをインデントまたはデデントします。

  • C ++ FnPluginManager :: PluginManager :: getSearchPaths()パスのセットをリストする関数Katanaプラグインの検索は、Pythonの形式で公開されていますPluginSystemAPI.PluginCache.GetSearchPath()。歴史的な理由から、 PluginCache Pythonモジュールは長い間「パス」(単数形)を使用して、 リストパスの。

  • TP 330476-PackageSuperToolAPIベースのスーパーツールとパッケージの作成者は、パッケージの表示方法をカスタマイズできます追加 SuperToolのメニューパラメータータブUI。

    • パッケージが提供する場合ADD_MENU_GROUP_NAMEクラス変数。これは、パッケージを名前の付いたサブメニューにグループ化するために使用されます「%sを追加」
    • SuperToolが実装する場合getDefaultAddMenuGroupName() Editorモジュールのメソッドを使用し、この呼び出しの結果を使用して、グループ化されていないパッケージのサブメニューに名前を付けます。
  • TP 332593- ScenegraphManager.getSelectedLocations()メソッドは、選択順序でソートされた選択された場所のリストを返すようになりました。

  • TP 337170-新しい環境変数KATANA_ARCHIVE_AND_COMPRESS_LIVEGROUPSユーザーが保存時にLiveGroupファイルをアーカイブおよび圧縮できるように定義されています(デフォルトでは、これらのファイルはプレーンテキストとして公開されます)。

    NodegraphAPI.WriteKatanaFile(...、compress = True、archive = True、...)もはや評価しませんKATANA_NEVER_ARCHIVE_SCENE_FILEそして KATANA_NEVER_COMPRESS_SCENE_FILE 内部的に環境変数。これは、 圧縮するそしてアーカイブパラメータ。以前はそうではありませんでした。

  • TP 339216-AlembicIn Opは、曲線の基底を整数属性としてエクスポートするようになりましたgeometry.basis。値はAlembicライブラリのBasisType列挙。

  • A hasLocationEvents()メソッドが追加されましたFnGeolib.GeolibRuntime.Clientクラス。このメソッドは、Geolib3クライアントが、イベントの処理をコミットせずに、シーングラフの位置をクッキングした結果を表す保留中の位置イベントを保持するかどうかを決定します( getLocationEvents()します)。

ドキュメントの改善

オンラインヘルプ

  • Katanaオンラインヘルプには、Hydra Viewerのドキュメントが含まれるようになりました。

  • Katanaオンラインヘルプが更新され、レンダラーの使用例で、RenderMan 17およびArnold 4.2プラグインではなく、3Delightプラグインの使用が説明されました。 Katana 2.5。

  • Katanaオンラインヘルプが再編成され、新しいテーマが追加されました。

開発者ガイド

  • のドキュメントKatanaの属性規約が追加されましたKatana開発者ガイド。これは標準属性のトピックKatanaオンラインヘルプ。

  • TP 307509- Katana開発者ガイドは、外部ソフトウェアに関するセクションで更新されました。このセクションには、サードパーティのライブラリとKatana、VFX Reference Platform CY2017の一部であるライブラリを含みます。一般に、ツールチェーンまたはライブラリのバージョンに制限はありませんKatanaプラグインは使用できますが、いくつかの重要なケース(Python、PyQt、Qtなど)では、顧客のプラグインが同梱されているもの以外のバージョンを使用することは非現実的ですKatana、ドキュメントではこれらのケースを説明しています。

  • デフォルトの属性プロデューサー (DAP)セクションKatana開発者ガイドが拡張され、DAPに関する背景情報、DAPの起動方法、およびDAPと統合するDAPの記述に使用される属性規則が含まれるようになりました。 Katana UI。

  • ウィジェットとヒントのセクションKatana開発者ガイドでは、スクリプトボタンスクリプト内で使用できるPython環境について説明しています。

  • TP 174459- Katana開発者ガイドのドキュメントFnDefaultAttributeProducerPlugin.h例に対して間違った署名を与えたクック()方法。

  • TP 310720- Katana開発者ガイドでは、プライベートC ++コンストラクトについては説明していません。

  • TP 346540-Pythonパラメーター式のコンテキストで使用可能な変数のドキュメントが間違っていました。 katanaVersion変数はあたかもそれが刀リリース、 そしてその刀リリース変数は文書化されていません。

酸素

  • TP 245236-顧客のフィードバックに応えて、 Katana Sphinxベースに加えて、Doxygenで生成されたAPIドキュメントが再度出荷されます。 Katana開発者ガイド。Doxygenスタイルのドキュメントは、 docs / dev_guide / doxygen /内のフォルダーKatanaインストールディレクトリ。

    ファウンドリは、 Katana開発者ガイド。Doxygenスタイルのドキュメントは、ページの上部にある表形式のクラスメンバーなど、簡潔なプレゼンテーションを好む顧客向けの一時的な手段として提供しています。

バグの修正

安定性とスレッドセーフ

  • TP 198362- GeolibCookInterface :: execOp()プライベートなユーザー定義データ(別名「プライベートデータ」)を実行済みのOpに送信します。これにより、呼び出し元のプライベートデータが呼び出し先に継承されるという問題も解決されます。修正された動作では、呼び出し元がexecOp()プライベートデータを指定しないgetPrivateData() 戻りますヌル呼び出し先で。2.5または2.6 SDKに対して構築されたOpsは、実行されたOpにプライベートデータをリークする機能を保持しますexecOp()。ただし、3.0 SDKに対して再構築し、 privateDataのパラメータexecOp()代わりに。OpScriptへの変更はありません。OpScriptはプライベートデータをサポートしていません。

  • TP 199161- Katanaで起動するとクラッシュしました- 脚本コマンドラインオプションはありますが、スクリプト引数はありません。

  • TP 310702- Katanaときにクラッシュしました+ (プラス)および- (マイナス)テンキーはシーングラフタブ。

  • TP 331515- Katana不正な形式の正規表現がパターン名前変更ノードのパラメーター。

  • TP 221551- Katana UIセッションでアクティブなアセットまたはファイルシーケンスプラグインを切り替えるとクラッシュする可能性がありました。のAssetAPI.ReleaseManager() Python関数はノーオペレーションになったため、使用しないでください。

  • TP 325791- Katanaプロキシがビューアに表示されているときにキャッシュを繰り返しフラッシュするとクラッシュする可能性がありました。

  • TP 285039- Katana使用したOpScriptを同時に評価するとクラッシュする可能性がありましたイマス

  • TP 304082- Katana OpScript Luaスクリプトが値を返すとクラッシュする可能性があります。

  • TP 313773- FnRender API IdSenderInterfaceスレッドセーフになりました。さらに、IDパスの送信に伴うシステムコールとネットワークオーバーヘッドKatana削減されました。

  • TP 221569-LookFileResolve Op、およびFnLookFile :: getPassNamesForLookFileAsset()そして FnLookFIle :: getSafePath() メソッドは、スレッドセーフではありませんでした。

  • TP 330564-まれに、Geolib OpsがThreadModeGlobalUnsafeそれにもかかわらず、同時に呼び出すことができます。

  • TP 266401-生成されたプログラムまたはスクリプトKatana処理して待機しようとしたKatanaの標準出力または標準エラーハンドルは、 Katanaプロジェクトは、AttributeScriptまたはPythonベースのアセットプラグインを使用しました。

ユーザーインターフェース

  • TP 54517 / BZ 27028-チェックされているが無効になっているメニュー項目のチェックマークが正しく表示されませんでした。

  • TP 315925-追加の小さな線が上部に表示されましたfilmlookビジュアライゼーションを選択して、画像に適用しますメニューモニタータブ。

  • TP 320395-部分的にチェックされたチェックボックスとビュー項目が正しく表示されませんでした。

  • TP 56259 / BZ 28347-メニューバーの非表示メニューの継続矢印(»)黒で描かれていたため、見づらくなりました。また、 application / fontSize好み。

  • TP 207434-チェックボックスとラジオボタンのチェックインジケーターは、 application / fontSize好み。

  • TP 314056-に大きな値を使用する場合application / fontSizeプリファレンスでは、メニューの内容は右側で切り捨てられました。

  • TP 325217-カラーサムネイル(/ swatches / dropウィジェット)は、 application / fontSize好み。これらのタイプのウィジェットには現在大きなサイズが与えられており、フォントサイズ設定の値に応じてスケーリングされます。

  • TP 323626-タブ文字は、 Pythonタブ。Katanaタブ文字の処理が次のように変更されました。

    1. を押すタブキーは、次のタブストップまでスペースを挿入するようになりました。
    2. を押す削除するまたはバックスペースキーは、次のタブストップまでスペースを削除します。
    3. 貼り付けられたタブ文字は4つのスペースに変換されます。
  • TP 335902-特定のシステム構成で、特定のプラグインが存在する場合、OpenGLが正しく初期化されなかったため、OpenGLベースのタブが正しく機能しませんでした。この問題に対処するため、OpenSceneGraphベースのOpenGLの初期化方法を修正しました視聴者タブ。この問題に対処するための変更の結果として、 ViewerAPILegacy古いViewerの実装が含まれていたPythonモジュールは、「仮想」からインポートできなくなりましたモジュール。

  • TP 335903-起動時Katana OpenGLが正しく初期化されないようにするプラグインを使用した構成では、3つのGL拡張機能が欠落していると誤って述べたメッセージとともにエラーダイアログが表示されました。

  • TP 341876-ヘルプポップアップ内のリンクは青色で表示され、暗い背景に対して読みにくくなりました。

  • TP 347686-タブタイトルの上部を右クリックしてコンテキストメニューを閉じると、 Katanaパネルのサイズ変更モードに入った。

ノードグラフとパラメーター

  • TP 114817 / BZ 49357-のパラメーターウィジェットintヒントは整数値に完全に制限されていませんでした。

    この修正後、入力された単純な数式の結果は整数値に固定されます。

  • TP 129057 / BZ 51742-ノードの名前を同じ文字数を含まない名前に変更すると、 パラメータを見つけるのポップアップパラメータータブには、古いノード名の一部がプレフィックスとして含まれているか、パラメーター名の一部が欠落しているノードのパラメーターがリストされています。ポップアップでそのようなパラメーターをクリックしても、クリックしたパラメーターが強調表示される代わりに、何も起こりませんでした。

  • TP 168240-開くときKatanaコマンドライン引数としてファイル名を渡すことにより、コマンドラインからプロジェクト、プロジェクト内のノードのパン位置ノードグラフタブが正しく復元されませんでした。

  • TP 280693-変更する場合nodeTypeシェーディングノードのパラメーターで、新しいシェーダーの保存された出力ポートの中で最初の出力ポートが異なる位置にある場合、ポート接続が破損しました。

  • TP 304333-特定の状況下では、ウィジェットヒントディクショナリがパラメーターポリシーの複数のインスタンス間で共有されていました。つまり、ポリシーの1つのヒントの変更が誤って他のポリシーに影響を与えていました。

  • TP 304519-を呼び出すとき_getIncomingSceneOpAndLocation()上の機能RendererProceduralArgsそのRendererProceduralArgsノードを表すインスタンスアクションパラメータはオーバーライドを定義するまたはオーバーライドを削除、バインドされていないローカル変数が原因で例外が発生しました。

  • TP 309961-4番目の引数としてブール値を渡そうとするとNodes2DAPI.GetFileOutFilename()関数、例外が発生しました。

  • TP 313685-のメニューカテゴリのテキストノードグラフのタブメニューカテゴリの編集ダイアログをクリックして状態を切り替えることができませんでした。

  • TP 324056-使用する場合選択したノードをグループ化するコマンドインノードグラフタブ(キーボードショートカット: G)選択したノードを新しいグループノードにペアレント化してグループ化するには、作成されたグループノードは同じ位置に作成されず、6単位だけ少しシフトされました。これにより、ノードの選択を変更せずにコマンドを繰り返し使用すると、グループノードが徐々に下に移動しました。

  • TP 326381- 既定値にリセットのボタンimage.channelMap ImageReadノードのグループパラメーターは効果がありませんでした。

  • TP 330272- forceArray GenericAssign XMLドキュメントの文字列パラメーターに使用できるヒントが、さまざまな形式の本当値。数値パラメータにも使用できるようになりました。のドキュメントforceArrayに追加されましたKatana開発者ガイド。

  • TP 331907-のノードをコピーするための進行状況ダイアログノードグラフタブは、ほとんど時間がかからない操作でも表示されていました。

  • TP 332133- 自動計算のメニューコマンドアクションのメニュータイミング ImageReadノードのパラメーターは効果がありませんでした。これを修正する一環として、コマンドのテキストが次のように変更されました自動計算イン/アウト

シーングラフと属性

  • TP 231922-選択するとき割り当てられた材料を選択またはインスタンスソースを選択の場所のコンテキストメニューからのコマンドシーングラフタブ、例外が発生しました。

  • TP 252227-シェーディングノードのツリー内のアイテムのコンテンツを展開する場合、 material.nodesの属性材料ネットワークマテリアルを定義する場所では、ツリーウィジェットのスクロールバーは常に確実に表示されませんでした。

  • TP 277925-カスタムメニュー項目が提供されるコンテキストメニューSceneGraphView経由のウィジェットsetContextMenuEventCallback(callback)アイテムを右クリックしても開きませんでした。

  • TP 303909-いつシーングラフタブは空のタイプの場所を示し、例外がコンソールに出力されました。

  • TP 307854-使用Ctrl+左マウスボタンの場所の選択を解除するにはシーングラフタブが予期しない動作をしました。

レンダリング

  • TP 226255-依存関係でレンダリングすると、コンソールに減価償却の警告が記録されました。

    GetSortedDependencyList()で非推奨になりましたFarmAPIそして FarmManager。開発者は使用する必要がありますGetSortedDependencies() 代わりに。

  • TP 248541-ライブレンダー中に属性を削除しても、レンダラープラグインにライブレンダーの更新が送信されませんでした。

  • TP 263827-ライブレンダー中に監視対象のシーングラフの場所の祖先を削除して再作成しても、レンダラープラグインにライブレンダーの更新が送信されませんでした。

  • TP 325810-ファイル形式を設定してディスクレンダーを実行する場合ティフ、エラーメッセージがレンダーログに出力され、画像が表示されませんでしたモニタータブ。

  • TP 332318- PyUtilModule.RenderManager.RenderCore.GetRendererAndSettings()与えられたの設定を初期化するためのものRenderingSettingsから取得されたrenderメソッドのプロパティの値を持つオブジェクト RenderingAPI、与えられたの誤って初期化されたブール設定 RenderingSettings 整数値としてのオブジェクト1または0ブール値の代わりに本当だまたは

その他のバグ修正

  • TP 49568 / BZ 23445- UVビューアーシーングラフの選択を変更したとき、または選択した場所の属性が変更されたときにタブが更新されませんでした。

  • TP 59762 / BZ 31154-プロジェクトファイルは220の8進数のumaskで保存されました。Katanaそのようなファイルを保存するときにumaskを設定しなくなりました。

  • TP 87441 / BZ 42223- Katana新しいGeolib3ランタイムがインスタンス化されるたびに、デバッグ情報を標準出力に書き込みました。

  • TP 120846 / BZ 50470- 視聴者タブは正しくないもので初期化される可能性がありますビューアーの可視性初めて表示されるとき、または非表示になった後に表示されるときのワーキングセットの状態。

  • TP 218267-MaterialResolveノードは、現在のフレームではなく、フレーム1にフレームパディング(「file。####。ext」など)を含むファイル名を誤って解決しましたKatanaフレーム。

  • TP 231675-の元の動作console_print() シェルフアイテムスクリプトのコンテキストでの機能が復元されました。

    • console_print(message、raiseTab = False):
      • 指定されたものを印刷しますメッセージ利用可能な最大の結果領域にPythonタブ。
      • もしraiseTabとして渡されます本当だ、タブはそのペインの前面に表示されます。
      • ない場合Python tabが存在する場合、メッセージをシェルに出力します。

    さらに、新しいconsole_clear()機能が追加されました:

    • console_clear(raiseTab = False):
      • 利用可能な最大の結果領域をクリアしますPythonタブ。
      • もしraiseTabとして渡されます本当だ、タブはそのペインの前面に表示されます。

    シェルフアイテムスクリプトで2つの機能を組み合わせて使用して、利用可能な最大の結果領域をクリアして塗りつぶすことができます。 Python切り替えを行わずにスクリプトをすばやくデバッグする方法として、後続の実行のタブKatanaおよび端末Katana立ち上げられました。

    シェルフアイテムスクリプトの旧リリースとの後方互換性のためKatana、提供しないconsole_clear()まだ機能しています。 console_clear()試してみるステートメント:

    try: console_clear(True) except: pass
  • TP 235179-次のコードでは、無効なエントリのために例外が発生しました__すべて__

    from RenderingAPI.RenderPlugins import *
  • TP 323635-次のコードは、無効なエントリのために例外を発生させました__すべて__

    from PyUtilModule.FarmAPI import *
  • TP 328832-次のコードは、無効なエントリのために例外を発生させました__すべて__

    from UI4.Tabs.History import *
  • TP 281416-経由で属性を作成できませんでしたDataBuilder <T> :: update()

  • TP 284064-「すべてオープン」モードのGeolibランタイムクライアントは、呼び出し時にオープンセットに場所を追加しませんでしたsetLocationsOpen()。「全開」モードでは、オープンセットが完全に維持されるようになりました。

  • TP 284084-を使用して明示的に開かれた場所setLocationsOpenRecursive()、ただし、料理の前に開封がキャンセルされますが、呼び出すと開封されたままであると報告されますisLocationOpen()

  • TP 327999-ランタイムクックインターフェースは、 opTypeパラメータは、文字列がNULで終了するC文字列であると誤って想定していました。この仮定に違反した場合、 Katanaクラッシュする可能性があります。

  • TP 323453- インスタンス化サンプルプロジェクトパートCマルチスレッドのシーン変換では機能しなかったため、削除されました。

  • TP 325075-を呼び出すときexecColorPicker()からの機能ColorFormWidgetのためのクラスKatanaColorFormWidget インスタンス、例外が発生しました。

  • TP 326532-廃止されたものへの参照KATANA_USE_INTERNAL_ZLIB環境変数はKatana Linux上のランチャースクリプト。

  • TP 332478-すでに使用されているKeyboardShortcutManagerを介してキーボードショートカットを登録するときに例外が発生しました。

  • TP 336043-不等号演算子(!=)のFnAttribute :: StringAttributeとしてマークされていませんでしたconst

  • TP 346534-に依存するプラグインを構築しようとするとIlmImfまたは IlmThread使用するライブラリKatanaのCMakeユーティリティplugins / Src /ディレクトリで、タイプミスによる未定義のIlmImf参照によるリンカーエラーのためにビルドが失敗しました plugins / Src / cmake / FindOpenEXR.cmakeファイル。

  • TP 347193-存在しないエクスポートされたGeolib3 OpツリーファイルからOpツリーを初期化しようとすると、見つからないファイルの実際のエラーを指定していないエラーメッセージがログに記録されました。

変更、廃止、削除された機能

  • TP 107744 / BZ 47997- color / useSingleComponentRGB好み、商業で使用されなかったKatana、廃止されました。

  • DiskRenderOutputProcess :: setRenderAction()メソッドのrenderActionパラメータのタイプが変更されましたstd :: auto_ptr <RenderAction>FnPlatform :: internal :: UniquePtr (別名std :: unique_ptr)。なのでstd :: unique_ptrコピーできませんFnPlatform :: internal :: UniquePtr :: move (別名std :: unique_ptr :: move)あるコンテナから別のコンテナに内部ポインタを移動するには、明示的に呼び出す必要があります。

  • で廃止されたAPIヘッダーとソースKatana 2.5は削除されました。これらのヘッダーは次のとおりです。

    • FnGeolib:util / Mutex.h、util / Platform.h、util / PowerNap.h、util / Semaphore.h、util / ThreadException.h、util / Timer.h

    • FnRender:plugin / SocketConnection.h、plugin / CommandLineTools.h

  • C ++クラスFnLogging :: FnLogQueue廃止されており、将来のリリースで削除される予定です。このクラスは機能していなかったため、インスタンス化しようとした場合に警告を記録しました。

  • GafferThreeに取って代わられた古典的なGafferノードタイプKatana 2.0v1は、ノード作成メニューから非表示になりましたノードグラフタブ。

  • の使用法KatanaFnAttribute外部アプリケーションからのライブラリ(経由 FnAttribute :: Bootstrap()機能)一貫してkatana_rライセンスが必要です。

  • 次のほとんど使用されていない2Dノードは、 ノードグラフタブ:ImageAddMix、ImageAtop、ImageAverage、ImageBlack、ImageDifference、ImageDistort、ImageDivide、ImageExclusion、ImageFrom、ImageGeometric、ImageHypot、ImageMatte、ImageMatteMix、ImageMax、ImageMin、ImageMinus、ImageMix、ImageMultiply、ImageOver、ImagePlus、ImageScreen、ImageUnder、ImageWhite。これらのノードタイプは、スクリプトを使用して作成できます。既存のプロジェクトのノードは以前と同様に機能し続けます。

  • AttributeScriptノードタイプは廃止され、次のノード作成メニューから非表示になりました。 ノードグラフタブ。既存のAttributeScriptノードKatanaプロジェクトは引き続き動作し、AttributeScriptノードは次の方法で作成できます。 NodegraphAPIスクリプトを作成しますが、新しいプロジェクトの場合は、代わりにOpScriptノードとLuaを使用することをお勧めします。AttributeScriptノードのサポートは、将来のリリースで削除される予定です。

  • PythonベースのAssetAPIプラグインは廃止され、それらのサポートは将来のリリースで削除されます。今後、パフォーマンスと安定性の理由から、AssetAPIプラグインはC ++で記述する必要があります。

サードパーティソフトウェアの変更

次の表は、付属のサードパーティソフトウェアのバージョンに対する変更をまとめたものですKatana

バージョンKatana 2.6 バージョンKatana 3.0
3Delight 出荷されてない 13.3.14
アレンビック 1.5.3 1.6.1
LuaJIT 出荷されてない 2.1.0
ナンピー 1.5.1(Linuxのみ) 出荷されてない
Python 2.7.3 2.7.13
RLM 9.3 12.2
TBB 4.4.6 2017アップデート8
米ドル 出荷されてない 0.8.0
PyQt 4.10.4 4.11.4
ZeroMQ 3.2.5 4.2.1
PyZeroMQ 13.0.2 16.0.2
VS CRT 2010(Windowsのみ) 出荷されてない

コンパイラの変更

Katana 3.0は、LinuxではGCC 4.8、WindowsではVisual Studio 2015でコンパイルされます。

Katana 2.5およびKatana 2.6は、LinuxではGCC 4.1、WindowsではVisual Studio 2010で構築されました。

コンパイラの変更は、ほとんどのお客様には影響しません。互換性の理由から、 Katana APIを長い間、顧客のプラグインライブラリに直接コンパイルされたC ++ヘッダーとソースのセットと、C ++レイヤーでラップされた安定したコンパイラに依存しないCベースのAPIに分けてきました。たとえば、Geolib Opsを作成するプラグイン作成者は、ツールチェーンを選択してプラグインを自由に構築できます。

この互換性ノートは、PythonまたはQtにリンクするプラグインを作成するWindowsプラグイン作成者には適用されません。VisualStudio 2015を使用してこれらのプラグインを再構築する必要があります。

注意:  Python 2.7 C拡張を構築するための標準WindowsコンパイラはVisual Studio 2008ですが、このコンパイラはしてはいけません Python C拡張の構築に使用されますKatana。お客様は、distutils / setuptoolsが選択したコンパイラーをオーバーライドして、以下と互換性のあるネイティブPython拡張機能を構築する必要がある場合があります。 Katana。見るhttps://docs.python.org/2.7/distutils/apiref.html#module-distutils.msvccompiler手順については。

APIの変更

Katana 3.0のAPIは、C ++ 11標準をサポートしない古いコンパイラで引き続き構築されます。C ++ 98コンパイラのサポートは、将来のリリースで削除されますKatana

Katanaに対して構築されたC ++プラグインKatana 2.5以降は、以下とバイナリ互換である必要がありますKatana 3.0(PythonまたはQtにリンクするWindowsプラグイン、および開発中のViewer APIを使用するプラグインを除く)。

Katanaに対して構築されたC ++プラグインKatana 2.5以降は、 Katanaいくつかの例外を除いて、3.0 API:

  • プラグインの例KatanaのサンプルプラグインはC ++ 11に段階的に移行されており、C ++ 11標準をサポートしない古いコンパイラでのビルドが保証されなくなりました。

  • ビューアーAPI:Viewer APIはHydra Viewerと並行して開発されたもので、次のバージョンとは大きく異なります。 Katana 2.6v4。ビューアAPIに関する情報Katana 3.0はKatana開発者ガイド

  • FnAttribute:で議論された変更パフォーマンスの改善> FnAttribute上記のセクション。

  • ディスプレイドライバーAPI:で議論された変更パフォーマンスの改善>レンダリング上記のセクション。

  • GeolibCookInterface:への変更execOp()で議論されたバグ修正>安定性とスレッドセーフ上記のセクション。

  • DiskRenderOutputProcess:への変更setRenderAction()で議論された変更、廃止、削除された機能上記のセクション。

  • OpScript:レガシーAPIの削除。 変更、廃止、削除された機能上記のセクション。

共通プラグインの互換性

米ドル

に対してコンパイルされた米ドルのバイナリKatana 2.6は以下と互換性がありますKatana 3.0。

USDソースコードは、次に対してコンパイルできます。 Katana 3.0(USDバージョン0.8.2以降)

USD /のサポートKatana Windowsのプラグインは引き続き利用できません。

RenderMan

RenderMan for Katanaに対してコンパイルされたバイナリKatana 2.6は以下と互換性がありますKatana 3.0。

アーノルド

アーノルドKatanaに対してコンパイルされたバイナリKatana 2.6は以下と互換性がありますKatana 3.0。

既知の問題点

Hydra Viewer

  • TP 344940-暗黙的なリゾルバーが切り替えられても、Hydra Viewerは更新されません。

  • TP 342503-への変更ビューアHydra / antiAliasing好みは影響しませんビューアー(Hydra)すでに開いているタブ。

  • TP 340524-特定のシステム構成で、特定のプラグインが存在する場合、OpenGLは初期化に失敗し、 Katana起動時に「OpenGLの初期化エラー」エラーダイアログを表示します。

  • TP 316771-Hydra Viewerは、ライトリンクを観察しません。

  • TP 297401-Hydra Viewerは、ライトのミュート/ソロイングを観察しません。

ライブグループ

  • TP 84020 / BZ 40598-LiveGroupノードを元に戻しても、ユーザーパラメーターは元に戻りません。

  • TP 84019 / BZ 40599-ソースからリロードを実行すると、LiveGroupノードに追加されたパラメーターが誤って破棄され、データが失われます。

  • TP 84018 / BZ 40600-未公開のLiveGroupノードの復帰を元に戻しても、LiveGroupの編集可能および変更済みの状態は復元されません。

  • TP 83061 / BZ 40237-編集不可能なLiveGroupノードのグループバブルにノードをドラッグできます。

材料

  • TP 269449-選択シェーダーパラメーターの編集マテリアルノードのメインレンチメニューから、シェーダーパラメータの横にレンチボタンが表示されません。これは、ノードの編集フラグを切り替えることで回避できます。

  • TP 199304- 名前空間マテリアルノードのパラメータは、ASCII範囲外のUnicodeコードポイントの挿入を誤って許可します。

  • TP 191052- Katana V-Ray for Mayaのテクスチャ参照オブジェクトワークフローをサポートしていません。

ノードグラフ

  • TP 207623-背景ノードに単一の番号を入力すると、その番号は保存時に保存されませんKatanaプロジェクトまたはそのノードをコピーして貼り付けるとき。

  • TP 56545 / BZ 28549-ノード、特にノードを作成するメインメニューコマンドファイル>インポート...ファイル> LiveGroupのインポート... 、そしてヘルプ>ポニーが欲しいに入力されたグループまたはLiveGroupノードにノードを作成しないでくださいノードグラフタブではなく、ノードグラフドキュメントのルートレベルにノードを作成します。

パラメータ式

  • TP 188533-以前に編集されていないマテリアルノードの非ローカルパラメーターにリンクされた式は評価できません。

  • TP 105434 / BZ 47520-参照式は、シェーダーパラメーターなどの動的パラメーターを参照しない場合があります。

  • TP 60457 / BZ 31790-配列またはグループパラメーターを式に設定すると、式が無効になります。有効な式を設定すると(たとえば、別のノードで同等のパラメーターの評価を使用してgetParam)、パラメーターはすぐには更新されません。この問題を回避するには、パラメーターを閉じてから再度開くか、ノードが編集されていないときにキャッシュをフラッシュします。

レンダリング

  • TP 344118-(Windowsのみ)インストール時Katanaバンドルバージョンの3Delightをインストールすることを選択すると、3Delightのインストールは、次のようなシステム全体の環境変数を変更することによって行われます。 KATANA_RESOURCES。その後、起動どれかのバージョンKatanaこの3Delightのインストールを選択しますが、これは次のバージョンと互換性がない可能性がありますKatana立ち上げ中。

    注意:これは、バンドルされた3Delightインストールが対応するLinuxに関連付けられているLinuxには影響しませんKatanaインストール。

  • TP 208802-閉会ヒストグラム使用後のタブはモニタータブはレンダリングされた画像を表示できません。

  • TP 176598-インタラクティブレンダーフィルターのグラフ状態変数を変更するノードの使用は現在サポートされていません。

  • TP 114182 / BZ 49288-カタログアイテムをエクスポートする場合、既存のフォルダーへのエクスポートフォルダーパスを指定する必要があります。エクスポートしようとしているフォルダーがディスク上に存在しない場合Katanaエクスポートに失敗します。

  • TP 94052 / BZ 44199- 前のレンダリングを繰り返すメニューコマンドは、3Dノードのコンテキストメニューから開始されたレンダリングでのみ機能します。

  • TP 74799 / BZ 36926- rendererSettings > displayOptions PRManレンダラーのRenderOutputDefineノードのパラメーター。 タイプパラメータは「raw」に設定されています。 パラメータータブ。

  • TP 65242 / BZ 34870- Katanaのレンダー出力ディレクトリの作成をサポートしていませんマージそして脚本出力タイプ。

  • TP 12517 / BZ 16168-1つのみモニタータブには、プレビューレンダリングの結果が表示される場合があります。複数の使用モニタータブは現在サポートされていません。

ウィジェット

  • TP 123558 / BZ 50911-配列パラメーターのタプルカウント/サイズを変更すると、対応する属性が適切に更新されません属性タブ。

  • TP 65347 / BZ 34949-Compizを使用すると、CompizとQtの非互換性のために、テキストフィールドがフォーカスイベントを正しく受信しないことがあります。構成によっては、Compizの「デスクトップ効果」を無効にすると問題が解決する場合があります。

その他

  • TP 337653- Katana 'PyMockAsset'、 'PyMultiMockAsset'、および 'PyMockFileSeq'出荷サンプルのAsset APIプラグインをロードするときに、非推奨の警告を記録します。

  • TP 218742-(Windowsのみ) Katana 〜140文字以内のパスにインストールする必要があります。長いパスにインストールしようとすると、「システムは指定されたパスを見つけることができません。」という直感的ではないエラーが発生します。

  • TP 112544 / BZ 49051- 視聴者タブとの同期が失われる場合がありますシーングラフ拡張状態への変更が中断されたときにタブ。

  • TP 107038 / BZ 47853-属性ソースノードの表示(黄色の「グロー」など) ノードグラフタブ)は現在利用できませんKatana 2.0v1。

  • TP 85118 / BZ 41152-LiveGroupノードの一部であるノードのパラメーターを編集し、親LiveGroupノードを再ロードすると、 パラメータータブがリセットされます。これには、スクロールバーの位置、アイテムの選択、ネストされたタブの選択が含まれます(たとえば、 対象材料そしてリンク Gafferノードのタブ)。

  • TP 84998 / BZ 41092-LiveGroupノードのパラメーターインターフェイスとコンテンツをソースから再ロードすると、フローティングペインで編集された子ノードのパラメーターがそれらのペインから消えます。

  • TP 84326 / BZ 40709-Alembicライブラリは、Alembicファイルへの複数のプロセスまたはスレッドアクセスをサポートしていません。これは、Alembicファイルを外部で変更するとクラッシュが発生することを意味しますKatana、オープンでロードされている間Katanaシーン。これを回避するには、以下を行う必要がありますキャッシュをフラッシュする変更されたAlembicファイルを更新する前に。

  • TP 80738 / BZ 39261-ノードをロックおよびロック解除する操作では、現在、元に戻す履歴にエントリが作成されないため、操作を元に戻したりやり直したりするときにノードグラフの状態が正しくないことがあります。

  • TP 71965 / BZ 36691-動的な配列の子パラメーターの属性値に対して状態バッジが表示されるのは、親配列パラメーターのみが状態バッジとともに表示される必要がある場合でもです。

  • TP 71954 / BZ 36663-現在、通知を並べ替えることはできません通知ポップアップウィンドウ。

  • TP 70217 / BZ 36176-2Dノードディスクレンダリングアップストリームレンダリング出力オプションはバッチレンダリングメソッドを使用しません。 batchRender、アップストリームレンダーノードの代わりに、 diskRender

  • TP 70196 / BZ 36170-コントロールキー(特に矢印キー)がシェルモードで期待どおりに機能しません。