threejs-qa-release について
Three.js ゲームの QA とリリースを支援する技能です。プレイヤー視点の動作を検証し、ゲームプレイ、ブラウザーエラー、画面、対象ビューポート、リリース上のリスクを確認します。
主な機能
- 01ビルドと型チェックの実行
- 02ブラウザーとキャンバスのエラー確認
- 03ゲーム状態と入力のテスト
- 04対象ビューポートの証拠取得
- 05本番ビルドとリスクの確認
活用シーン
- 01リリース前のゲーム全体のテスト
- 02特定のゲームプレイや UI 変更の検証
- 03モバイルとデスクトップのレイアウト確認
- 04デプロイ手順と検証証拠の準備
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ majidmanzarpour/ threejs-game-skills --skill threejs-qa-releaseインストール後、Claude Code で/threejs-qa-releaseを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
agents/openai.yamlreferences/playtest-bot.mdrelease-checks.mdvisual-test-harness.mdscripts/inspect-threejs-canvas.mjs詳細
Three.js QA リリース
プレイヤーが実際にプレイする状況でゲームが想定どおり動作することを確認し、既知のリスクを把握したうえで、リリース可能なビルドを準備します。
実際に読み込まれたスキルファイルを基準に<this-skill-dir>とローカル参照を解決し、ランナーが検出した代替手段を使う前に、その隣にある兄弟スキルを解決してください。npm 依存関係をインストール済みのゲームプロジェクトからインスペクターを実行してください。
参照資料
| ファイル | 次の場合に読みます |
|---|---|
references/release-checks.md | モバイル検証、本番リリース、パフォーマンスの証拠、またはリリース失敗の落とし穴を確認するとき |
references/visual-test-harness.md | スクリーンショットのベースライン、ビジュアルリグレッション、UI や生成アセットのリグレッション保護を確認するとき |
references/playtest-bot.md | リリース可能なゲームプレイに関する主張、難易度や公平性の確認、またはスクリプト入力で一度も動かされていないゲームループを確認するとき |
QA パス
ゲーム全体を対象とする場合は、以下のフルパスを実行してください。範囲の狭い変更では、影響を受ける動作、状態、対象ビューポートを網羅するチェックを選んでください。同じコードリビジョンの有効な専門家の証拠は再利用できます。リード担当者が一連のパスを統括します。関連する変更、失敗、未解決の懸念がある場合に限り、再実行してください。明示的にデスクトップのみが対象であれば、モバイルのゲームプレイを追加する必要はありません。
- 依存関係をインストールし、ビルドと型チェックを実行して、開発サーバーまたはプレビューサーバーを起動します。
- ブラウザーの対象を開き、コンソール、ページ、ネットワークのエラーを記録します。
- キャンバスのピクセルが空白ではなく、見た目に変化があることを確認します。
- タイトル画面だけでなく、各対象ビューポート(デフォルトではデスクトップとモバイル)でプレイ中の画面をキャプチャします。
- 主な入力、目標の進行、失敗とリトライ、直近で変更した内容をテストします。
- HUD テキストの収まり、安全領域、タッチターゲット、レスポンシブレイアウトを確認します。
- オーディオを変更した場合は、ユーザー操作によるロック解除、効果音の再生、環境音ループの開始と停止、一時停止と再起動時のクリーンアップ、ミュートと音量、デコードエラーを確認します。
- ビジュアルテストハーネスを使うか判断します。高品質な仕上がり、リリース可能な品質、UI 中心、または生成アセットを扱う作業では、通常はハーネスの導入が有効です。どちらの判断でも理由を記載してください。
- リリース可能なゲームプレイに関する主張では、ボットプレイテスト(スキャフォールドゲームでは
tests/bot-playtest.template.ts)を実行し、そのメトリクス JSON を報告します。 - アニメーションを変更した場合は、一時停止していない短いシーケンスをキャプチャし、
references/visual-test-harness.mdを使って移動、クリップ間の遷移、足、リグの変形、攻撃と接触のタイミングを確認します。
スクリーンショットだけでは、ゲームプレイの変更を網羅できません。
キャンバスインスペクター
node <this-skill-dir>/scripts/inspect-threejs-canvas.mjs --manifest artifacts/evidence.json --url http://127.0.0.1:5188 --seed 42
まず、ディレクターのreferences/evidence-manifest.mdに記載されたフォーマットとテストフックの契約に従い、新しい実行 ID を指定して、検証するビューポートと状態の組み合わせをartifacts/evidence.jsonに宣言します。1 つのコマンドで、宣言したすべての組み合わせを単一のブラウザーでキャプチャし、各キャプチャについて PASS/FAIL、GPU、ピクセルメトリクス、予算超過の行、エラー数、レポートとスクリーンショットのパスを 1 行ずつ出力します。詳細が必要な行に限り、レポートファイルを開いてください。要求された状態はすべて含めてください。マニフェストを通すために、失敗した枠を削除してはいけません。単発のチェックでは、--state <name> [--mobile]で単一ビューをキャプチャできます。--stateを省略すると、現在のビューのみをチェックします。スキャフォールドゲームには、npm run inspect:canvasとして専用のコピーがあります。
これらのメトリクスは、threejs-aaa-graphics-builder/references/visual-scorecard.mdのビジュアルスコアカードで使用する測定済みの証拠です。予算超過の行には、トレードオフを文書化する必要があります。キャンバスが空白の場合やエラーがある場合は、ゼロ以外の終了コードで終了します。
リリースパス
package スクリプト、Vite の設定、ベースパス、public アセットを確認する → デバッグ UI、ログ出力、テスト用ヘルパーをゲートする → 本番ビルドを実行し、静的サーバーでプレビューする → 対象ビューポートでビルド済みの出力を確認する → バンドルと大きなアセットを確認する → デプロイコマンド、ホストの前提条件、残存リスクを文書化する。
レポート
結果と未解決の不具合を最初に記載してください。詳細なコマンド、マニフェスト、キャプチャ、動作の証拠、操作したコントロール、修正した問題、デプロイに関する注記は、プロジェクトのエビデンスレポートに記載してください。対象となる場合は、ハーネスの判断とボットの指標も含めてください。成果物のパスをリードに返してください。ピクセルの合格や、認識された状態フックだけでは、見た目の質やゲームプレイの成功は証明できません。