maxartz15 / UnitySerializedReferenceUI

The UI for Unity's SerealizedReference attribute. It allows to change the instance type of field right in editor.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UnitySerializedReferenceUI

The UI for Unity's SerealizedReference attribute. It allows to change the instance type of field right in editor.

Project is provided under Mit license which you can find in inner main folder ("SerializedReferenceUI")

Known limitations.

  • Custom property drawer has no effect. Becouse property is drawn from custom attribute drawer custom property drawer is not applied (unity default behaviour).
  • Can not serialized types derived from UnityEngine.Object (monbehaviour, scriptableObject) (unity's limitation).
  • Can not create instance of class that does not have empty constructor(only have private for example).

Known Issues of serialized reference:

  • Renaming used type can produce data loss and throws unknown managed type exception. This is unity's bug.
  • SerializeReference itself is not working properly with Prefab Instances;

Future plans: Possibly

  • copy / paste.
  • menu with searchbar.

Installation

Use the + inside the Package Manager window and add this URL:

https://github.com/TextusGames/UnitySerializedReferenceUI.git

image

image

Or add id to your packages.json file manually (located inside the project's Packages folder).

"com.textus-games.serialized-reference-ui": "https://github.com/TextusGames/UnitySerializedReferenceUI.git"

Example

Woah UI woah woah!!!

[Serializable]
public class Slot
{
    [SerializeReference, SerializeReferenceButton]
    public Item item;
}

[Serializable]
public class Item {}
public class Metal : Item {}
public class Wood : Item {}

For more examples, this package contains two Samples that can be imported into your project.

About

The UI for Unity's SerealizedReference attribute. It allows to change the instance type of field right in editor.

License:MIT License


Languages

Language:C# 100.0%