DoozyUI: Complete UI Management System

DoozyUI 2.5 - New Features

1 Like

Hi All,

We are happy to announce that DoozyUI 2.5 has been submitted for review. The price is the same and the upgrade is free.

Please read the Release Notes before upgrading as there are some Breaking Changes that you should be aware of.
The main features we introduced with this version are the Orientation Manager, that will allow you to create separate UIElements for Landscape and Portrait orientations (using the same ElementName), and an improved approach to handling hidden UIElements (we disable the Canvas and the Graphic Raycaster components, thus you get a better overall performance). Also, because Unity improved a lot the UI side (it fixed a lot of bugs and improved it’s performance) from 5.1 to 5.3 and up, we decided to up the minimum Unity version from 5.1 to 5.3.

We are on track with developing DoozyUI 3.0 that will bring a new inspector interface and a lot of new features. As a side note, the Orientation Manager was intended for DoozyUI 3.0, but we saw that some users were in need of it so we implemented it now.

We are working on a daily basis on improving this asset and with your help we will make it even better.
If you already use it, send us a message and tell us what you think of it or better yet leave us a review on the asset store.

We hope that you’ll enjoy using DoozyUI as your UI management system of choice and that you will be able to create wonderful apps and games with it.

Should you have a question, an issue, a suggestion or a feature request, we are a message away! :slight_smile:

Cheers,
Alex

Hi!

Is it possible to have a single button show multiple elements in series? For example, if I click once element1 shows, if I click again then element2 shows and element1 hides, and so on….

Thanks

Question #2, Is it possible to have a button show an element based on an external condition? For example, when a button is pressed, If condition A is met show something but if condition B is met, show something else.

Thanks

The core functionality for an UIButton is to show/hide one or more UIElements at once, not in a series. But you can achieve this if you write a small helper script.

Every UIButton has 3 public List showElements, hideElements and gameEvents. You can trigger a method every time the user presses a button and update the showElements and the hideElements Lists with your desired ElementNames (the names of the UIElements you want to show/hide). Thus you can do what you are looking for, just not without writing a small script.

Again, this can be easily done with a very small script that adjusts the showElements and hideElements List string values to the ones you want.

Another approach can be as follows:

  1. You do not set any Show/Hide values and use a GameEvent instead
  2. You send, for example, a game event named ‘MyCustomEvent’
  3. You create a script with the following method inside
public void OnGameEventForMyCustomMethod()
{
      //do your logical test here (example code below)
      if(myExternalCondition == true)
      {
           UIManager.ShowUIElement("ElementNameForCondition_1");
      }
      else
      {
           UIManager.ShowUIElement("ElementNameForCondition_2");
      }
}
  1. You attach said script to a GameObject inside your Hierarchy and attach an UITrigger that listens for a game event named ‘MyCustomEvent’
  2. DONE!

So looking at my previous answer and this one, you now have two methods that can achieve the results you are looking for. Should you need more help, find issues or have any suggestion, don’t hesitate to send us an email. We’re happy to help! :slight_smile:

Cheers,
Alex

Right now 24h SALE for DoozyUI: Complete UI Management System.
40% OFF @ Unity Asset Store - The Best Assets for Game Making

I don’t see anything about input. Does this offer some kind of way to integrate with input solutions other than the horrible default Unity input system, such as InControl or Rewired?

Hi Obsurveyor,

DoozyUI can be configured to work with a controller, every UIElement having the option to set the default button that gets selected when shown. Thus you can create an Explicit Navigation scheme using the native Unity Button component and navigate the UI with just a controller. This is not an input solution, but an UI animation and management system. You can however use a custom input solution along side DoozyUI.

Cheers,
Alex

Just purchased this on sale. I imported DOTween (free) first, then Doozy UI, but I get a bunch of compiler errors – see screenshot.

Hi gecko,

Those missing methods are from DOTween and I believe you forgot to press the setup button for it. You can do that by going to Tools → DOTween Utility Panel → Setup DOTween…
That will import the missing methods and you should be good to go. Also take a look at the initial setup for DoozyUI (you will have to create a sorting layer named ‘UI’, because it cannot be done from code at the moment).

Did this fix your issue?

Cheers,
Alex

That was it, thanks much!

Glad it worked!
Also check this out - How To create a Simple UI
(just by watching this you will get a decent grasp on how to use DoozyUI with ease)

https://www.youtube.com/watch?v=x5vubVxAv8I

You will find a lot of answers by watching our tutorials on our YouTube channel.
Should you need help, find issues or have any suggestions, don’t hesitate to send us an email. We’re friendly! :slight_smile:

Cheers,
Alex

Hey, I was interested in getting this while it was on sale and just e-mailed you a few questions. Google often puts my e-mails in spam so I wanted to make sure it wasn’t missed.

Hello, I’m very interested in your product but was wondering if it could work with a canvas set to worldspace. I’d like to create menu system that that moves a camera through a 3D space during menu transitions (each menu being located in a different physical location). Additionally, I’m making a flight sim so parts of my UI will be attached to the aircraft’s geometry. Thanks!

We received your email and gave you a detailed answer. Should you have more questions, fire away! (on email :slight_smile:

Cheers,
Alex

Hi jestermaximusJr,

Right now DoozyUI uses one main Canvas that is set to Screen Space - Camera. The system has not been designed to work with multiple Canvases set to World Space, but we have this feature under development.

I understand what you are looking for, but the current version of DoozyUI can’t help you with this type of setup.

What I can tell you now is that we have tested several options to work with this type of use case scenario and we will be introducing it with DoozyUI 3.0. This is still in it’s early stages of development, but it will probably be ready for production two months from now.

We do not release new features for production unless we do all the in-house tests and are certain that it behaves as expected. Thus we would rather release a feature later (that is error free), than sooner (that might be error prone).

Cheers,
Alex

1 Like

Thanks for your quick answer! The time horizon for 3.0 release doesn’t worry me too much, as long as that is a targeted feature to support. I’ve watched most of your videos and love the idea of your asset. You’ve got a new customer! :slight_smile:

Hi jestermaximusJr,

Thank you for your support. We try to keep all the DoozyUI users up to date with the new features and optimizations through detailed release notes and videos so that they will know how to use/implement them. Be sure there will be video tutorials on how to implement World Space canvases with DoozyUI 3.0 when it will be released.

Cheers,
Alex

For anyone who gets confused for a sec:

DOTween on the Asset Store is extremely out of date and doesn’t work with this asset. You need to go to DOTween’s website and download the latest version from there and then setup DOTween(just clicking a setup button).

Maybe the Asset Store is currently broken though, store.unity3d.com isn’t working for me, I can’t even get a newer version of Unity right now.