Coder Social home page Coder Social logo

clouddevstudios / unity-editor-toolbox Goto Github PK

View Code? Open in Web Editor NEW

This project forked from arimger/unity-editor-toolbox

1.0 1.0 0.0 2.35 MB

Tools, custom attributes, drawers and extensions for Unity Editor.

License: MIT License

C# 99.57% ShaderLab 0.43%

unity-editor-toolbox's Introduction

Unity Editor Toolbox

Introduction

TODO

System Requirements

Unity 2018.x or newer

Instalation

Copy and paste Editor Toolbox directory into your project (basically into Asset directory or somewhere deeper).

Table Of Contents

Attributes

Standard Drawers

Drawers based on build-in classes PropertyDrawer/DecoratorDrawer and associated PropertyAttribute.

 

Editor Toolbox/Scripts/Attributes/
Editor Toolbox/Editor/Drawers/

 

HelpAttribute

inspector

TagSelectorAttribute

inspector

SeparatorAttribute

inspector

ProgressBarAttribute

inspector inspector

NewLabelAttribute

inspector

MinMaxSliderAttribute

inspector

IndentAttribute

inspector

ConditionalHideAttribute

inspector inspector

ConditionalDisableAttribute

inspector inspector

AssetPreviewAttribute

inspector

HideLabelAttribute

inspector

SuffixAttribute

inspector

TypeConstraintAttribute

inspector

ReadOnlyFieldAttribute

inspector

BoxedHeaderAttribute

inspector

BoxedToggleAttribute

inspector

EnumFlagAttribute

[System.Flags]
public enum FlagExample
{
    Nothing = 0,
    Flag1 = 1,
    Flag2 = 2,
    Flag3 = 4,
    Everything = ~0
}

[EnumFlag]
public FlagExample enumFlag = FlagExample.Flag1 | FlagExample.Flag2;

inspector

NotNullAttribute

inspector inspector

RandomAttribute

inspector

DirectoryAttribute

inspector inspector

BroadcastButtonAttribute

inspector

InstanceButtonAttribute

inspector

SceneNameAttribute

inspector inspector

Toolbox Drawers

Drawers based on classes ToolboxDrawer and associated ToolboxAttribute.
For proper work they need at least one settings file located in your project.
Predefined one - Editor Toolbox/EditorSettings.asset.

 

Editor Toolbox/Scripts/Attributes/ToolboxAttributes
Editor Toolbox/Editor/Drawers/ToolboxDrawers

 

inspector

AreaAttributes

Display/create something before and after property in desired order(using Order property).
In fact ToolboxAreaDrawers are like extended version of DecoratorDrawers.

[BeginGroup("Group1")]
public int var1;
public int var2;
public int var3;
[EndGroup]
public int var4;
[BeginIndent]
public int var1;
public int var2;
public int var3;
[EndIndent]
public int var4;
[SpaceArea(spaceBefore = 10.0f, spaceAfter = 5.0f)]
public int var1;

ReorderableListAttribute

[ReorderableList(ListStyle.Round)]
public List<string> standardStyleList;

inspector

InLineEditorAttribute

[InLineEditor]
public Transform var1;

inspector

HideAttribute

Hides any property.

HideIfAttribute

Same like standard PropertyDrawer for ConditionalHideAttribute but works with Enum types and arrays/lists.
Can be used additionally to any PropertyDrawer or ToolboxPropertyDrawer.

DisableAttribute

Disables any property.
Can be used additionally to any PropertyDrawer or ToolboxPropertyDrawer.

DisableIfAttribute

Same like standard PropertyDrawer for ConditionalDisableAttribute but works with Enum types and arrays/lists.
Can be used additionally to any PropertyDrawer or ToolboxPropertyDrawer.

[Disable, ReorderableList]
public int[] vars1 = new [] { 1, 2, 3, 4 };

inspector

Reorderable List

Editor Toolbox/Editor/Internal/ReorderableList.cs

Custom implementation of standard ReorderableList(UnityEditorInternal). Useable as attribute in inspector fields or single object in custom editors.

var list = new ReorderableList(SerializedProperty property, string elementLabel, bool draggable, bool hasHeader, bool fixedSize);
[ReorderableList(ListStyle.Lined, "Item")]
public List<int> linedStyleList;

inspector

[ReorderableList(ListStyle.Round)]
public List<string> standardStyleList;

inspector

[ReorderableList(ListStyle.Boxed, fixedSize: true)]
public GameObject[] boxedStyleList = new GameObject[4];

inspector

Tools and Editors

Terrain Editor

Editor Toolbox/Editor/Tools/Editors/TerrainToolEditor.cs

inspector inspector

Hierarchy Editor

Editor Toolbox/Editor/ToolboxEditorHierarchy.cs

inspector

Construction Editor

TODO


Field of View Generator

Editor Toolbox/Editor/Tools/Wizards/ViewGeneratorWizard.cs

inspector

Grid Generator

Editor Toolbox/Editor/Tools/Wizards/GridGeneratorWizard.cs

inspector

unity-editor-toolbox's People

Contributors

arimger avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.