> For the complete documentation index, see [llms.txt](https://stage-precision.gitbook.io/grid/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://stage-precision.gitbook.io/grid/touch-designer-integration/parameter-control/overview.md).

# Overview

Send named values from Grid Studio to control visual parameters, colors,   text, and custom behavior in TouchDesigner.

## Parameter Control

Parameter Control connects named values from Grid Studio to parameters in your TouchDesigner project.

Use these values to adjust image brightness, change animation speed, enable an effect, set a color, or update displayed text.

Each value has a name and a data type. Your TouchDesigner network defines how that value is used.

### Available value types

| Type       | Example use                                               |
| ---------- | --------------------------------------------------------- |
| Integer    | Enable or disable an effect using `0` and `1`.            |
| Float      | Control brightness, speed, or another numeric parameter.  |
| Vector3    | Supply three components for a custom XYZ control.         |
| Vector4    | Supply four numeric components.                           |
| Color      | Control an RGBA color.                                    |
| String     | Update a label, title, or other text.                     |
| Point List | Provide structured point-list data for custom processing. |

Generic values are forwarded as supplied. You decide how their components and ranges map to your TouchDesigner parameters.

### Choose your workflow

| Operator           | Use it for                                                                     |
| ------------------ | ------------------------------------------------------------------------------ |
| SPNet Generic CHOP | Receive numeric values, vectors, and colors as channels for parameter control. |
| SPNet Generic DAT  | Inspect named values in a table and access text or structured data.            |

#### Numeric controls

Use the SPNet Generic CHOP when the incoming value should control a numeric parameter.

A float named `brightness`, for example, becomes a channel that you can reference or export to a parameter in your visual network.

Vectors and colors provide separate channels for their components.

#### Text and structured data

Use the SPNet Generic DAT for strings and point lists, or when you prefer to inspect values in a table.

For example, a string named `title` can provide the text displayed by a Text TOP.

### Working with names

Names identify the controls within the received data.

For example:

| Name         | Type    | Example value |
| ------------ | ------- | ------------- |
| `brightness` | Float   | `0.5`         |
| `speed`      | Float   | `1.2`         |
| `enabled`    | Integer | `1`           |
| `title`      | String  | `Welcome`     |

Use Name Filter on the receiving operator to select the values required by a particular part of your network.

### Values between updates

The Generic operators retain the latest value received for each name.

By default, values remain available until replaced. This supports controls that send only when their value changes.

An optional timeout can hide values that have not been updated within the configured duration.

### Before you start

You need:

* The SPNet plugins installed in TouchDesigner.
* Grid Studio configured to send SPNet Generic values.
* The names and types of the values you want to receive.
* Matching network settings on the sender and receiver.

The first example uses a named numeric value to control a visual parameter in TouchDesigner.
