# Variable groups

<div align="left"><figure><img src="/files/MQISDxxzwjIXBjsjsgR4" alt=""><figcaption></figcaption></figure></div>

Variable group is a group of variables. You can add them by clicking on the **Add** button in the **Layer Layout** window.

## Private variable groups

<figure><img src="/files/eiAYr5rTwnOzCti1bdPH" alt=""><figcaption></figcaption></figure>

Every Layer Variable group has an option to designate it as a **Private**.

<figure><img src="/files/EN2swcSYHzff8UoYdZGn" alt=""><figcaption></figcaption></figure>

If a Layer Variable group is Private, it will not be visible in the *Properties* window.

{% hint style="info" %}
**Good to know**: Private Layer Variable groups are useful for variables that you use in your Layout but don't need to have exposed in the Properties.
{% endhint %}

## Creating Variable groups from nodes

To facilitate a faster creation of Layer templates, we created 2 ways of creating Variable groups and Variables themselves directly from the nodes.

### Creating static Variable groups from nodes

<div align="left"><figure><img src="/files/u4mQ1cJDb3SVhVTzKuaw" alt=""><figcaption></figcaption></figure></div>

You can create a Variable group by right clicking on a header of a node and then on **Create variable group**.

<figure><img src="/files/GjaPVDnc6J4PdDhxnwLN" alt=""><figcaption></figcaption></figure>

This will create a:

1. a Variable group in the Layer variables section with the same name as the name of the node you clicked on
2. in this group, LightAct will create appropriate variables for every input pin of that node
3. and Reference nodes will be created for every newly created variable and connected to the appropriate pins of the node.

{% hint style="info" %}
**Good to know**: once created this variable group doesn't retain any connection to the node you created it from.
{% endhint %}

### Dynamic variable groups

<div align="left"><figure><img src="/files/Roz7lRYHOvLxIRqWFwwu" alt=""><figcaption></figcaption></figure></div>

There are some nodes in LightAct whose input pins can change. An example of that would be **Play Notch** node. When you change the *Notch asset* it references, the node's input pins adapt according to Notch's Exposed parameters.

If we want to always have all the input parameters of Notch exposed in Layer variables, we need to create a **Dynamic Variable Group**.

<figure><img src="/files/ORe6ivXUHB2OTQSGqItf" alt=""><figcaption></figcaption></figure>

Dynamic Variable group looks similar to a standard Variable group, except that it retains the connection between the original node it was created from.

<figure><img src="/files/uk6sHIYucTySIEORX326" alt=""><figcaption></figcaption></figure>

This means that if you change Notch asset, the variables in this group are going to adapt according to Exposed parameters of the new Notch block.


---

# 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.lightact.com/layers-and-layouts/layer-layouts/variables/variable-groups.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.
