Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/deadcows/mybox

MyBox is a set of attributes, tools and extensions for Unity
https://github.com/deadcows/mybox

csharp game-development tools unity unity-editor unity3d unity3d-editor

Last synced: 30 days ago
JSON representation

MyBox is a set of attributes, tools and extensions for Unity

Awesome Lists containing this project

README

        

# MyBox

[![openupm](https://img.shields.io/npm/v/com.domybest.mybox?label=openupm&registry_uri=https://package.openupm.com)](https://openupm.com/packages/com.domybest.mybox/)
[![License: MIT](https://img.shields.io/badge/License-MIT-brightgreen.svg)](https://github.com/Deadcows/MyBox/blob/master/LICENSE.md)


MyBox is a set of tools, features and extensions for Unity.

It is MyBox. Now it's yours too :raised_hands:

## [Installation](https://github.com/Deadcows/MyBox/wiki/Installation)

Tons of images in docs below :point_down:

## [Attributes](https://github.com/Deadcows/MyBox/wiki/Attributes)
**[AutoProperty](https://github.com/Deadcows/MyBox/wiki/Attributes#autoproperty)** — Assign fields automatically

**[ButtonMethod](https://github.com/Deadcows/MyBox/wiki/Attributes#buttonmethod)** — Display button in inspector

**[CharactersRange](https://github.com/Deadcows/MyBox/wiki/Attributes#charactersrange)** — Filter string field by the set of characters

**[ConditionalField](https://github.com/Deadcows/MyBox/wiki/Attributes#conditionalfield)** — Conditionally display property in inspector, based on some other property value

**[ConstantsSelection](https://github.com/Deadcows/MyBox/wiki/Attributes#constantsselection)** — Popup of const, readonly or static fields and properties

**[DefinedValues](https://github.com/Deadcows/MyBox/wiki/Attributes#definedvalues)** — Display Dropdown with predefined values

**[DisplayInspector](https://github.com/Deadcows/MyBox/wiki/Attributes#displayinspector)** — Display one inspector inside of another

**[Foldout](https://github.com/Deadcows/MyBox/wiki/Attributes#foldout)** — Group your fields in inspector

**[InitializationField](https://github.com/Deadcows/MyBox/wiki/Attributes#initializationfield)** — Field that is not editable in playmode

**[Tag, Layer, SpriteLayer](https://github.com/Deadcows/MyBox/wiki/Attributes#tag-layer-spritelayer)** — Dropdown with Tags, Layers or SpriteLayers

**[MinMaxRange, RangedFloat and RangedInt](https://github.com/Deadcows/MyBox/wiki/Attributes#minmaxrange-rangedfloat-and-rangedint)** — Ranged sliders

**[MaxValue, MinValue and PositiveValueOnly](https://github.com/Deadcows/MyBox/wiki/Attributes#maxvalue-minvalue-and-positivevalueonly)** — Validation for numbers and vectors

**[MustBeAssigned](https://github.com/Deadcows/MyBox/wiki/Attributes#mustbeassigned)** — Automatically checks if field is assigned

**[OverrideLabel](https://github.com/Deadcows/MyBox/wiki/Attributes#overridelabel)** — Change visible in Inspector field name

**[ReadOnly](https://github.com/Deadcows/MyBox/wiki/Attributes#readonly)** — Draw property with disabled GUI

**[RegexString](https://github.com/Deadcows/MyBox/wiki/Attributes#regexstring)** — Filter string field by the Regular Expression

**[RequireTag and RequireLayer](https://github.com/Deadcows/MyBox/wiki/Attributes#requiretag-and-requirelayer)** — Automatically set Tag and Layer

**[Scene](https://github.com/Deadcows/MyBox/wiki/Attributes#scene)** — Friendly way to keep Scene name as a string. See also [SceneReference type](https://github.com/Deadcows/MyBox/wiki/Types#scenereference)

**[SearchableEnum](https://github.com/Deadcows/MyBox/wiki/Attributes#searchableenum)** — Nice UI for enums with lots of elements

**[Separator](https://github.com/Deadcows/MyBox/wiki/Attributes#separator)** — Draw separator with or without title

--------

## [Tools and Features](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features)
**[AssetPressetPreprocessor](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features#assetpressetpreprocessor)** — Conditionally apply Presets to your assets on import

**[TimeTest](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features#timetest)** — Measure performance with simple api

**[IPrepare](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features#iprepare)** — Easy way to replace caching, calculations and asserts from playmode

**[Features](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features#cleanup-empty-directories-and-autosave-features-and-some-hotkeys)** — Cleanup Empty Directories, AutoSave feature, Hotkeys

**[UnityEvent Inspector](https://github.com/Deadcows/MyBox/wiki/Tools-and-Features#reworked-unityevent-inspector)** — Allows you to fold and reorder event subscribers

--------

## [Types](https://github.com/Deadcows/MyBox/wiki/Types)
**[ActivateOnStart Component](https://github.com/Deadcows/MyBox/wiki/Types#activestateonstart-component)** — Set state of specific GO on game start

**[AnimationStateReference](https://github.com/Deadcows/MyBox/wiki/Types#animationstatereference)** — Specify AnimationClip on object with Animator

**[AssetPath and AssetFolderPath](https://github.com/Deadcows/MyBox/wiki/Types#assetpath-and-assetfolderpath)** — Inspector button to browse for folder or asset under Assets folder

**[Billboard Component](https://github.com/Deadcows/MyBox/wiki/Types#billboard-component)** — Force object to always face camera

**[ColliderGizmo Component](https://github.com/Deadcows/MyBox/wiki/Types#collidergizmo-component)** — Highlight colliders and triggers in SceneView

**[ColliderToMesh Component](https://github.com/Deadcows/MyBox/wiki/Types#collidertomesh)** — Generate Mesh from PolygonCollider2D data on the fly

**[Commentary Component](https://github.com/Deadcows/MyBox/wiki/Types#commentary-component)** — Add text commentary to your GameObjects

**[CoroutineGroup](https://github.com/Deadcows/MyBox/wiki/Types#coroutine-group)** — Wraps up bunch of coroutines to know when they all is completed

**[FPSCounter Component](https://github.com/Deadcows/MyBox/wiki/Types#fpscounter)** — Display FPS counter on Playmode

**[Guid Component](https://github.com/Deadcows/MyBox/wiki/Types#guidcomponent)** — Generate unique and persistent IDs

**[MinMaxInt and MinMaxFloat](https://github.com/Deadcows/MyBox/wiki/Types#minmaxint-and-minmaxfloat)** — Asserts that Max => Min with handy inspector drawer

**[MyCursor](https://github.com/Deadcows/MyBox/wiki/Types#mycursor)** — Nice way to set cursor with hotspot

**[MyDictionary](https://github.com/Deadcows/MyBox/wiki/Types#mydictionary)** — Serializable Dictionary

**[Optional and OptionalMinMax](https://github.com/Deadcows/MyBox/wiki/Types#optional-and-optionalminmax)** — Optionally assignable values

**[Reorderable Collections](https://github.com/Deadcows/MyBox/wiki/Types#reorderable-collections)** — Reorder your collections in inspector

**[SceneReference Component](https://github.com/Deadcows/MyBox/wiki/Types#scenereference)** — Reference scene with Scene asset in inspector

**[Singleton](https://github.com/Deadcows/MyBox/wiki/Types#singleton)** — Cache and access instance of MonoBehaviour

**[TransformData](https://github.com/Deadcows/MyBox/wiki/Types#transformdata)** — Type to store and apply position, rotation and scale

**[UIFollow Component](https://github.com/Deadcows/MyBox/wiki/Types#uifollow-component)** — RectTransform will follow specified Transform

**[UIImageBasedButton Component](https://github.com/Deadcows/MyBox/wiki/Types#uiimagebasedbutton-component)** — Used to create toggle button behaviour

**[UIRelativePosition Component](https://github.com/Deadcows/MyBox/wiki/Types#uirelativeposition-component)** — Position one RectTransform relatively to another, regardless of hierarchy

**[UISizeBy Component](https://github.com/Deadcows/MyBox/wiki/Types#uisizeby-component)** — Size one RectTransform relatively to another

--------

//TODO: Extensions, Unfinished tools