デベロッパーコンソールは、スタジオでテスト中または本番環境で実行中のエクスペリエンスのデバッグに使用するツールです。ログメッセージや出力ウィンドウに類似したエラー、およびメモリおよびネットワーキングの詳細情報を表示します。
デベロッパーコンソールの開き方
テスト中またはエクスペリエンスをプレイ中にデベロッパーコンソールを開くには、チャットに /console と入力するか、F9 キーを押します。また、以下の手順でエクスペリエンスの設定から開くこともできます:
- エクスペリエンス内で設定を開きます。
- スクロールしてデベロッパーコンソールを探します。
- デベロッパーコンソールの横にある開くをクリックします。
コンソールのタブ
コンソールの上部にあるショートカットバーには、重要なエラーや警告の数、クライアントのメモリ使用量、平均ピング時間が表示されます。これらのいずれかをクリックすると、それに対応するタブにジャンプします。ショートカットバーの下には、ログ、メモリ、ネットワークなどのタブが並んでいます。
ログ
ログタブにはスクリプトからの診断メッセージが表示されます。クライアントとサーバーの 2 つのセクションがあります。
- クライアントセクションでは、クライアント上で実行されている LocalScript からの出力が表示されます。エクスペリエンスを実行しているユーザーはこれらのローカル出力メッセージを表示できます。
- サーバーセクションでは、Roblox サーバー上で実行されているスクリプトからの出力が表示されます。エクスペリエンスのオーナーまたは編集権限を持つグループメンバーのみがこのセクションにアクセスできます。
次のチェックボックスを使用してログの出力メッセージをフィルタリングできます:
出力 | スクリプト内のprint()およびwarn()ステートメントによって生成されたメッセージ。 |
情報 | エクスペリエンスによって生成されたエラーやカスタム出力ステートメントではないメッセージ。 |
警告 | 潜在的な問題を示すメッセージで、重大な問題ではありません。 |
エラー | 重大な問題が発生したことを示すメッセージ。 |
コマンドバー
サーバーセクションには、編集権限を持つユーザーが任意の Luau コードを実行できるコマンドバーがあります。このコマンドバーはScriptおよびLocalScriptオブジェクトと同じセキュリティ制限を持っており、Studio のコマンドバーとは異なり保護された関数は実行できません。
メモリ
コンソールのメモリタブには、メモリ使用量のメトリックスが表示されます。モデル、地形、パーツ、視覚効果、スクリプト、物理的な装置、オーディオなどが総メモリ使用量に貢献します。メモリタブには以下のセクションがあります:
- CoreMemory – ネットワーキング、アバター、GUI 要素など Roblox エンジンに組み込まれたプロセスによって使用されるメモリ。
- PlaceMemory – エクスペリエンスの構築時に行われた選択の結果としてスケーリングされるメモリ。
- UntrackedMemory – タグ付けされていない任意のメモリ割り当て。
- PlaceScriptMemory – ユーザーの Luau スクリプトスレッドによって使用されるメモリ。このセクションにはスクリプト名とカスタムメモリタグが含まれます。
- CoreScriptMemory – 内部の Roblox スクリプトスレッドによって使用されるメモリ。
PlaceMemoryセクションにはサブカテゴリがあります。以下の表は、各サブカテゴリとメモリ使用量を削減するためのヒントを説明しています。
カテゴリ | 説明 | メモリ管理のヒント |
---|---|---|
HttpCache | Robloxサーバーからロードされたアセット(画像、メッシュなど)をメモリ内のキャッシュに保持しています。 | アセットを少なくするか、サイズを小さくします。 |
Instances | エクスペリエンス内のInstances。 | 可能な限りインスタンス(エクスプローラウィンドウ内のオブジェクト)の総数を減らします。 |
Signals | インスタンス間で発生する信号(1つのインスタンス上でイベントが発生して別のインスタンス上のイベントをトリガーするイベント)。 | インスタンス間のイベント接続を減らします。 |
LuaHeap | コアスクリプト(Robloxクライアントに含まれるスクリプト)およびカスタムスクリプトのためのヒープメモリ。 | メモリ効率の良いスクリプトを記述します。 |
Script | Luaスクリプト。 | 少ないか短いスクリプトを使用します。 |
PhysicsCollision | 物理シミュレーションの衝突データ。 | 部品が移動する必要がない場合は、BasePart.Anchoredをtrueに設定します。部品が何かと衝突する必要がない場合は、BasePart.CanCollideをfalseに設定します。 |
PhysicsParts | 物理ジオメトリと運動学。 | シンプルで小さな部品を使用します。 |
GraphicsSolidModels | 固体モデルをレンダリングするためのグラフィックデータ。 | 少ない/シンプルな固体モデルを使用するか、Enum.RenderFidelityをAutomaticに設定します。 |
GraphicsMeshParts | MeshPartオブジェクトのためのグラフィックス。 | 少ないかシンプルなメッシュを使用します。 |
GraphicsParticles | パーティクルシステムのためのグラフィックス。 | 少ないパーティクルシステムを使用するか、寿命の短いパーティクルを少なく生成します。 |
GraphicsParts | パーツのためのグラフィックス。 | 少ないかシンプルな部品を使用します。 |
GraphicsSpatialHash | 一般的なレンダリング。 | レンダリングに貢献する部品、パーティクル、ライト、およびその他すべての要素を少なく使用します。 |
GraphicsTerrain | 地形のためのグラフィックス。 | 地形を少なく使用します。 |
GraphicsTexture | テクスチャメモリ。 | 少ないか小さいテクスチャを使用します。 |
GraphicsTextureCharacter | キャラクターのためのテクスチャメモリ。 | 少ない数のユニークなキャラクター外観を使用します。 |
Sounds | メモリ内のサウンド。 | 少ないか小さいサウンドを使用します。 |
StreamingSounds | ストリーミングサウンド。 | 少ないストリーミングサウンドを使用します。 |
TerrainVoxels | 地形ボクセル。 | 地形を少なく使用します。 |
TerrainPhysics | 地形物理。 | 地形に近いオブジェクトの場合、BasePart.CanCollideをfalseに設定し、必要に応じてBasePart.Anchoredをtrueに設定します。 |
Gui | 一般的なGUI要素に使用されるメモリ。 | GUIインスタンスの使用量を減らすか最適化します。 |
Animation | ポーズやKeyframeSequenceのキャッシュデータなど、アバターアニメーション用のアニメーションデータに使用されるメモリ。 | 可能な限り異なるアニメーションを減らし、可能であればアニメーションを最適化します。 |
Navigation | PathfindingServiceのサポート構造に使用されるメモリ。 | 使用を最適化し、PathfindingServiceへの呼び出しを減らします。 |
ネットワーク
デベロッパーコンソールのネットワークタブには、エクスペリエンスが行ったウェブ呼び出しの数が表示されます。これにはHttpServiceを介した明示的な呼び出しや、DataStoreServiceなどの Roblox サービスによって行われるウェブリクエストも含まれます。ネットワークタブには概要と詳細の 2 つのセクションがあります。
概要セクションには、ウェブ呼び出しの種類ごとの要約が表示されます。各種類には、リクエストの数、失敗したリクエストの数、リクエストにかかった時間などの詳細が表示されます。
詳細セクションには、各個別のウェブ呼び出しがリストアップされます。各行には、HTTP メソッド(GETまたはPOSTなど)とステータスコード、実行時間、リクエストの種類、およびリクエストの URL が表示されます。ウェブ呼び出しをクリックすると、そのレスポンスの詳細が表示されます: