DoozyUI: Complete UI Management System

Hi @zukinet ,

Here is the reply we sent you via email.

DoozyUI works with any app or game 2D or 3D. It does not matter, as it uses only native Unity components. You are doing a basic Unity setup wrong.

Please see the image below for a basic 2 camera setup.

One camera (MainCamera) is your game camera and the other (UICamera) is the UI camera. The Main Camera should see (draw) everything but the UI layer and the UI Camera should see (draw) only the UI layer and nothing else.

Let’s take it step by step:

  1. You should have an UI sorting layer that should be rendered above the UI layer (see image)
  2. Your Main Camera should have the Culling Mask set to Mixed … (you do that by unselecting the UI layer)
  3. Your Main Camera should have the Depth set to -1 (it should be the first in the Render Queue, as we draw the UI after that, thus in front of it)
  4. The UI Camera should have Clear Flags set to Depth only
  5. The UI Camera should have the Culling Mask set to UI (it should see (draw) only the UI layer and nothing else)
  6. The UI Camera should have the Depth set to 0 (it should be drawn after the Main Camera, thus in front of it)
  7. The UI Container is your main canvas (also known as your root canvas).
  8. The UI Container’s Canvas is set, in your particular case, to have the Render Mode - ‘Screen Space - Camera’. Notice that the UI Camera is referenced
  9. The UI Container’s Canvas is set to the ‘UI’ Sorting Layer
  10. (Optional) Should you need to, reset the child Canvases and Renderes of the UI Container to the ‘UI’ sorting layer by pressing the button [Update Canvases & Rendereres] that can be found on the UI Container.

Notice that you configure ONLY native Unity components. This being a basic two camera setup. You do not need to touch any of DoozyUI’s components in order for this setup to work.

Please read about the following native Unity components in order to get a better understanding of how you can tweak this setup to your liking:

  1. Tags and Layers - Unity - Manual: Tags and Layers
  2. Camera - Unity - Manual: Camera component
  3. Canvas - Redirecting to latest version of com.unity.ugui
  4. UI Canvas - Tutorial - UI Components - Unity Learn

Should this not help you out, we are happy to take a look at your Scene and help you with your setup. Just let us know.

Cheers,
Doozy Entertainment

1 Like

Just tried to use Doozy UI in my project in unity 5.6.2f1 and none of the buttons respond.

So created a new test project imported DOTween and went through setup and imported Doozy UI and added to scene. Added Doozy UI Button but still unresponsive. Is this a known issue? Or have I missed something?

Solved : By default, when adding Doozy UI to your scene this adds Background and Foreground objects. The Foreground contains a Canvas component, removing this solved the issue.;

Hey Alex,

I don’t think you understand what I am trying to do.

I want my Doozy UI menu to only appear in landscape mode. When the user rotates to portrait the menu will disappear, then when they rotate back to landscape it appears again.

In the SimpleSceneExample scene, I turn off the portrait mode button. When I start in landscape, the menu is there, when I switch to portrait the menu has disappeared. When I change back to landscape the menu is still gone.

So basically it seems your orientation manager only works when there is both a landscape and portrait version of the menu. Is this a bug?

Does anyone know how to capture the name of a gameObject on a UI Button click? I’m trying the use a UI Trigger but all I can ever get is the UI Button name and I need to get the gameObject.name

Hi, I’m using DoozyUI version 2.7p6
I was wondering if there is a way I can use the scene loader with a delay (Without Scripting, Obv)
Since I have a level panel with a lot of different buttons for opening different levels, but I perform a blackout by fading a filled black image for a smoother transition. Using the “Send Game Events” Feature is very helpful since I just edit in the inspector. But I want to send it with a delay. So I guess it would be great if there was a delay feature in show elements, hide elements, and send game events.

I solved my case by creating a trigger that listens to all game events and calls a method to load the level with a delay (Scripting/Coroutine). But I guess this makes the DoozyUI Scene Loader useless for me since I almost always have some transition before changing levels. I think the delay feature for individual events in send game events would be really useful for a lot of devs, you should really consider adding it.

Hi Alex,

I have try your UI Framework. it’s so cool

However, now i have a small box View Port Camera (2nd Camera) in top corner of my screen (it’s Top Element, the Depth is highest)…

now, it cannot moved through Doozy UI’s Panel and/or Animation

It’s possible move it using Doozy UI ? or not

(if Yes, i will findout myself)

Hi @AlexMares

is there any info on handling localization with DoozyUI?

1 Like

3148397--239184--pageHelpButtonManual.png
https://goo.gl/LSHMRj

3148397--239185--pageHelpButtonApi.png
https://goo.gl/Ybsf99

1 Like

Hello,

I have a question on the Playmaker Event Dispatcher. I have a game manager with 3 FSM’s and I want to dispatch events to each one. I added 3 Dispatchers, but I was not able to override the FSM to select a specific FSM. I select the game manager GameObject in the Event Dispatcher, but there is no way to select a specific FSM.

What am I missing?

Any help would be appreciated,

Z

Hi @camaech ,

You currently cannot get the UIButton from the name alone as there can be more than one UIButton with the same button name (for example the ‘Back’ button).

Indeed, the UITrigger will react, on click, to the button name that it is listening for, but you cannot get the gameObject of the button that was clicked because of the aforementioned reason.

If you are interested to know when a specific button was pressed, you can send a customized game event for that button, or you can use its OnClick UnityEvent.

Did this make sense to you?

Cheers,

Doozy Entertainment

Hi @sarebots2 ,

We’ll add this feature in a future update. We can implement a send game event with delay calculated in realtime.
Thank you for your suggestion.

Cheers,

Doozy Entertainment

Could it be that the integration with “energy bar” in the new version 2.8 does not work?
Steps:

  1. Enable the Energy Bar toolkit integration
  2. Add the scene slice bar
  3. Click the “+” button in the scene manager to add a new power bar empty element
  4. Drag and drop the component of the slice, but it does not apply.

Hi @zukinet ,

We cannot understand what you are trying to do. Can you please explain in a bit more details (maybe post a screenshot or two of your scene).

Thank you,

Doozy Entertainment

Hi @AVOlight_1 ,

What exactly do you need when you talk about localization an DoozyUI?
Normally if you want to localize an app or a game you just swap out the sprites and the text.
What do you have in mind when you talk about localization and the UI management system (the framework)?

Cheers,

Doozy Entertainmet

Hi @dusoft ,

We will look into it and reply here what we find. Should it be a bug, we’ll roll out a patch asap.
Version 2.8.0p1 has been submitted a few hours ago with two bug fixes and we hope it will be live tomorrow.

Thank you for telling us about this,

Doozy Entertainment

Hi @Zanderfax ,

Update to version 2.8 and you should be good to go. The PlayMaker Event Dispatcher has been fixed.and you can override the target with ease.

Please tell us if after the update you are having the same issue.

Thank you,

Doozy Entertainment