Go to file
Simon (darkside) Jackson a7a17afcc5 Unity 2018 patchfix 2020-10-31 15:09:41 +00:00
Documentation~ Docs updated for release 2020-10-31 13:22:02 +00:00
Editor Updated Accordion to support both Vertical as well as Horizontal layout 2020-08-30 16:09:54 +01:00
Examples~@1dd5fcbc30 Update examples checkout following 2018 testing 2020-10-22 00:12:06 +01:00
Runtime Unity 2018 patchfix 2020-10-31 15:09:41 +00:00
.gitignore Clean-up post the separation of Examples to a new branch 2019-11-15 16:28:37 +00:00
.gitmodules Updated submodules to hide Examples folder 2020-09-24 22:32:19 +01:00
CHANGELOG.md Docs updated for release 2020-10-31 13:22:02 +00:00
CHANGELOG.md.meta Updated layout to comply with additional packaging guidelines 2020-07-15 20:39:55 +01:00
Editor.meta Project tidy up 2016-07-08 11:45:58 +01:00
LICENSE.md Docs updated for release 2020-10-31 13:22:02 +00:00
LICENSE.md.meta Updated layout to comply with additional packaging guidelines 2020-07-15 20:39:55 +01:00
README.md Unity 2018 patchfix 2020-10-31 15:09:41 +00:00
README.md.meta Clean-up post the separation of Examples to a new branch 2019-11-15 16:28:37 +00:00
Runtime.meta Updating package to the latest Unity guidelines for Unity packages 2020-06-30 13:58:38 +01:00
package.json Updated submodules to hide Examples folder 2020-09-24 22:32:19 +01:00
package.json.meta Slight reorg and addition of the following components: 2015-09-20 00:24:17 +01:00

README.md

Unity UI Extensions README

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

Check out the control demos on our Tumblr page

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

Chat live with the Unity UI Extensions community on Gitter here: UI Extensions Live Chat


What is this repository for?

In this repository is a collection of extension scripts / effects and controls to enhance your Unity UI experience. These scripts have been gathered from many sources, 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 - 2019.5 (aka 2.3)

We have expanded where you can download the UnityPackage asset and widened the options to contribute to the project.

I will still stress however, contribution is optional. The assets / code will always remain FREE

Download from Itch.IO Download from Itch.IO Download from Itch.IO
Grab from Itchio Obtain via Union Assets Support through Patreon

Still available to download on the BitBucket site if you prefer

To view previous releases, visit the release archive


Supporting the UI Extensions project

If you wish to further support the Unity UI Extensions project itself, then you can either subsidise your downloads above, or using the links below.

All funds go to support the project, no matter the amount. Donations in code are also extremely welcome

Donate via PayPal Buy us a Coffee

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


Getting Started

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

View Getting Started Video


Updates:

Update 2019.5 - 2.3 - Accelerated Deployment

Since the move to UPM, the team have been able to react quicker and push out fixes a lot easier, without affecting previous installation (whilst still adhering to Unity's backwards compatibility pattern). So it is with great news we announce this new release, faster that ever :D (and thanks to UPM, easier to upgrade than ever). Be sure to also check out the "Examples" option in the Package Manager window to import the samples to your project.

Be sure to logon to the new Gitter Chat site for the UI Extensions project, if you have any questions, queries or suggestions

Much easier that posting a question / issue on YouTube, Twitter or Facebook :D

UIExtensions Gitter Chanel

New / updated features

  • Add squircle primitive
  • Adding new magnetic scroll control
  • Added a static library to collate shaders on first use.
  • Finalized new InputManagerHelper, which translates input based on the operating input system, new or old Updated CardStack2D to have defined keyboard input or specific gamepad input over the older axisname for new input system.
  • Examples now included with UPM delivery and available as a button on the UPM package manager window
  • Updated DropDown and Autocomplete controls based on feedback in #204
  • Updated Accordion to support both Vertical as well as Horizontal layout
  • Updated ComboBox controls to improve better programmatic controls
  • Updates to the Infinite scroll to support content of various sizes
  • Updated UI Knob control - enabled dragging outside the target area, added example scene
  • Minor update to MagneticInfinite Scroll
  • Refactored and extended the ContentScrollSnap control
  • Added protection against errors and empty scrollrect content
  • Added new SetNewItems function to add children programmatically to the control and reset accordingly
  • Patch supplied by a contributor to improve the texture sheet use with the UIParticlesystem
  • Added "SetKnobValue" function which allows the setting of Value and loops
  • Added the programmatic capability to change the parent scroll rect on the ScrollConflictManager at runtime.

Examples / Examples / Examples

Examples now have their own package, this simplifies their use and deployment. Especially in 2019 with the UPM deployment.

  • New UI Knob examples
  • New Magnetic Scroll Example
  • Updated ComboBox examples for programmatic testing

Fixes

  • Fix to add a "RequireComponent" to Primitives as Unity 2020 does not add them by default
  • Remove old Examples submodule
  • Updated submodules to hide Examples folder Additionally, updated Package manifest to allow importing of examples direct from UPM package.
  • Fixed hard swipe to ensure it only ever moves one page, no matter how far you swipe.
  • Fixed a conflict when using the ScrollConflictManager in child content of a HSS or VSS
  • Fix for UI Particle system looping
  • Fixed public GoToScreen call to only raise events internally (not multiple)
  • Final roll-up and fix. Resolved race condition for associated pagination controls.
  • Fixed issue with page events not being raised when inertia was disabled (velocity was always zero)
  • When cloned, reorderable list was creating a second List Content component that was not initialized. Refactored to ensure only one list content was present and is initialized correctly
  • Reorderable list items marked as transferable, remain transferable after being dropped
  • Patch to resolve issues without the new Input System installed
  • Refined magnetic scroll and dependencies while documenting Updated example
  • Patch Tooltip

Known issues

No new issues in this release, but check the issues list for things we are currently working on:

Upgrade Notes

Due to the restructure of the package to meet Unity's new package guidelines, we recommend Deleting the current Unity UI Extensions folder prior to importing the new package.

For Unity 2019 users using the new UPM deployment, be sure to delete the existing folder in your assets folder before adding the new package to avoid conflict.


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:

Check out the control demos on our Tumblr page

UI Line Renderer UI Knob ScrollSnap
UI Line Renderer UI Knob Scroll Snap

UI Extensions controls list

Controls
Accordion ColorPicker Selection Box UI Flippable
AutoComplete ComboBox DropDown List BoundToolTip UIWindowBase
TextPic Input Focus Box Slider Cooldown Button
Stepper Range Slider Radial Slider MultiTouch Scroll Rect
Primitives
UILineRenderer UILineTextureRenderer UICircle DiamondGraph
UIPolygon
Layouts
Horizontal Scroll Snap Vertical Scroll Snap Flow Layout Group Radial Layout
Scroll Snap (alt implementation) Reorderable List UI Vertical Scroller Curved Layout
FancyScrollView Card UI Scroll Position Controller
Effects
Best Fit Outline Curved Text Gradient Gradient2
NicerOutline RaycastMask UIFlippable UIImageCrop
CylinderText UIParticleSystem CurlyUI Shine Effect
Additional Components
ReturnKeyTrigger TabNavigation uGUITools ScrollRectTweener
ScrollRectEx UI_InfiniteScroll UI_ScrollRectOcclusion UIScrollToSelection
switchToRectTransform ScrollConflictManager CLFZ2 (Encryption) DragCorrector
UI_TweenScale UI_MagneticInfiniteScroll UI_ScrollRectOcclusion NonDrawingGraphic
UILineConnector UIHighlightable Menu Manager Pagination Manager

More to come


How do I get set up?

As of Unity 2019, there are now two paths for getting access to the Unity UI Extensions project:

  • Unity 2019 or higher The recommended way to add the Unity UI Extensions project to your solution is to use the Unity package Manager. Simply use the Unity Package Manager to reference the project and install it.

Alternatively, you can also use the pre-compiled Unity packages if you wish, however, UPM offers full versioning support to allow you to switch versions as you wish.

  • Unity 2018 or lower The pre-compiled Unity assets are the only solution for Unity 2018 or earlier due to the changes in the Unity UI framework in Unity made for 2019. 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 should match 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 BSD3 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

Please see the full downloads list for all previous releases and their corresponding download links.