Robloxエンジンの基盤となるクライアント-サーバーモデルのため、ゲームを公開する前にさまざまなモードでテストすることが重要です。すべてのテストオプションは、メザニンの左側にアクセス可能です。

プレイテスト
ゲームのプレイテストには、3つの一般的なオプションがあります。ドロップダウンメニューから希望のオプションを選択し、その右側にあるプレイボタンをクリックしてプレイテストを開始します。

| モード | ショートカット | 説明 |
|---|---|---|
| テスト | F5 | ゲームのシミュレーションを開始し、あなたのアバターを SpawnLocation または座標の周辺 (0, 100, 0) に挿入します。 |
| ここでテスト | ゲームのシミュレーションを開始し、カメラの現在の位置の前にあなたのアバターを挿入します。 | |
| 実行 | F8 | ゲームのシミュレーションを開始しますが、あなたのアバターは挿入されません。シミュレーションは現在のカメラ位置から始まり、スタジオのカメラコントロールを使って周囲を移動できます。 |
プレイテストが実行されている間、メザニンに追加のオプションが表示されます。

| アクション | ショートカット | 説明 |
|---|---|---|
| 一時停止 / 再開 | 物理とアニメーションを一時停止/再開できます。 | |
| 停止 | ShiftF5 | ゲームのシミュレーションを停止し、すべてのオブジェクトとインスタンスをプレイテスト前の状態にリセットします。 |
| クライアント / サーバー | "ソロ"モード(テストまたはここでテスト)でプレイテスト中に、クライアントモードとサーバーモードを切り替えます。詳細はクライアント/サーバーの切り替えを参照してください。 |
クライアント/サーバーの切り替え
テストまたはここでテストモードでテストする際、スタジオは2つの別々のシミュレーション — 1つのクライアントシミュレーションと1つのサーバーシミュレーション — を実行し、ゲームが本番環境でどのように実行されるかのより正確な印象を提供します。
ソロプレイテスト中に、クライアント/サーバートグルボタンをクリックすることで、クライアントモードとサーバーモードを切り替えることができます。切り替えると、ボタンは現在のシミュレーションモードを反映するように変わります。


シミュレーションモードに応じて、キャラクターとカメラの制御が次のように変わります。

エクスプローラーウィンドウの階層内では、特定のオブジェクトは期待されるコンテナ内にのみ存在します。


出力ウィンドウでは、メッセージは青(クライアント)または緑(サーバー)でラベル付けされ、クライアントまたはサーバーのいずれかからの発信を示します。ModuleScriptsから出力されたメッセージの場合、ラベルの色はモジュールがクライアント側のLocalScriptから呼び出されたか、サーバー側のScriptから呼び出されたかによって決まります。

一時停止/再開
ソロプレイテスト中、一時停止/再開ボタンは、レンダリングを無効にすることなく、一時的なシーンやメカニズムのデバッグに役立ちます。

デフォルトでは、一時停止と再開はクライアントとサーバーの両方に作用します。クライアントまたはサーバーのみを一時停止または再開したい場合:
- 一時停止/再開したいシミュレーションに基づいてクライアント/サーバートグルを設定します。
- 一時停止/再開ボタンの小さな矢印をクリックし、一時停止/再開 クライアントまたは一時停止/再開 サーバーの代替オプションを選択します。ボタンをクリックすると、そのシミュレーションの側面のみが一時停止または再開されます。
シミュレーションが一時停止されていると、1/60秒(60 Hz)前に進むことができます。一時停止/再開ボタンの左側にある小さな矢印をクリックすると、クライアント/サーバートグルに基づいて、クライアントまたはサーバーのステッピングを選択できます。

一時停止/再開に関する以下の技術的詳細に注意してください:
- Animationsは物理に基づいていませんが、これらのツールバーのボタンもアニメーションを一時停止/再開します。
- 一時停止または再開は、実行中のスクリプトには影響しません。
- RunServiceコールバックのPreAnimation、PreSimulation、PostSimulation、およびSteppedのみが、これらのツールバーのボタンを介して一時停止または再開されます。他のコールバック(PreRender、Heartbeat、およびRenderStepped)は引き続き発火し、カメラスクリプト、レンダリングされた視覚化、およびプラグインの通常の機能を維持します。
マルチクライアントシミュレーション
ドロップダウンメニューのサーバーとクライアントオプションを使用すると、スタジオの複数のセッションを起動できます。1つはサーバーとして、他はクライアントとして機能します。このテストモードは、クライアントがゲーム内で他のクライアントを「見る」方法を比較するための貴重なツールです。
ドロップダウンメニューでサーバーとクライアントオプションを選択し、テストするクライアントセッションの数を選択します。通常、1〜2クライアントで十分ですが、最大8までシミュレートできます。

プレイボタンまたはF7を押してクライアント-サーバーシミュレーションを開始します。
テストが終了したら、シミュレーションセッションのいずれかからセッション終了ボタンを押して、すべてのシミュレートされたクライアントとシミュレートされたサーバーを閉じます。

パーティシミュレーション
パーティシミュレーターを使用すると、パーティ関連のAPIを直接スタジオ内でテストおよびデバッグできます。これにより、複数のデバイスを公開して調整する必要がなくなります。このツールを使用すると、サーバーとクライアントのプレイテストでテストプレイヤーのためにパーティを構成およびエミュレートできます。
プレイテスト中、パーティシミュレーターは自動的にすべてのテストプレイヤーを構成されたシミュレートされたパーティに割り当てます。

パーティシミュレーターが有効になっている場合:
- 各Player.PartyIdプロパティは、パーティシミュレーターの割り当てを反映します。
- SocialService:GetPartyAsync()は、シミュレートされたパーティデータのテーブルを返します。
スタジオのサーバーとクライアント設定を使用して、いつでもローカルテストプレイヤーの数を調整できます。テストプレイヤーの数が変更されると、エミュレーターは自動的に構成にプレイヤーを追加または削除します。
コラボレーティブテスト
他の人とコラボレーションモードでゲームに取り組んでいる場合、他のコラボレーターと次のようにテストできます。
ドロップダウンメニューでチームテストを選択し、プレイボタンを押して、キャラクターが挿入された新しいスタジオセッションを開きます。

他のコラボレーターは、自分のスタジオセッションのメザニンからプレイボタンを押すことで参加できます。
デバイスシミュレーション
デバイスシミュレーターを使用して、目の前にないデバイスでの体験がどのように見え、どのように動作するかをプレビューできます。これには、画面の寸法、ピクセル密度、オンスクリーンキーボード、タッチ入力が含まれます。デバイスシミュレーターは、コントローラーエミュレーターと組み合わせて、プレイヤーが体験を制御するために使用するゲームパッド、VRコントローラー、ハンドヘルド、テレビリモコンをエミュレートします。
ネットワークシミュレーション
ネットワークシミュレーターを使用して、スタジオのプレイテスト接続に遅延、ジッター、パケットロスを追加し、プレイヤーが有線、Wi-Fi、モバイル接続で遭遇するネットワーク条件を再現します。これは、サーバー権限を使用するゲームのテストに特に便利です。予測とロールバック/再シミュレーションメカニズムはネットワーク条件に敏感であり、UnreliableRemoteEventsのテストにも役立ちます。これらは失われたり、順序が入れ替わったりする可能性があります。
スクリプトテスト
上記のインタラクティブなテストツールに加えて、スタジオはプラグインやビルドパイプラインからプログラム的にテストを実行できるサービスを公開しています。これらの3つのサービスはスタジオ専用で、公開された体験で実行しても何も行いません。
| サービス | 目的 |
|---|---|
| StudioDeviceSimulatorService | スクリプト可能なデバイスシミュレーション。デバイスプリセットをブラウズし、アクティブデバイスを切り替え、解像度とDPIをオーバーライドし、向きとスケーリングを制御し、ディスクに永続するカスタムデバイスプロファイルを作成します。 |
| StudioTestService | プログラム的なマルチクライアントシミュレーション。最大8つのシミュレートされたクライアントを持つサーバーを開始し、セッション中にプレイヤーを追加し、テストに引数を渡し、クライアントの切断をトリガーし、サーバーからテストを終了します。 |
| VirtualInput | 実際のハードウェア入力と同じように処理されるシミュレートされたマウス、キーボード、ポインターイベント。UserInputService:CreateVirtualInput()からインスタンスを取得します。 |
これらのサービスは、クロスデバイスのマルチプレイヤーテスト(デバイスプロファイルをサイクルし、各デバイスでマルチプレイヤーテストを開始)、プレイヤーの参加/離脱ストレステスト、向きの回帰テスト、エンドツーエンドのUIフロー自動化を可能にします。
VRヘッドセット
ゲームのために仮想現実(VR)ヘッドセットをサポートしたい場合は、スタジオでVRをテストまたはエミュレートすることを確認してください。
VRエミュレーション
VRエミュレーションを使用すると、物理的なヘッドセットなしでスタジオでVRゲームをテストできます。他のデバイスをエミュレートするのと同様に、デバイスシミュレーターを使用して、ヘッドセットデバイス(例:Meta Quest 2またはMeta Quest 3)を選択します。コントローラーエミュレーターは、ヘッドセットに適切なコントローラーを自動的に選択します。


ヘッドセットと複数のコントローラーの組み合わせは、モーショントラッキングを持ち、VRエミュレーションをより複雑にします:
モーショントラッキングエミュレーションの場合、Alt1(⌥1)を押して、マウスをビューポートにロックしたり、ロックを解除したりします。
Shift←またはShift→を使用して、ヘッドセット、左コントローラー、右コントローラーの一般的な組み合わせを切り替えます。たとえば、左コントローラーのボタンで前進しながら周囲を見回すためにヘッドセットオプションを使用することができますが、ターゲットを狙うためにモーションコントロールを使用する必要がある場合は、右コントローラーに切り替えることができます。
ヘッドセットの構成
スタジオは、OpenXRと互換性のあるすべてのVRヘッドセットのテストをサポートしています。OpenXRは、VRへのアクセスを提供するオープンソースの業界標準です。
スタジオでのVRテストを有効にするには、ヘッドセットをPCに接続し、スタジオを起動する前にOpenXRランタイムを構成する必要があります。すでにスタジオを起動している場合は、終了して構成手順を最初に完了してください。
ヘッドセットが1つしかない場合、対応するVRアプリをインストールすると、自動的にランタイムが構成されます。複数のヘッドセットがある場合は、ランタイムを手動で設定し、テストに使用するヘッドセットのみを構成する必要があります。
以下の手順は、最も一般的な2つのVRアプリに関するものです:
- HTC ViveやValve Indexなどのヘッドセット用のSteamVR。
- Meta QuestやOculus Riftなどのヘッドセット用のOculus。
- コンピュータにSteamVRアプリをインストールして開きます。
- SteamVR設定の下で、開発者タブを選択します。次に、詳細設定を表示を選択します。
- SteamVRをOpenXRランタイムとして設定します。
- システムボタンを押してビープ音が聞こえるまでコントローラーの電源を入れます。
- コントローラーの電源を切るには、同じビープ音が聞こえるまでシステムボタンを押し続けます。
手順を正しく実行すると、SteamVRアプリのステータスアイコンとハードウェアのステータスライトがすべて緑になり、構成が完了したことを示します。
Roblox Questアプリ
ヘッドセットをコンピュータにリンクせずに、QuestのRobloxアプリでゲームをテストできます。このモードでヘッドセットでゲームにアクセスするには、次の手順を実行します:
- スタジオでゲームを公開し、ゲームをプライベートに設定します。
- クリエイターダッシュボードまたはスタジオのリンクを使用して、ウェブブラウザでゲームページを開きます。
- ゲームページで、お気に入りアイコンをクリックしてゲームをお気に入りに追加します。
- ヘッドセットを使用して、スタンドアロンのRobloxアプリを開きます。
- ホームページのお気に入りセクションをスクロールダウンし、ゲームを実行します。
スタジオVRモード
ヘッドセットの構成を行った後、次の手順でスタジオVRテストモードをオンにできます:
- ファイルメニューで、スタジオ設定を選択します。
- レンダリングを選択します。
- 一般設定の下で、VRモードを有効にするをオンにします。
これで、利用可能なプレイテストオプションを使用してVRヘッドセットでゲームをテストできます。VRテストセッション中にヘッドセットケーブルが切断されたり、ヘッドセット上のRoblox Studio Betaアプリを閉じたりすると、テストを再実行するためにスタジオを再起動する必要があります。
プレイヤーエミュレーション
ゲームのローカリゼーションやコンテンツポリシーを詳細にエミュレートするために、スタジオのプレイヤーエミュレーターを通じてテストできます。これはスタジオのテストメニューからアクセスできます。
エミュレーターウィンドウが開いている状態で、テストプロファイルを有効にするをオンにします。エミュレーションは、ウィンドウを閉じてもトグルされたまま(有効または無効)になります。
ウィンドウの下部には、一般的に使用されるオプションが含まれています:
| オプション | 説明 |
|---|---|
| ロケール | プレイテスト中にローカライズされた言語をエミュレートできます。 |
| 擬似ローカライズ | 似たようなが少し異なる文字に置き換えて、どの文字列が翻訳システムを通過しているかを簡単に特定できるようにします。これを有効にすると、エミュレーション言語を変更することなくローカライズされていないテキストを特定できます。たとえば:
|
| エロンゲート | スライダーで定義された係数でテキスト文字列を引き延ばします。たとえば:
|
| 地域 | プレイテスト中にプレイヤーの国/地域をエミュレートできます。この選択は、GetPolicyInfoForPlayerAsync()で概説されているように、ウィンドウ内の他のトグルやチェックボックスに影響を与える可能性があります。 |