Skip to content

開発者向けドキュメント ​

プラグインのビルド方法と、外部プラグインから SceneEditor の各機能へ連携するための ガイド。連携はいずれもリフレクションブリッジ方式(属性ベースのシーンプリセットを除く)で、 MTEUtils を submodule 参照していれば対応クライアントをそのまま呼べる。 SceneEditor が不在・旧バージョンの環境では該当機能だけが自動で無効になる。

ビルド ​

外部プラグイン連携ガイド ​

ガイドホスト型MTEUtils クライアントできること
タブドッキング / スナップ連携DockingHostDockingClient / DockableWindowBaseウィンドウのタブ統合・スナップ/コネクトへの参加
操作履歴(undo/redo)連携HistoryAPIHistoryClient外部の操作を SceneEditor の履歴に積み、undo/redo・履歴ジャンプの対象にする
シーンプリセット連携ScenePresetProviderRegistry(属性ベースの自動発見)外部プラグインの状態をシーンプリセットに相乗りさせる
SceneCapture プリセット取り込み同上同上SceneCapture プリセットの担当セクション(Models / Effects)を外部側で適用する
モデル配置プロバイダ連携ModelPlacerProviderRegistry(属性ベースの自動発見)タイムラインが扱うモデルの配置・削除・アタッチを外部側で受け持つ
ギズモ連携GizmoHostGizmoHostClient外部ギズモを SceneView / GameView の描画・入力に参加させる
Inspector 描画の委譲InspectorHostInspectorHostClient自分の管理オブジェクト選択時に Inspector の内容描画を受け取る
有効/無効の連動EditorStateHostEditorStateClientSceneEditor の ON/OFF に自プラグインを追従させる
UI 倍率UIScaleHostUIScaleClientSceneEditor の UI 倍率に自プラグインの窓を合わせる
選択中メイドの共有MaidSelectHostMaidSelectClient選択中メイドの読み取り・変更通知の購読・外部からの選択変更(双方向)
選択中モデルの共有ModelSelectHostModelSelectClient選択中モデル(外部提供モデル)の読み取り・変更通知の購読・外部からの選択変更(双方向)
その他の連携SelectionManager ほかSelectionClient ほか選択の同期・ギズモツールの状態共有・マウス座標の取り違え防止

共通の前提 ​

  • ホストのアセンブリ名・名前空間はいずれも COM3D2.SceneEditor.Plugin
  • 公開 API のシグネチャは安定契約(変更されず、追加のみ。変更が要る場合は Register2 等の別名で追加される)
  • 契約に使う型はプリミティブ + UnityEngine 型 + デリゲートのみ (プラグイン定義型は DLL 間で共有できない)
  • 不要になった登録は必ず解除すること。ホストは常駐するため、解除を怠ると デリゲートが掴んだ参照ごと残る