# GamePad

The GamePad is a nodegraph feature that incorporates with the <mark style="color:yellow;">**`UserTrack`**</mark> node and it provides an interactive and user-controlled method for managing camera movement a three-dimensional space.&#x20;

To activate the GamePad:

<div align="left"><figure><img src="https://2634649928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRazR6THh3EAtvpLMGCP1%2Fuploads%2FQKmG5M2x4ZxmUzXeSKKz%2Fimage.png?alt=media&#x26;token=0049760a-9c55-410d-84e9-0debec1cff03" alt=""><figcaption><p>GamePad activation on <mark style="color:yellow;"><strong><code>UserTrack</code></strong></mark> node</p></figcaption></figure></div>

* Create a <mark style="color:yellow;">**`UserTrack`**</mark> node.
* Click on the GamePad Activation button on the <mark style="color:yellow;">**`UserTrack`**</mark> node, as illustrated above. &#x20;

### GamePad Button in Nodegraph

<div align="left"><figure><img src="https://2634649928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRazR6THh3EAtvpLMGCP1%2Fuploads%2FS4UiD8ifdAIsq9bWfgnb%2Fimage.png?alt=media&#x26;token=10d12d8f-b468-4805-8dd2-6276b182b1b9" alt=""><figcaption><p>GamePad Control on Nodegraph</p></figcaption></figure></div>

Once activated on the <mark style="color:yellow;">**`UserTrack`**</mark> node, a GamePad Control button appears in the right-down corner of the Nodegraph, indicating that the GamePad controls are ready for use.&#x20;

To utilize it, hover the mouse over the GamePad button to access the controls.&#x20;

### GamePad Controls&#x20;

#### Camera Movement&#x20;

Use `W`, `A`, `S`, `D`, `E`, `Q` keys to control the translation movement of the camera (forward, left, backward, right, ascend, descend). While holding the right mouse button, press abovementioned keyboard keys to navigate the camera.&#x20;

#### Camera Orientation

While holding the right mouse button, move the mouse to control the yaw, pitch, roll, and tilt of the camera.

<mark style="color:yellow;">**`UserTrack`**</mark> has the following properties:&#x20;

* **Impulse**: Controls the initial force or impact applied to the camera movement.&#x20;
* **Decay**: Governs the rate at which the camera movement slows down over time.

#### Example

<div align="left"><figure><img src="https://2634649928-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FRazR6THh3EAtvpLMGCP1%2Fuploads%2FTHiiNp76NssYXrakoxTY%2Fimage.png?alt=media&#x26;token=cfb747d2-84d2-4c66-97ac-bf61811768c2" alt=""><figcaption><p>Example Node Network for GamePad Feature</p></figcaption></figure></div>

* Connect the Track output pin of the <mark style="color:yellow;">**`UserTrack`**</mark> node to the RealityCamera Track input pin of the UE5 processor.&#x20;
* Create RealityCamera Scene Output Sink, as shown in the image above.
* Click on the GamePad icon on the <mark style="color:yellow;">**`UserTrack`**</mark> node.
* Hover over the Nodegrapgh GamePad button, right click and hold your mouse.
* Use `W`, `A`, `S`, `D`, `E`, `Q` keys to control the translation movement of the camera while moving the mouse to control the yaw, pitch, roll, and tilt.
