HTTPS SSH

Project has moved

The project has moved to new GIT repo to allow for easier access to the source and docs.

New Project home is now here:

https://bitbucket.org/UnityUIExtensions/unity-ui-extensions

The downloads will remain here but all future source changes will be on the new site. Please bear with us in this transition.

README

This is an extension project for the new Unity UI system which can be found at: Unity UI Source


Supporting the UI Extensions project

If you wish to support the Unity UI Extensions project itself, then you can using the PayPal link below. All funds go to support the project, no matter the amount.

Donations in code are also extremely welcome :D

(PayPal account not required and you can remain anonymous if you wish)

>> Donate <<


Intro

For more info, here's a little introduction video for the project:

View Intro Video

You can follow the UI Extensions team for updates and news on:

Twitter / Facebook / YouTube


What is this repository for?

In this repository is a collection of extension scripts to enhance your Unity UI experience. These scripts have been gathered from many sources and combined and improved over time.

The majority of the scripts came from the Scripts thread on the Unity UI forum here

You can either download / fork this project to access the scripts, or you can also download these pre-compiled Unity Assets, chock full of goodness for each release:

Download

The asset has been full tested on all current versions of Unity 5 (for versions prior to Unity 5.3, please see the archive)

To view previous releases, visit the release archive


Getting Started

To get started with the project, here's a little guide:

View Getting Started Video


Updates:

Update 1.2

View 1.2 update Video

New / updated features

  • Major updates to the Horizontal and Vertical Scroll Snap controls
  • Replacement HSV/Color picker control (and new Box Slider control)
  • Fixes / updates to the TextPic control
  • Updates to SoftAlphaUI script - improved Text / worldspace support
  • Updates to Extensions Toggle - Adds ID and event to publish ID on change
  • New Gadient control (gradient 2)
  • New UI ScrollRect Occlusion utility
  • New UI Tween Scale utility
  • New UI Infinite ScrollRect
  • New Table Layout Group
  • New Non Drawing Graphic Control

Fixes

  • H&V Scroll Snap indexing issues
  • H&V Scroll Snap performance updates
  • H&V Scroll Snap Long swipe behavior updated
  • H&V Scroll Snap support for Rect Resizing
  • TextPic Set set before draw issues
  • HSV picker replaced with more generic color picker

Known issues

  • The Image_Extended control has been removed due to Unity upgrade issues. Will return in a future update.

Upgrade Notes

Although not specifically required, it is recommended to remove the old UI Extensions folder before importing the new asset The HSS picker especially had a lot of file changes in this update.

Note In Unity 5.5 the particle system was overhauled and several methods were marked for removal. However, the UI Particle System script currently still uses them Either ignore these errors or remove the UIParticleSystem script in the "Unity UI Extensions / Scripts / Effects" folder


Release History

For the full release history, follow the below link to the full release notes page.

Release Notes


Controls and extensions listed in this project:

There are almost 70 extension controls / effect and other utilities in the project which are listed on the following page:

UI Extensions controls list

Controls
Accordion ColorPicker SelectionBox UIButton UIFlippable
ComboBox AutoCompleteComboBox DropDownList BoundToolTip UIWindowBase
UI_Knob TextPic InputFocus Box Slider
Primitives
UILineRenderer UILineTextureRenderer UICircle DiamondGraph UICornerCut
UIPolygon
Layouts
Horizontal Scroll Snap Vertical Scroll Snap Flow Layout Group Radial Layout Tile Size Fitter
Scroll Snap (alt implementation) Reorderable List UI Vertical Scroller Curved Layout Table Layout
Effects
Best Fit Outline Curved Text Gradient Gradient2 Letter Spacing
NicerOutline RaycastMask UIFlippable UIImageCrop SoftAlphaMask
CylinderText UIParticleSystem
VR Components
VRCursor VRInputModule
Input Modules
AimerInputModule GamePadInputModule
Additional Components
ReturnKeyTrigger TabNavigation uGUITools ScrollRectTweener ScrollRectLinker
ScrollRectEx UI_InfiniteScroll UI_ScrollRectOcclusion UIScrollToSelection UISelectableExtension
switchToRectTransform ScrollConflictManager CLFZ2 (Encryption) Serialization DragCorrector
PPIViewer UI_TweenScale UI_InfiniteScroll UI_ScrollRectOcclusion

More to come


How do I get set up?

Either clone / download this repository to your machine and then copy the scripts in, or use the pre-packaged .UnityPackage for your version of Unity and import it as a custom package in to your project.

Contribution guidelines

Got a script you want added? Then just fork the bitbucket repository and submit a PR. All contributions accepted (including fixes) Just ensure The header of the script matches the standard used in all scripts The script uses the Unity.UI.Extensions namespace so they do not affect any other developments * (optional) Add Component and Editor options where possible (editor options are in the Editor\UIExtensionsMenuOptions.cs file)

License

All scripts conform to the BSD license and are free to use / distribute. See the LICENSE file for more information

Like what you see?

All these scripts were put together for my latest book Unity3D UI Essentials Check out the page on my blog for more details and learn all about the inner workings of the new Unity UI System.

The downloads

As this repo was created to support my new Unity UI Title "Unity 3D UI Essentials", in the downloads section you will find two custom assets (SpaceShip-DemoScene-Start.unitypackage and RollABallSample-Start.unitypackage). These are just here as starter scenes for doing UI tasks in the book.

I will add more sample scenes for the UI examples in this repository and detail them above over time.

Previous Releases

Note To retain 5.2 compatibility in the 5.3 package, you will see two warnings related to: `UnityEngine.UI.InputField.onValueChange' is obsolete. This has no effect on the package working in 5.4 plus and is only there to maintain backwards compatibility. We will look to update/remove this in a future release, likely after 5.4.
If you have any concerns, feel free to update your code in your project to add the missing "d". Unity have ensured it still works as they have mapped the API change for now.