Unity Scene Optimizer について
Unity Scene Optimizer は、Unity 開発者向けにシーンの性能を分析するスキルです。ボトルネックを特定し、優先度や影響見積もりを含む改善案と手順を示します。
主な機能
- 01描画性能とドローコールの分析
- 02テクスチャとメモリの確認
- 03階層構造と物理の検査
- 04ライティングとプラットフォーム別の提案
- 05優先度と影響見積もり付きの修正案
活用シーン
- 01描画や物理のボトルネック特定
- 02モバイル公開前のシーン確認
- 03シーン最適化の計画と検証
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ dev-gom/ claude-code-marketplace --skill unity-scene-optimizerインストール後、Claude Code で/unity-scene-optimizerを入力して読み込まれたか確認します。
詳細
Unity Scene Optimizer
Unity シーンを分析し、レンダリング、物理演算、メモリ、プラットフォーム固有の問題に関するパフォーマンス最適化の推奨事項を提示します。
このスキルが分析する項目
1. レンダリングパフォーマンス
ドローコール(目標値:モバイルでは <100、デスクトップでは <2000)を分析し、バッチ処理の機会を特定して、マテリアルの統合と静的バッチ処理を推奨します。
2. テクスチャの最適化
圧縮形式(BC7/ASTC)、ミップマップの使用状況、テクスチャアトラス、プラットフォーム固有のインポート設定を確認します。
3. GameObject の階層構造
目標値:モバイルでは <500 個、デスクトップでは <2000 個の GameObject。深いネストを特定し、オブジェクトプーリングと LOD グループを推奨します。
4. ライティングとシャドウ
リアルタイムライティング(モバイルでは1~2個、デスクトップでは3~4個)よりもベイク済みライティングを推奨し、シャドウを投影するライトを最小限に抑えます。
5. 物理演算の最適化
Rigidbody の数、コライダーの複雑さ、衝突マトリックスの設定を分析します。Mesh コライダーよりも単純なコライダーを推奨します。
6. モバイル固有の項目
プラットフォームの目標:iOS(iPhone 12以降)で60 FPS、Androidで30~60 FPS。要件の全一覧は mobile-checklist.md を参照してください。
最適化ワークフロー
- 測定:Frame Debugger、Stats、Profiler のメトリクスを確認
- 特定:GPU/CPU/メモリ/物理演算のボトルネックを特定
- 適用:手早く効果が得られる対策(静的バッチ処理、圧縮)→ 中程度の対策(アトラス、プーリング、LOD)→ 大規模な対策(階層構造のリファクタリング、カリング)
- 検証:変更前後のメトリクスを比較
詳しい手順とスケジュールについては、optimization-workflow.md を参照してください。
プラットフォーム固有の目標値
| プラットフォーム | ドローコール | 三角形数 | テクスチャメモリ | ライト数 |
|---|---|---|---|---|
| モバイル(低) | <50 | <20k | <100MB | 1 |
| モバイル(中) | <100 | <50k | <250MB | 1-2 |
| モバイル(高) | <150 | <100k | <500MB | 2-3 |
| PC(低) | <500 | <200k | <1GB | 3-4 |
| PC(中) | <1000 | <500k | <2GB | 4-6 |
| PC(高) | <2000 | <1M | <4GB | 6-8 |
| コンソール | <1000 | <800k | <3GB | 4-6 |
ツールのリファレンス
Frame Debugger、Profiler、Stats Window、Memory Profiler。使い方とコマンドについては、tools-reference.md を参照してください。
出力形式
次の情報を提示します:現在のメトリクス、ボトルネックの特定、優先順位付きの推奨事項、パフォーマンスへの影響の見積もり、実装手順。
他のコンポーネントとの使い分け
次の場合はこの Skill を使用します:シーンのパフォーマンスを分析する場合、ボトルネックを特定する場合、または最適化の推奨事項を得る場合
次の場合は @unity-performance agent を使用します:複雑な最適化を実装する場合、実行時にプロファイリングを行う場合、または特定のパフォーマンス問題をトラブルシューティングする場合
次の場合は @unity-architect agent を使用します:シーンアーキテクチャを再設計する場合、オブジェクトプーリングシステムを実装する場合、または大規模な最適化を計画する場合
次の場合は /unity:optimize-scene command を使用します:詳細なレポートを含む包括的なシーン分析を実行する場合
関連スキル
- unity-script-validator:スクリプトレベルのパフォーマンス問題向け
- unity-template-generator:最適化済みのコンポーネントテンプレート向け