このプロジェクトについて

# ImGuiにおけるノードエディタ このプロジェクトは、ImGuiライクなAPIを持つノードエディタの実装を提供し、ブループリントエディタなどの複雑なソリューションの基盤として設計されています。中心となる哲学は「あなたがコンテンツを描き、残りは私たちが行う」です。エディタはインタラクション(ノードの配置、ドラッグ、ズーム/スクロール、選択、および作成/削除/選択変更などの各種クエリ可能なイベント)を処理し、ユーザーはコンテンツのレンダリングを担当します。 ## 主な機能 - **内部ノード管理**: ノードの移動と選択は内部的に処理されます。 - **完全にカスタマイズ可能なコンテンツ**: ノードとピンの内容は完全にユーザー定義です。 - **スタイリング**: UE4ブループリントをモデルにしたデフォルトテーマで完全にスタイル設定されており、多様なノード外観を作成できる柔軟性があります。 - **カスタマイズ可能なリンク**: ベジェ曲線に基づくリンク。 - **自動ハイライト**: ノード、ピン、リンクのハイライト。 - **スムーズなナビゲーション**: スムーズなナビゲーションと選択。 - **状態の永続化**: ノードの状態をユーザーコンテキストに保存でき、レイアウトを保持します。 - **選択とグループ化**: 選択矩形とグループドラッグ。 - **コンテキストメニューとショートカット**: コンテキストメニューのサポートと基本的なショートカット(切り取り/コピー/貼り付け/削除)。 - **ImGuiスタイルAPI**: ImGuiの慣習と一致しています。 ## 依存関係 - バニラImGui 1.72以上 - C++14 サンプルおよび追加ショートカット用のオプション拡張はREADMEに記載されています。 ## ビルド/インストール ソースはルートディレクトリにあり、ImGuiと同様にプロジェクトにコピー&ペーストできます。サンプルはWindows、macOS、LinuxでCMakeを使用してビルドできます。 ## クイックスタート 最小限の例では、エディタコンテキストを作成し、入力/出力ピンを持つノードを開始し、それをレンダリングします。メインヘッダーは`imgui_node_editor.h`です。その他の例は`examples`フォルダにあり、ブループリントのサンプルも含まれています。 ## 使用コンテキスト このエディタは、Spark CEエンジンでブループリントエディタを実装するために使用され、その能力を証明しています。プロジェクトはプロトタイプから安定状態へ移行中です。