Manuals
Manuals




This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English

Defold での自動化

このマニュアルでは、全体の概要と、各トピックを扱う個別のマニュアルへのリンクを提供します。

Defold は、いくつかのレベルで自動化をサポートしています。効果的に自動化するうえで特に重要なのは、タスクに適したインターフェースを選ぶことです。以下の表は、目的の操作に対して最も単純なインターフェースを選ぶ際に役立ちます。

レイヤー 用途
エディタースクリプト(editor script) レベルやアセット(asset)の作成など、テストや開発を効率化するためのカスタムコマンド、エディターのワークフローや連携
エディター UI スクリプト エディタースクリプトを利用したカスタムのビジュアルツール、ポップアップ、設定ツール、ユーザーインターフェース
エディター HTTP API OpenAPI の操作、プロジェクトのリソース(resource)、ビルド、エディターコマンド、プレビュー、環境設定、コンソール出力、またはエディタースクリプトを通じて、Defold エディターで開いているゲームプロジェクトを制御し、カスタム操作、外部ツール、IDE 連携、テストコントローラーに活用
Bob CLI コマンドラインからのプロジェクトのビルド、データアーカイブやスタンドアロンのバンドル(bundle)の作成、レポート、CI
ライフサイクルフック エディターでのビルドやバンドル作成の前後に行う検証や生成
エンジン HTTP サービス 実行中の Defold ゲームエンジン(dmengine)の調査、開発用サービス、プロファイリング、実行時メッセージ、拡張で定義したランタイム自動化 API、外部ツールからの照会、実行中のデバッグビルドへのコマンド送信
Automation Bridge エンジンのランタイム自動化エンドポイントを追加する Defold の公式拡張
自動テスト ゲームロジック、メッセージ、コンポーネント(component)、入力、物理、エンジンの動作のテスト、シーンの調査、たとえば エディターのプレビュー を通じた視覚的なフィードバック、入力の注入、実行中のアプリケーションの状態、テスト用コレクション(test collection)の実行
シェルスクリプトやタスクランナー 生成、整形、検証、繰り返し実行できるタスク、通常のファイル操作
プラットフォーム固有の外部自動化ツールやウェブブラウザーの自動化ツール デスクトップのテストツール、HTML5 の操作テスト、スクリーンショット、ウェブ連携
AI コーディングエージェントとマルチモーダルモデル 決定論的な手法を実装するのが困難または不可能なタスク、シーン、GUI レイアウト、実行中のゲームのスクリーンショットの意味的な分析

最も重要なのは、Defold エディターと実行中のゲームを区別することです。これらは別々のプロセスで、それぞれ独立した HTTP サーバーを持ちます。

決定論的な自動化か AI エージェントか

レベルの検証ツール、フォーマッター、ビルドジョブ、回帰テストのように、操作の順序がすでに分かっている場合は、決定論的な方法を優先してください。通常、これらの入力、出力、タイムアウト、終了コードは安定していることが望まれます。決定論的な方法は、CI で確実に実行できる自動フックやテストに適しています。プロジェクトのリソースを手続き的に作成する場合も、決定論的な方法を推奨します。たとえば、gltf オブジェクトを指定したマテリアル(material)を持つモデル(model)に変換するツールや、レベルに木などを配置するツールです。これらの処理は、エディタースクリプトと UI を使って、プロジェクトごとに簡単に作成できます。詳しくは マニュアル を参照してください。

タスクに調査やマルチモーダルな分析(たとえば視覚的な分析を含むもの)が必要な場合は、エージェントが役立つことがあります。関連リソースの特定、実装方法の選択、複数ファイルの変更、エラーの解釈、定義した受け入れ基準を満たすまでの反復などです。ただし、エージェントも決定論的なインターフェースを呼び出し、ローカルのスクリプトや CI ランナーと同じ根拠を利用することが望まれます。Defold での AI コーディングエージェントの使用 に関するマニュアルを参照してください。

自動化ループ

信頼できる自動化プロセスは、閉じたループを形成します。

  1. 調べる - プロジェクトファイル、現在のインターフェースの説明、関連ドキュメントを読みます。
  2. 変更する - エディターのトランザクション、エディタースクリプト、またはファイル操作ツールやシェルツールを使います。
  3. 検証する - ビルドし、対象を絞ったテストを実行し、ログ、レポート、状態、画像を収集します。
  4. 評価する - 根拠と受け入れ基準を比較し、終了するか再試行します。

調査、変更、検証、評価からなる自動化ループ

検証では、実際の環境から得た根拠を示すことが望まれます。適切な根拠には、次のようなものがあります。

  • 成功したビルドの結果。
  • 完了したことが明確なテストスイート。
  • 実行中のゲームから得られた期待どおりの状態。
  • 生成されたバンドルやビルドレポート。
  • 決定論的な画像比較。
  • 定義した視覚的な基準を満たすスクリーンショット。

変更を加える前に、期待する結果を定義してください。タイムアウトと修正を試みる回数の上限も定義してください。無人で実行するプロセスは、受け入れ基準を満たせない場合に無期限に処理を続けるべきではありません。

次のステップ

自動化ワークフローに関する個別のトピックの詳細は、以下のマニュアルを参照してください。