/UnitySerializedDictionary

A serializable Dictionary and property drawer for the Unity Editor.

Primary LanguageC#MIT LicenseMIT

UnitySerializedDictionary

A serializable Dictionary and property drawer for the Unity Editor, modeled visually after the Odin serialized dictionary.

alt text

How It Works

It uses ISerializationCallbackReceiver to convert keys and values to serializable lists in the background, to allow for dictionary serialization in the editor. Mostly uses switch statements to identify the type and handle drawing the editor fields and serializing/ de-serializing values. It allows for dynamically changing dictionary value types at runtime, and it supports:

How To Use

For those not familiar with Editor scripting, it is important to note that the DictionaryDrawer file must be located under a folder named "Editor" in the assets folder. This file can be placed at "Assets/Editor", or "Assets/[...some path]/Editor"