# UdonToolkit v0.x

![](https://466638300-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-MQWbrSe37gNXUDtQ8DJ%2F-MQWcAQCV7AAumSWBryD%2F-MQXLbgwmR6AspZPJYrD%2F68747470733a2f2f63646e2e7672636861742e73682f75742f70726f6d6f2f6769746875625f62616e6e65722e706e67.png?alt=media\&token=00e8b2f1-19d8-4cf3-b25a-d20e2a2072f0)

Udon Toolkit is a project aimed at simplifying usage of Udon by providing a set of easy to use purpose-built behaviours, from generic triggers and actions, to more complete systems like Key Items, Cabinet Drawers, etc.

This also includes a system of attributes that allow you to utilize the same UI elements when building your own behaviours!

If you find that something is broken or works not as you would expect - please ping me in the [discord server](https://discord.com/invite/fR869XP), or better - create a [new issue](https://github.com/orels1/UdonToolkit/issues/new).

## Requirements

* [VRC SDK3 with Udon](https://vrchat.com/home/download)
* [Udon Sharp Compiler](https://github.com/Merlin-san/UdonSharp) (v0.18+)
* \[Optional] Post Processing from Unity Package Manager **(required for the Camera System)**

## Installation

* Grab the latest package [from releases](https://github.com/orels1/UdonToolkit/releases)
* Import it into the project
  * If you're upgrading from version prior to 0.4.0 - you'll need to close and open the scene again after import
* Open your `Project Settings` -> `UdonSharp` and in the `Default Behaviour Editor` select `UdonToolkit Editor`

{% hint style="warning" %}
It is required to use the default path when importing as for now asset paths are hardcoded
{% endhint %}

## How to use

* Browse the list of available behaviours in [the behaviours section](https://ut.orels.sh/v0.x/behaviours/overview)
* Select a Game Object you want to use (or make a new one)
* Click `Add Component` and type the name of a Behaviour
* A new component with all the corresponding UI and parameters should appear
* If it is your first time using Udon Toolkit, you might want to click "Compile All Behaviours"&#x20;

{% hint style="info" %}
Tip: You can click on the `?` icon in the Behaviour header to open the docs for that particular script
{% endhint %}

## Known Issues

* Prefabs are fundamentally broken in Udon as of August 2020. Toolkit will show a warning if you will try to use a prefab, it is **highly recommended** to unpack the prefab before editing anything, as values can just reset to whatever they were before when entering play mode

{% hint style="success" %}
An alternative to that might be to utilize [Unity Presets](https://docs.unity3d.com/2018.4/Documentation/Manual/Presets.html) which allow you to save the values of the current behaviour into a file
{% endhint %}

## Advanced

### UI System

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 user-friendly UI. You can [read more here](https://ut.orels.sh/v0.x/attributes/attributes-overview).

## Thanks ❤

* To VRC Team for making Udon which actually made me learn C# and Unity Editor Tools development
* To [Merlin ](https://github.com/MerlinVR)for making [Udon Sharp](https://github.com/Merlin-san/UdonSharp) without which none of this would've been possible
