> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ウィンドウ表示モードと title-callable UI ダイアログ

> title-callable UI (TCUI) ダイアログが正しくレンダリングされ、フォーカス喪失時に Gaming Runtime が最小化を防止できるように、PC ゲームのウィンドウ表示モードを構成します。

このトピックでは、PC 上でウィンドウ表示モードを扱い、title-callable UI (TCUI) ダイアログを正常に表示するために必要となる特別な考慮事項について解説します。

ゲームでは、TCUI を表示する可能性のある API を呼び出す前に、ゲーム ウィンドウが表示されていることを確認することを推奨します。さらに、ゲーム ウィンドウは Full Screen Exclusive ではなく、Full Screen Windowed / ボーダーレス、または Windowed / 非最大化モードを使用すべきです。

ゲームは、カスタムのアプリ / ゲーム解像度ではなく、ネイティブ ディスプレイ解像度で実行すべきです。一部の技術（DirectX 9 など）は、TCUI ダイアログが表示されるときの解像度の変更を適切に処理できません。

これに加えて、一部のミドルウェア エンジンやラッパー、および DirectX 9 は、TCUI ダイアログが表示されて前面フォーカスが失われると、フル スクリーンのゲーム ウィンドウを自動的に最小化します。ユーザーにとってこの望ましくない挙動を回避するため、TCUI ダイアログを表示するときはウィンドウの最小化が明示的に拒否されます。詳細については、このトピックの後の「ゲーム ウィンドウの最小化を防止する」のセクションを参照してください。

DirectX 以外のグラフィックス技術を使用するゲーム タイトルの推奨ベスト プラクティスは、以下のように異なります。

ゲーム タイトルが OpenGL や Vulkan を使用する場合、デスクトップ所有のウィンドウ ボーダーを表示する「ウィンドウ」モードが、TCUI ダイアログをゲーム上にレンダリングするために必要です。これは、ビデオ カード ドライバーの実装によっては、任意の種類のフル スクリーン モードで実行中のゲームが Desktop Window Manager を介さずにレンダリングされる可能性があるためです。これにより、TCUI ダイアログがゲーム ウィンドウ上に表示されなくなります。

その他のグラフィックス技術については、XBOX サポート担当者にお問い合わせください。

## ゲーム ウィンドウの最小化を防止する

一部のミドルウェア エンジンやレイヤリング システム（Unity や Simple DirectMedia Layer (SDL) など）は、TCUI ダイアログに前面フォーカスが失われるとゲームのフル スクリーン ウィンドウを自動的に最小化します。

この挙動を防止するため、Gaming Runtime は [CBTProc](https://learn.microsoft.com/previous-versions/windows/desktop/legacy/ms644977\(v=vs.85\)) を使用してゲーム ウィンドウを最小化するあらゆる要求を拒否します。Gaming Runtime は、オーバーレイがフル スクリーン DirectX ゲーム ウィンドウ上にレンダリングでき、かつ TCUI ダイアログが表示されていることを検出したときにのみ、このパターンを適用します。

さらに、Gaming Runtime は TCUI ダイアログを表示する前に、あらゆるスタイル変更ウィンドウ メッセージをインターセプトして変更し、ゲーム ウィンドウがボーダーやタイトル バーをレンダリングするのを防ぎます。[WS\_OVERLAPPEDWINDOW](https://learn.microsoft.com/windows/win32/winmsg/window-styles) グループのスタイルは、以前の古いスタイルに存在していなければスタイル変更時に適用されません。この変更は TCUI ダイアログの存続期間中にのみ実装されます。

## TCUI ダイアログにおける DirectX 9 の考慮事項

DirectX 9 ゲームは「ゲーム ウィンドウの最小化を防止する」（このトピックの前述部分）で説明されているとおり最小化されないよう保護されますが、TCUI ダイアログが表示されたときは依然として前面フォーカスを失います。ゲームは、フル スクリーンで実行中にゲーム ウィンドウを最小化するユーザーに対して応答する場合とまったく同じ方法で、このフォーカス喪失を適切に処理する準備をしておくべきです。

## TCUI ダイアログにおける Unity の考慮事項

TCUI ダイアログを表示する予定のあるゲームでは、「Application.runInBackground」を true に設定することを推奨します。


## Related topics

- [Game Saves システム ダイアログ](/ja-jp/build/core-features/common/game-save/game-saves-dialogues.md)
- [PlayFab Game Saves の Steam Deck 実装ガイド](/ja-jp/services/playfab/player-progression/game-saves/steam-deck-implementation.md)
- [XGameUiShowMessageDialogUiCallback](/ja-jp/reference/system/xgameui/functions/xgameuishowmessagedialoguicallback.md)
- [XGameUiShowErrorDialogAsync](/ja-jp/reference/system/xgameui/functions/xgameuishowerrordialogasync.md)
- [XGameUiShowMessageDialogAsync](/ja-jp/reference/system/xgameui/functions/xgameuishowmessagedialogasync.md)
