# UT Controllers

UdonToolkit is not just a set of prebuilt behaviours, but also a UI system built using Unity's Custom Property Drawers and Attributes that allows you to quickly create a user-friendly UI.

{% hint style="danger" %}
As of UdonToolkit v0.4.0 (with UdonSharp v0.18.0+) the Controllers are **DEPRECATED** you can now use the Attributes directly in UdonSharp code!
{% endhint %}

#### Check the [Migration to v0.4.0 docs](/extras/migration-to-v0.4.0.md#migration-guide)

If you're not familiar with C# Attributes, I highly recommend [taking a look at this](https://docs.unity3d.com/Manual/Attributes.html).

But the tl;dr looks like this:

* Look through the list of available Attributes in the Sidebar
* Find something that seems interesting to you
* Add `using UdonToolkit` to the top of your U# behaviour code
* Add it to your field alongside a `[UTEditor]` attribute that should always be last in the list
* Enjoy the perks of UdonToolkit UI system!

[Full list of attributes is available here](https://github.com/orels1/UdonToolkit/wiki/Attributes)


---

# 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://ut.orels.sh/extras/ut-controllers.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.
