概要(パブリッシャーの選択)
パブリッシュを実行すると、実行中のアプリケーション(DCC)と保存先のパスに応じて、対応するパブリッシャー(パブリッシュメソッド)が自動的に選択されます。選択条件(セレクター)は次の要素で構成されます。
- scheme:命名スキーム(既定は default)
- app:実行アプリケーション(maya/gnsstore など)
- store_type:ストア種別(shot/layout/asset など)
- phase:工程
- format:フォーマット
- variation:バリエーション
複数のパブリッシャーが条件に一致する場合は、より多くの条件を限定しているもの(限定度が高いもの)が選ばれます。どれにも一致しない場合は、汎用の File パブリッシャーが使われます。
また一部のパブリッシャーは、内部で別のパブリッシャーを呼び出します。例えばレイアウト系はショットごとに anim/check を、アニメーション系は camera/curve/alembic を派生的にパブリッシュします。1回の実行が複数のデータ生成へファンアウトします。
汎用・GNsStore
File(汎用フォールバック)
- 選択条件:scheme=default のみ
- 目的:指定された contents のファイルをそのままストアへコピーします。DCC 非依存の汎用保存で、専用メソッドが無いパスで使われます。
主なオプション
- contents:パブリッシュするファイルの一覧(名前→ソースパス)。ここに指定したファイルがそのまま保存されます。
Aep
- 選択条件:app=gnsstore, store_type=shot, phase=comp, format=ae
- 目的:After Effects プロジェクト(.aep/.aepx)を保存します。
主なオプション
- contents:パブリッシュする After Effects プロジェクト等のファイル一覧。
- do_packaging(既定 On):On にすると After Effects をヘッドレス起動し、参照フッテージを footages/ に収集してプロジェクト内のパスを収集先へ貼り替えます。Off の場合はファイルをそのまま保存します。
Maya シーン系
Maya Scene
- 選択条件:app=maya, format=maya
- 目的:Maya シーンをそのまま保存します(不要プラグイン・不明ノードを整理後)。
主なオプション
- file_type:保存するシーンのファイル形式(mayaAscii/mayaBinary)。
- method:保存方法。SaveScene=シーン全体を保存、ExportSelection=選択物のみ書き出し、ExportNodes=指定ノードのみ書き出し。
- export_nodes:method が ExportNodes のときに書き出す対象ノード名(カンマ区切り)。
Maya Check
- 選択条件:app=maya, format=check
- 目的:チェック・レビュー用の成果物(プレイブラスト動画など)を contents としてコピーします。
主なオプション
- contents:パブリッシュするチェック成果物(動画など)のファイル一覧。
Model
- 選択条件:app=maya, phase=model, format=maya
- 目的:モデルシーンをテクスチャごと保存します。各テクスチャを image パスへ個別にパブリッシュし、シーン内の参照パスを公開先へ貼り替えて書き出します。テクスチャとパスの対応を sceneinfo.json に出力します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
- method:保存方法(SaveScene/ExportSelection/ExportNodes)。
- export_nodes:ExportNodes 時の対象ノード名(カンマ区切り)。
- collect_resources:テクスチャの収集方針。All=すべて再パブリッシュ、Non Public Only=未公開のもののみ、None=収集しない。
Texture
- 選択条件:app=maya, format=image
- 目的:単一の file/imagePlane ノードのテクスチャ(UDIM タイル・連番を展開)を保存し、ノードに公開先パスの属性(gnsdock…)を付与します。Model パブリッシャーから内部的に呼び出されます。
主なオプション
- node:対象のテクスチャノード。通常は Model パブリッシャーが自動的に設定するため、手動指定は不要です(内部用)。
Assembled
- 選択条件:app=maya, phase=assembled, format=maya
- 目的:アセンブル済みシーンを、テクスチャをローカルの sourceimages/ に収集し、参照パスをローカルコピーへ貼り替えて保存します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
Maya レイアウト/アニメーション系
Layout
- 選択条件:app=maya, store_type=layout, phase=blocking, format=maya, variation=scene
- 目的:レイアウト/ブロッキングのマスターシーンを保存し、ショットごとにアニメーションシーン(anim)とチェック(check)を派生的にパブリッシュします。
主なオプション
- file_type:マスターシーンの保存形式(mayaAscii/mayaBinary)。
- start:各ショットの開始フレーム。
- front_margin/back_margin:ショットの前後に付与する余白フレーム数。
- sequence:シーケンス名。
- offset_shot_name:ショット名に加算する番号オフセット(0〜1000)。
- contents:パブリッシュ対象ショットの有効/無効と、各ショットのアセット構成(ショット一覧)。
- movie:チェック用に各ショット範囲へ切り出す元動画。
Shot Layout
- 選択条件:app=maya, store_type=shot, phase=layout, format=maya, variation=scene
- 目的:ショット文脈版のレイアウトです。対象ショットのアニメーションをパブリッシュし、他のショットは submit(別途パブリッシュ)へ回します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
- start:開始フレーム。
- front_margin/back_margin:前後に付与する余白フレーム数。
- follow_path:追従(フォロー)先のパス。
- contents:このパスに対応する対象ショット(ショット一覧)。
- submits:別途パブリッシュへ回す他ショットの一覧。
Anim
- 選択条件:app=maya, phase=anim, format=maya, variation=scene
- 目的:ショットのアニメーションシーンを、指定のフレーム範囲にリタイム/クリップして保存します。常に anim curve を、任意で baked camera/alembic を派生パブリッシュします。フレーム範囲・カメラ・fps・解像度などを sceneinfo.json に記録します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
- start:保存後の開始フレーム。
- anim_start/anim_end:元シーンのアニメーション範囲(この範囲を切り出します)。
- front_margin/back_margin:前後に付与する余白フレーム数。
- fps:タイムユニット(film/ntsc/24fps など Maya の時間単位)。
- export_camera:On にするとベイク済みカメラも派生パブリッシュします。
- camera:export_camera が On のときの対象カメラ。
- export_alembic:On にすると Alembic キャッシュも派生パブリッシュします。
Camera
- 選択条件:app=maya, phase=anim, format=maya, variation=camera
- 目的:カメラをベイクして書き出します。転送属性のコピーと TRS のベイクを行い、元カメラに拘束したベイク済みカメラを書き出します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
- camera:ベイク対象のカメラ。
- name:書き出し名(既定 cam)。
- start/end:ベイクするフレーム範囲。
- step:ベイクのステップ幅(既定 1、最大 100)。
Anim Curve
- 選択条件:app=maya, phase=anim, format=maya, variation=curve
- 目的:アニメーションカーブを editMA として抽出します。namespace 単位で、生の接続版とベイク版(_baked)を出力します。
主なオプション
- animated_sets:抽出対象のアニメーション objectSet 名(既定 anmSet)。
- start/end:ベイク版を作成する際のフレーム範囲。
Alembic
- 選択条件:app=maya, phase=anim, format=maya, variation=alembic
- 目的:ジオメトリを Alembic(.abc)にキャッシュします。参照された objectSet ごとに AbcExport を実行し、各種フラグをオプション化しています。
主なオプション
- cache_sets:キャッシュ対象の objectSet 名(既定 abcSets)。
- start/end:書き出すフレーム範囲。
- uv_write(既定 On):UV を書き出します(-uvWrite)。
- world_space(既定 On):ワールド空間で書き出します(-worldSpace)。
- write_creases(既定 On):クリース/サブディビ情報を書き出します(-autoSubd)。
- write_uv_sets(既定 On):複数の UV セットを書き出します(-writeUVSets)。
- その他フラグ:no_normals/renderable_only/strip_namespaces/write_color_sets/write_face_sets/whole_frame_geo/write_visibility/filter_euler_rotations などを ON/OFF で切り替え、対応する AbcExport フラグに反映します。
Blocking
- 選択条件:app=maya, phase=blocking, format=maya
- 目的:blocking 工程のシーン全体を保存します(レイアウト系より汎用のフォールバック)。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
Primary
- 選択条件:app=maya, phase=primary, format=maya
- 目的:primary 工程のシーン全体を保存します。
主なオプション
- file_type:保存形式(mayaAscii/mayaBinary)。
Secondary(scene/camera/curve/alembic)
- 選択条件:app=maya, phase=secondary, format=maya(+variation)
- 目的:それぞれ Anim/Camera/Anim Curve/Alembic と同一挙動です(各メソッドを継承し、secondary 工程に登録されています)。
主なオプション
- (各親メソッドと同じ):オプションは対応する親メソッド(Anim/Camera/Anim Curve/Alembic)と同一です。