# Show Effect: States

States provides a convenient way to initialize a show effect with a certain set of parameters. The show effect state system leverages the animation system. Any fields that can be animated can be saved as a state. It also provides a way to have multiple, easily-swappable, static configurations of a single set of scene objects without needing to create sequences.

<figure><img src="https://1654204364-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FakGR2bVCZLTNoe2hkqeR%2Fuploads%2FWGexC3jvqCatR7fcF5p3%2FShow_Effect_State_Panel.png?alt=media&#x26;token=58281c1c-12e8-41ca-8064-bccda4494380" alt="" width="200"><figcaption></figcaption></figure>

## Recording a State

To create a new save state, make sure that the show effect is in *Edit Mode*. Under the *Effect States* dropdown, left-click *New State* to create a new, unpopulated state cache. Set the values that you wish to save to the state (Note: the only parameters that can be saved are those that can be animated). Left-clicking on *Record State* will save the current values to the selected state. The state can be renamed by modifying the *Name* field.

## Restoring a State

There are two ways of syncing a show effect and its contents to a state. Any recorded state can be loaded by selecting it from the inspector dropdown and then left-clicking the *Load State* button. Alternatively, Show Effect State Events can be triggered from the timeline, which allows a state to be loaded when the event is started.

<figure><img src="https://1654204364-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FakGR2bVCZLTNoe2hkqeR%2Fuploads%2FBksiz1Y9vcrFzp6k63XK%2FScreenshot%202024-08-18%20000403.png?alt=media&#x26;token=40130c96-bd6e-4d0d-b763-fad5e41f43d1" alt=""><figcaption><p>Two states being loaded back-to-back on the timeline</p></figcaption></figure>


---

# 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://docs.verge.aero/drone-show-software/verge-design-studio/show-effects/show-effect-states.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.
