# Quick Start

## Setup

**1)** Create a parent for the main camera

<figure><img src="/files/0rBYv2hbgc88gKZpysT1" alt="" width="402"><figcaption></figcaption></figure>

**2)** Add a **Camera ShakeFX Listener** component to the main camera

<figure><img src="/files/wgwAKp3n28Jys8UnpKVs" alt="" width="357"><figcaption></figcaption></figure>

**3)** Create a new GameObject and add the **Camera ShakeFX Source** component to it

<figure><img src="/files/KEk5jjafYwdEwsgYNK9R" alt="" width="357"><figcaption></figcaption></figure>

**4)** Click both "Create New" buttons to create the corresponding assets

<figure><img src="/files/IKKj5j5p0gQ6LdgEdtUu" alt="" width="357"><figcaption></figcaption></figure>

## Customization

**1)** Set the **Strength** to 3 and add a `1 Axis/Explosion` motion to the **Rotation** property

<figure><img src="/files/jMQqXb8OsfKOOEiDyN3Q" alt="" width="357"><figcaption></figcaption></figure>

**2)** Press the Play on the component button to preview the shake

<figure><img src="/files/bmtzCGldKboTDaREvrT8" alt="" width="357"><figcaption></figcaption></figure>

**3)** Click the `+` button to add a second shake and add a `3 Axis/Perlin` motion to it

<figure><img src="/files/MiOmh2zXyHqBPmCtfsxD" alt="" width="357"><figcaption></figcaption></figure>

You now have a pretty satisfying shake that consists of 2 motions: a stronger primary motion that swings the camera on the X axis and a secondary motion that shakes it on the XYZ axes.

Keep tuning your shake with the help of the preview button until you're satisfied.

## Scripting

Call `DoShake()` on the **Camera ShakeFX Source** component to trigger the shake at runtime.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://fx-engine.gitbook.io/shakefx/intro/quick-start.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
