A bunch of Unity basic missing features
A bunch of basic missing features.
There are many basic features that are missing natively. This package provides many tools to fill these holes and improve productivity. It contains programming utilitary attributes that limits the need of making custom editors, or custom windows and ready-to-use components and events that limits the need of scripting, pushing further the “visual scripting” approach.
If you like my work, think about supporting me ! https://donorbox.org/support-kevin-castejon
From Unity Asset Store: Browse to https://assetstore.unity.com/packages/tools/utilities/missing-features-283473 and add the asset to your account. You can then use the “Open in Unity” button in your browser or find the package on the Package Manager window.
From Github: Use the “Add package from git URL…“ button of the PackageManager window and type : https://github.com/kevincastejon/Unity-Missing-Features.git#upm
**Missing Events**
MouseEvents
Offers UnityEvent fields for Unity’s mouse callback methods.
LifeCycleEvents
Offers UnityEvent fields for Unity’s lifecycle callback methods.
VisibleEvents
Offers UnityEvent fields for Unity’s visible callback methods.
PhysicsEvents
Offers UnityEvent fields for Unity’s physics callback methods and sleep state changes.
TimerEvents
Fires UnityEvents based on time.
Events Data Converters
Middleware components to plug between UnityEvent and methods when the type does not match but can be converted.
**Missing Windows**
TimeScale Window
Exposes the main timescale settings.
PhysicsWindow
Exposes the main physics settings.
Scenes Explorer Window
Exposes the scenes assets.
Quick Assets Window
Exposes an custom assets list.
Transform Randomizer Window
Allows position, rotation and scale randomizing.
Tile Duplicator Window
Duplicates a GameObject in order to make a grid.
**Missing Attributes**
LabelPlus
Custom Inspector property label that allows using an icon, a custom label text and a custom label color.
HeaderPlus
Custom Inspector property header that allows using an icon, a custom header label text and a custom header label color.
ReadOnlyProp
Prevents a property from being edited on the Inspector.
ReadOnlyOnPlay
Prevents a property from being edited on the Inspector in PlayMode. The behaviour can be inverted so the property is editable only in PlayMode.
ReadOnlyOnPrefab
Prevents a property from being edited on the Inspector in PrefabMode. The behaviour can be inverted so the property is editable only in PrefabMode.
HideOnPlay
Hides the property in PlayMode. The behaviour can be inverted with the ‘invert’ parameter so the property is visible only in PlayMode.
HideOnPrefab
Hides the property in PrefabMode. The behaviour can be inverted with the ‘invert’ parameter so the property is visible only in PrefabMode.
ShowPropIf
Shows or hides a property on the inspector based on another serialized bool property value.
ShowPropConditional
Shows or hides a property based on a bool method.
Tag
Displays a dropdown list of available Tags (must be used with a ‘string’ typed property).
Layer
Displays a dropdown list of available Layers (must be used with a ‘int’ typed property).
It offers a single layer selection instead of the multiple LayerMask selection.
Scene
Displays a dropdown list of available build settings Scenes (must be used with a ‘string’ typed property).
**Missing Components**
Instantiator
A component that can instantiate objects.
Destroyer
A component that can destroy objects.
Debug Logger
A component with public methods that you can plug to UnityEvents callback to debug events firing
Color Setters
Simple color setter components meant to be plugged to UnityEvent for setting color without scripting. Works with Renderer and SpriteRenderer.
Transform Teleporter
Simple Transform teleporter component meant to be plugged to UnityEvent for setting position, rotation and/or scale.
Button Clicker
A component that can click on a button.
UnityEvent Component
A simple component to hold and fire a UnityEvent as a component.
Parent Setter
A component for setting the parent of a Transform
*Better Toggle Group
A component inspired by the native ToggleGroup component, but allowing events firing at group level.
**Missing Operations**
Custom Editor Generator
A contextual menu that generates a custom Editor script skeleton file for your Monobehaviour and ScriptableObject classes.
Custom PropertyDrawer Generator
A contextual menu that generates a custom PropertyDrawer script skeleton file for your serializable classes.
Reset Transform Preserving Children
A contextual menu that resets the Transform of a GameObject without modyfing its children.
Grid Snapper
A contextual menu that snaps the positions of GameObjects on the grid.