MARI 3.2 新機能と改善点②

先週The Foundry社よりリリースされたMARI 3.2について、今回は強化点についてご紹介致します。

リリース記事はこちらをご覧ください。
Part 1の記事はこちらをご覧ください。

Part 2:

※OpenEXR 2.2の対応については、リリース記事をご覧ください。

※使用バージョン: MARI 3.2v1

 


 

■ セッションスクリプト

MariのSession Scripts (セッションスクリプト)はプロジェクトの一部を.msf形式(Mari Session File)にアーカイブし、他のセッション(プロジェクト)にオブジェクトやチャンネル、ライトなどを融合することができます。

今回のバージョンより、これまで保存や読み込みができなかったノードグラフやグラフレイヤー、サブディビジョンなどを.msfファイルに書き出すことができるようになりました。機能が強化されたことにより、保存または読み込んだデータに対して更なるコントロールが行えるようになったため、プロジェクトの共有が更にしやすくなりました。

sessionscript_dialog

 

今回はセッションスクリプトのエクスポートを試してみます。データはCreature (生き物)とRocks (岩)のプロジェクトを使用します。手順は次の通りです。

※今回サンプルに使用するプロジェクトデータは、MARI tutorialsページの「Texturing VFX assets with MARI」セクションからダウンロードできるアセット(CreatureRocks.mra)を編集したものを使用しています。

sessionscript_01creature

  1. まずはCreatureのプロジェクトを開きます。
    プロジェクトを開いた状態でFileメニュー > Session > Export Sessionを選択します。
    するとExport Sessionダイアログが開きます。
     
  2. エクスポートしたいオブジェクト、ノードグラフ、チャンネル、パッチ、ライト、プロジェクター、サブディビジョン(細分割)、アンビエントオクルージョン、その他項目の横にあるチェックボックスを有効にして選択します。
    sessionscript_02creatureexport
    補足:Mariのシェーダー、チャンネル、レイヤーは潜在的なノードグラフシステム上で処理されます。そのため、Mari 3.2以降のバージョンのセッションスクリプトはNode Graphのチェックボックスを有効/無効にしているにも関わらず、選択したチャンネルに対応するノードをノードグラフ形式で保存します。Node Graphのチェックボックスを有効にしている場合、ノードグラフ全体が保存されます。無効の場合は、選択したチャンネルに対応するノードのみ保存されます。sessionscript_exportoptions 
  3. Pathフィールドで指定した書き出し先ディレクトリにオブジェクトファイル(Object Files)をコピーするかどうかを決めます。コピーしない場合、プロジェクトファイル以外のファイルはディレクトリの場所に作成されません。
     
         TIP
    : .obj、.fbx、または.abcファイルのオブジェクトを保存できます。
     
  4. 選択した項目に対する全てのテクスチャ(レイヤー用の画像データ)もしくはテンプレートをエクスポート(Export)するかどうかを決めます。テンプレートはアーティストがこれから作業するプロジェクトをセットアップするときに使えるため、チャンネル、レイヤー、シェーダー、その他項目には最初から希望する設定が適用されています。
     
  5. Pathフィールドにセッションデータをエクスポートしたいディレクトリを指定します。
     
  6. File Nameフィールドに、エクスポートする.msfファイルとプロジェクトに付ける名前を指定します。
     
  7. エクスポートオプションの設定が完了したらOKをクリックします。

sessionscript_03creatureexporting
エキスポート中…

sessionscript_04creatureexportattention警告メッセージ

すると、プログレスバーはエクスポート状態を表示します。100%に達したら別のダイアログが出てきて、全てのバックグラウンドジョブが終了するまでプロジェクトを閉じないよう警告します。バックグランドで処理しているジョブは画面右下の走っている人icon_progress_barのアイコンをクリックして確認でき、レイヤーやImage Managerの画像を書き出したりしています。

エクスポート処理が完了したらプロジェクトを閉じて新しいプロジェクトを開くことができます。

※注意: ジオメトリを選択せずにセッションをエクスポートしようとした場合、統合する別のセッションに同じジオメトリが存在しなければ上手くいきません。もしも同じジオメトリが存在しないのであれば、ジオメトリを選択して処理を進める必要があります。

 

エクスポートした.msfファイルはFileメニュー > Session > Import Sessionから新しいプロジェクトを作成して読み込んだり、既に開いているプロジェクトに対してインポートすることができます。

sessionscript_import

尚、既に開いているプロジェクトでImport Sessionを選択した場合、上の画像のようにImportオプションが表示されます。ジオメトリを含む全てのデータ(All Data)を選択すると、現在のプロジェクトの別オブジェクトとしてデータがインポートされます。選択したオブジェクト(Onto Selected Object)にインポートした場合、.msfファイルに格納されたシェーダーやチャンネル情報が現在選択しているオブジェクトにインポートされます。

今回はRocksのプロジェクトにCreatureを新しいジオメトリとしてインポートしてみます。

  1. 前の手順で書き出した.msfファイルをインポートするセッション(プロジェクト)を開きます。
    まず、Creatureプロジェクトを閉じた後、Rocksのプロジェクトを開きます。
    sessionscript_05rocks 
  2. FileメニューからSession > Import Sessionを選択します。
    sessionscript_06rocksimport 
  3. インポートする.msfファイルをPathで指定してOKをクリックします。
    今回は別オブジェクトとして読み込むため、ImportオプションでAll Dataを選択してOKを押します。
    するとインポート処理が開始します。sessionscript_07rocksimporting 
  4. インポートが完了すると、読み込んだCreatureのオブジェクトとテクスチャが既存プロジェクト(Rocks)に統合されました。
    sessionscript_08creaturerocks

このように、共同作業において別プロジェクトで作業している場合など、セッションスクリプトを使用してジオメトリデータ等を一つのプロジェクトに融合して結果を確認することができます。

 

■ 色管理

MARI 3のバージョンから導入された色空間管理プロパティですが、無効化するための処理には多くの手作業を必要とし、手間がかかるものとなっていました。

colormanager_palette
Color Managerパレット

今回のバージョンより、より簡単な方法でプロジェクトに対する色管理の有効/無効を任意に切り替えることができるようになりました。

 

▼ 設定その1: プロジェクト設定ダイアログ

Project Settingsダイアログボックスでは、作成したMariプロジェクトの色空間オプションを変更することができます。

Project Settingsダイアログの開き方

  • プロジェクト作成時: New ProjectダイアログのColorspaceの項目から設定できます。
  • プロジェクト作成後: Fileメニュー > Settings を選択します。

こちらのダイアログでプロジェクトに対する色管理を有効/無効に切り替えられるようになりました。

projectsettings_colormanagement_switch

 

▼ 設定その2: 環境変数

次の環境変数を設定することで、MARIの色空間管理を強制的に有効/無効に切り替えられます。

【変数名】      MARI_FORCE_COLOR_MANAGEMENT
【変数値】      0 または 1

変数値を「0」に設定すると、色管理は強制的に無効となります。
変数値を「1」に設定すると、色管理は常に有効な状態となります。

projectsettingsdialog_envvar_set0
値を0に設定した状態のダイアログ
色管理が常に無効な状態であることが確認できます。

projectsettingsdialog_envvar_set1
値を1に設定した状態のダイアログ
色管理が常に有効な状態であることが確認できます。

 

■ 表示範囲の反転

Mariのキャンバス上では、オブジェクト/パッチ/面単位でオブジェクトを表示/非表示することができます。
今回のバージョンから、選択した範囲を表示/非表示するだけでなく、表示/非表示した部分を反転させることができるようになりました。

invertvisibility

表示範囲の反転方法: 以下のいずれの方法で反転できます。

  • Selectionメニュー > Invert Visibility
  • キャンバス上で右クリック > Visibility > Invert Visibility

現在の選択モードを基に、シーン内のすべてのオブジェクトの表示/非表示を反転できます。

  • オブジェクト(Object)選択モード: 現在表示されている任意のオブジェクトが非表示となり、非表示となっている任意のオブジェクトが表示されます。
     
  • パッチ(Patch)選択モード: シーン内の各オブジェクトに対して、現在表示されている任意のパッチが非表示となり、非表示となっている任意のパッチが表示されます。
     
  • 面(Face)選択モード: シーン内の各オブジェクトに対して、現在表示されている任意の面が非表示となり、非表示となっている任意の面が表示されます。

補足: Invert Visibilityオプションはそれぞれの選択モードに対して動作します。例えば、オブジェクトの一部または全ての面(またはパッチ)を非表示にした場合、別の選択モードでInvert Visibilityオプションを適用しても、そのオブジェクトの非表示となっている部分に影響はありません。非表示にした選択モードで表示に戻さない限り、隠れたパッチや面またはオブジェクトは非表示のままとなります。

 

ぜひお試しください!

Happy Painting!

 


関連ページ