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

# Touch Adaptation Kit (TAK) Reference

> Touch Adaptation Kit (TAK) reference for building touch layouts, bundles, and using tak.exe to enable touch controls in streamed XBOX games.

## Bundle & Tools

| Topic                                                                                                                                                | Description                                                                                          |
| :--------------------------------------------------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------- |
| [Touch Adaptation Bundle (TAB)](/build/core-features/common/game-streaming/game-streaming-touch-touch-adaptation-bundle)                             | A self-contained set of layouts, assets and configuration to enable playing the game with touch.     |
| [Touch Adaptation Kit Command Line Tool (tak.exe)](/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line) | Create and validate touch control layouts. Enable streaming devices to acquire layouts from your PC. |

## Layout Configuration

The base layout components of a touch layout.

| Topic                                                                                                     | Description                                                                                             |
| :-------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------ |
| [Layout](/reference/system/touchadaptationkit/layout/game-streaming-touch-layout)                         | The representation of a full touch layout for a game.                                                   |
| [Control cluster](/reference/system/touchadaptationkit/layout/game-streaming-touch-control-cluster-outer) | An array of up to four controls that can be used to occupy two slots in the outer portion of the wheel. |
| [Inner wheel](/reference/system/touchadaptationkit/layout/game-streaming-touch-inner-wheel)               | An array of up to four controls that split the inner portion of a wheel.                                |
| [Layer](/reference/system/touchadaptationkit/layout/game-streaming-touch-layer)                           | An ***experimental*** child touch layout that can be overlayed on top of the base touch layout.         |
| [Layer action](/reference/system/touchadaptationkit/layout/game-streaming-touch-layer-action)             | An ***experimental*** action that a button can use to display a layer.                                  |
| [Layout orientation](/reference/system/touchadaptationkit/layout/game-streaming-touch-layout-orientation) | (***deprecated***) The orientation that the touch layout will be displayed.                             |
| [Wheel](/reference/system/touchadaptationkit/layout/game-streaming-touch-wheel)                           | A set of touch controls arranged in an inner and outer circular area.                                   |

## Touch Controls

The set of visual controls that are available for your touch layouts.

| Control                                                                                              | Description                                                                                               | Examples                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| :--------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| [Arcade Buttons](/reference/system/touchadaptationkit/controls/game-streaming-touch-arcadebuttons)   | A collection of 6 or 8 buttons laid out in an arc, in the style of arcade cabinets.                       | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-arcade-buttons.gif?s=92843bf4367eb4a769477816d53e09c6" alt="Arcade Buttons" width="400" height="400" data-path="images/gdk/features/common/game-streaming-touch-control-images-arcade-buttons.gif" />                                                                                                                                                                                                                                                                                                                                                                                                                           |
| [Blank](/reference/system/touchadaptationkit/controls/game-streaming-touch-blank)                    | An ***expiremental*** control used in a `layer` to hide the control that was being displayed in the slot. |                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| [Button](/reference/system/touchadaptationkit/controls/game-streaming-touch-button)                  | A basic control that can respond to player touch input.                                                   | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-button.gif?s=c4220861f5818014b9bd6f713b40fdd9" alt="simple buttons" width="160" height="160" data-path="images/gdk/features/common/game-streaming-touch-control-images-button.gif" /> <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-button-3.gif?s=a7ff14996d91ca45fbdb7863fada0968" alt="customized button" width="160" height="160" data-path="images/gdk/features/common/game-streaming-touch-control-images-button-3.gif" />                                  |
| [Directional Pad](/reference/system/touchadaptationkit/controls/game-streaming-touch-directionalpad) | A directional pad control that always maps the gamepad directional pad.                                   | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-directional-pad.gif?s=dce7c07d7c12e6491493e3871e919fdc" alt="Directional Pad" width="320" height="320" data-path="images/gdk/features/common/game-streaming-touch-control-images-directional-pad.gif" />                                                                                                                                                                                                                                                                                                                                                                                                                        |
| [Joystick](/reference/system/touchadaptationkit/controls/game-streaming-touch-joystick)              | An analog control that behaves like a joystick.                                                           | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-joystick.gif?s=23e6999e76ef9e5b230e4c5a7727e964" alt="joystick" width="400" height="400" data-path="images/gdk/features/common/game-streaming-touch-control-images-joystick.gif" /> <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-joystick-driving.gif?s=2920248f9ae14b3eeb007d8f03b81116" alt="one dimensional joystick for driving" width="400" height="400" data-path="images/gdk/features/common/game-streaming-touch-control-images-joystick-driving.gif" /> |
| [Throttle](/reference/system/touchadaptationkit/controls/game-streaming-touch-throttle)              | A specialized version of a Y-axis only joystick that maps to triggers. Designed for driving games.        | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-throttle.gif?s=1c296dc278b1e4a66ddb1ec7c513b2d6" alt="throttle for driving" width="400" height="400" data-path="images/gdk/features/common/game-streaming-touch-control-images-throttle.gif" />                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| [Touchpad](/reference/system/touchadaptationkit/controls/game-streaming-touch-touchpad)              | Analog control that enables the player to interact similar to a laptop touchpad.                          | <img src="https://mintcdn.com/microsoft-4404708b/UZTRJSf0emX1fheE/images/gdk/features/common/game-streaming-touch-control-images-touchpad.gif?s=3141b971d426c358d04654cf01d307c9" alt="touchpad" width="400" height="400" data-path="images/gdk/features/common/game-streaming-touch-control-images-touchpad.gif" />                                                                                                                                                                                                                                                                                                                                                                                                                                             |

## Control Styling & Components

| Component                                                                                                          | Description                                                                                   |
| :----------------------------------------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------------------- |
| [Action](/reference/system/touchadaptationkit/types/game-streaming-touch-action)                                   | Physical controller action(s) that can be referenced.                                         |
| [Asset](/reference/system/touchadaptationkit/types/game-streaming-touch-asset)                                     | Reference to a custom image that has been included in the touch adaptation package.           |
| [Axis](/reference/system/touchadaptationkit/types/game-streaming-touch-axis)                                       | Definition of the mapping of touch controls to the physical analog control equivalent.        |
| [Color](/reference/system/touchadaptationkit/types/game-streaming-touch-color)                                     | Reference to a color.                                                                         |
| [Deadzone](/reference/system/touchadaptationkit/types/game-streaming-touch-deadzone)                               | Definition for the amount of player interaction that should not be registered as input.       |
| [Hexcolor](/reference/system/touchadaptationkit/types/game-streaming-touch-hexcolor)                               | String containing hexadecimal representation of RGBA color value to be referenced.            |
| [Icon](/reference/system/touchadaptationkit/types/game-streaming-touch-icon)                                       | Reference to an icon.                                                                         |
| [Joystick outline and indicator](/reference/system/touchadaptationkit/types/game-streaming-touch-joystick-outline) | The styling attributes for the outer ring of a joystick controls.                             |
| [Knob](/reference/system/touchadaptationkit/types/game-streaming-touch-knob)                                       | The styling attributes for a button like component that can be interacted with by the player. |
| [Response curve](/reference/system/touchadaptationkit/types/game-streaming-touch-responsecurve)                    | Definition of the curve range for mapping input mapped to output.                             |
| [Stroke](/reference/system/touchadaptationkit/types/game-streaming-touch-stroke)                                   | The styling attributes for the outline of the object being referenced.                        |
| [Throttle axis](/reference/system/touchadaptationkit/types/game-streaming-touch-throttle-axis)                     | The styling attributes for an axes of a throttle control.                                     |

<a id="sensor-controls" />

## Sensor Controls

Sensor controls allow mapping of physical sensors on the player's device to be mapped to a physical controller input.

| Control                                                                                                  | Description                                                                                                                              |
| :------------------------------------------------------------------------------------------------------- | :--------------------------------------------------------------------------------------------------------------------------------------- |
| [Accelerometer](/reference/system/touchadaptationkit/sensor-controls/game-streaming-touch-accelerometer) | An ***experimental*** sensor control that maps the devices accelerometer of the client device (if available) to a specified set of axes. |
| [Gyroscope](/reference/system/touchadaptationkit/sensor-controls/game-streaming-touch-gyroscope)         | A sensor control that maps the devices physical movement to a specified set of axes.                                                     |


## Related topics

- [Touch Adaptation Kit (TAK) command line tool reference](/build/core-features/common/game-streaming/tak-command-line-tool/index.md)
- [Touch Adaptation Kit (TAK) Editor for Visual Studio Code](/build/core-features/common/game-streaming/tak-editor/index.md)
- [Touch Adaptation Kit Command Line Tool (tak.exe)](/build/core-features/common/game-streaming/tak-command-line-tool/game-streaming-tak-command-line.md)
- [Packing Touch Adaptation Bundles with the TAK Editor](/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor-pack-bundles.md)
- [What is the Touch Adaptation Kit Editor?](/build/core-features/common/game-streaming/tak-editor/game-streaming-tak-editor.md)
