> ## 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.

# XGameStreamingShowTouchControlLayout

> XGameStreamingShowTouchControlLayout

# XGameStreamingShowTouchControlLayout

接続されているすべてのストリーミング クライアント デバイスに指定されたタッチ レイアウトを表示するよう要求します。

## Syntax

```cpp theme={null}
void XGameStreamingShowTouchControlLayout(
         const char* layout  
)  
```

## Parameters

*layout*   \_In\_opt\_z\_\
型: char\*

表示するタッチ コントロール レイアウトの名前。または、標準の XBOX コントローラー レイアウトを表示する場合は `nullptr`。

ストリーミング クライアント デバイスに表示するタッチ コントロール レイアウトの ID。レイアウト ID はタイトル固有であり、[Touch Adaptation Kit](/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-kit-overview) の一部として XBOX Game Streaming サービスに提供されるレイアウトの ID に対応します。この文字列は UTF-8 でエンコードされている必要があります。

`nullptr` を指定すると、既定のタッチ コントロール セットが表示されます。

タイトルのタッチ コントロール レイアウト ID に一致しない文字列は、クライアント デバイス上のタッチ コントロールの状態を変更しません。このような場合、Content Test Application では診断情報が提供されることがあります。

## Return Value

型: void

## Remarks

この API は、現在のすべてのゲーム ストリーミング クライアントに対し、プレイヤーのクライアント デバイス上で特定のタッチ コントロール レイアウトを表示するよう要求します。プレイヤーがゲームをストリーミングしていない場合、またはタッチが有効ではないデバイスにストリーミングしている場合、この関数は何も行いません。

プレイヤーがタッチ コントロールではなく物理コントローラーを使用している場合、この関数はデバイス上にタッチ コントロールを強制的に表示しません。代わりに、次にプレイヤーがタッチ コントロールを使い始めた際に、最後に要求されたレイアウトがクライアントで使用されます。

この関数は、プレイヤーがタッチ コントロールを使用している場合に、現在のゲーム状態にどのタッチ コントロール レイアウトが最も適しているかをクライアント デバイスに伝えるヒントと考えることができます。実際にこれらのコントロールをプレイヤーの画面に表示する最適なタイミングは、クライアント デバイスが管理します。

`XGameStreamingShowTouchControlLayout` を呼び出すたびにネットワーク経由でメッセージが送信されるため、フレームごとに呼び出さないでください。代わりに、異なるタッチ コントロール レイアウト間で遷移する必要がある場合にのみこの API を呼び出してください。

`XGameStreamingShowTouchControlLayout` を呼び出したときにクライアント デバイスが接続されていない場合、クライアントが接続すると、最後に要求されたタッチ コントロール レイアウトを受け取ります。

**特定の** 接続されているストリーミング クライアント デバイスにタッチ コントロール レイアウトを表示したい場合は、代わりに [XGameStreamingShowTouchControlLayoutOnClient](/reference/system/xgamestreaming/functions/xgamestreamingshowtouchcontrollayoutonclient) の使用を検討してください。

## Examples

```C++ theme={null}
void OnGameStateChanged(GameState newState)
{
    // Toggle to the set of touch overlay controls which best match the new state of the game
    switch (newState)
    {
    case GameState::FirstPersonAction:
        XGameStreamingShowTouchControlLayout("FirstPersonAction");
        break;
    case GameState::Driving:
        XGameStreamingShowTouchControlLayout("Driving");
        break;
    case GameState::CutScene:
        // Don't show any touch overlay controls while the cut scene is rendering
        XGameStreamingHideTouchControls();
        break;
    }
}
```

## Requirements

**ヘッダー:** xgamestreaming.h

**ライブラリ:** xgameruntime.lib

**サポートされているプラットフォーム:** Windows、XBOX One ファミリー本体および XBOX Series 本体

## See also

[XGameStreamingHideTouchControls](/reference/system/xgamestreaming/functions/xgamestreaminghidetouchcontrols)\
[XGameStreamingShowTouchControlLayoutOnClient](/reference/system/xgamestreaming/functions/xgamestreamingshowtouchcontrollayoutonclient)\
[XGameStreaming](/reference/system/xgamestreaming/xgamestreaming_members#TouchAdaptation)


## Related topics

- [XGameStreamingShowTouchControlLayoutOnClient](/ja-jp/reference/system/xgamestreaming/functions/xgamestreamingshowtouchcontrollayoutonclient.md)
- [XGameStreamingHideTouchControls](/ja-jp/reference/system/xgamestreaming/functions/xgamestreaminghidetouchcontrols.md)
- [XGameStreamingShowTouchControlsWithStateUpdate](/ja-jp/reference/system/xgamestreaming/functions/xgamestreamingshowtouchcontrolswithstateupdate.md)
- [ゲーム状態に基づくタッチ コントロール レイアウトの変更](/ja-jp/build/core-features/common/game-streaming/building-touch-layouts/game-streaming-touch-changing-layouts-game-state.md)
- [XGameStreaming](/ja-jp/reference/system/xgamestreaming/xgamestreaming_members.md)
