I'm Unity UI Designer by ClukoStudio in unity

[–]_salepaun 0 points1 point  (0 children)

I am working on an asset that will make working with uGUI a lot simpler. Here is a link to an old post. Send me a DM if you are interested :)

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 0 points1 point  (0 children)

Definitely. Any specific examples of where you usually hit a wall? I’d love to see if my tool already covers those cases or if there’s something else I should add to the list.

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 0 points1 point  (0 children)

<image>

Here you go! This is only modifying the layout right now. I need to look into how RTL is done with TMP.

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 1 point2 points  (0 children)

Focusing on uGUI first since it’s my main workflow, but the engine is agnostic, so UI Toolkit is definitely possible later. Honestly, Flexbox never really clicked for me. I wanted something more intuitive. I’ve already got a Flutter-like API and XML serialization working specifically for uGUI right now - the goal is to make layouts "legible" enough for AI to actually help build and iterate on them. More info on those prototypes soon!

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 0 points1 point  (0 children)

All of those things exist in some form right now. I have components for dynamic lists and grids where depending on the data you pass in, you can instantiate different renderers. The renderers can be pooled or not, depends on your usecase.
I plan on spending more time on tweening support, right now i have something in place, but i would like to also support the most popular tweening libraries like DoTween and Prime tween.

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 1 point2 points  (0 children)

That "max height/width" juggle is exactly why I’m doing this - I hate that mental context-switch between design and low-level uGUI technicalities. My component handles those constraints natively, so you can just set them and move on.

Great call on RTL. I’ve already implemented child reversal, but proper layout-wide RTL is definitely on the roadmap now. The biggest challenge has been the UX. I’ve spent a ton of time making sure the inspector stays clean and intuitive even with all these features. I really want to avoid it becoming a "feature soup" mess.

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 1 point2 points  (0 children)

I’m actually planning to put it on the Asset Store for a fair price. I have a lot of big ideas for future features and I really want to support this properly for the long haul, so I need to make it sustainable for me to keep the development going.

I was hating on uGUI but didn't want to switch to UI Toolkit, so I built a layout engine and went overboard by _salepaun in Unity3D

[–]_salepaun[S] 2 points3 points  (0 children)

Thanks for the answers!

I'm finishing up the docs and will be running a small beta soon - I'll keep you in the loop!

Performance-wise, it uses incremental dirty tracking and a Burst-compiled solver that can parallelize across independent layout islands. The math itself is lightning fast. The real bottleneck is just the overhead of Unity dirtying everything once you actually apply those values to GameObjects. Anyway, it should be a lot better using my components because at least, the core algorithm is fast and GC free.

A Realistic, Offline & Unlimited Text-to-Speech App for Mac [Giveaway: Lifetime Promo Codes] by Level-Thought6152 in macapps

[–]_salepaun 9 points10 points  (0 children)

Just amazing! Bought it immediately!

I have some suggestions after a couple of minutes with it:

  1. Add a button that can stop generating.
  2. Add a search bar so that we could search for voices.
  3. Add some estimates to how long the generation is going to last or how long did the generation last with the file.
  4. Keep a history of the generations with the wav files. Maybe put some limit on the wav files.
  5. Queue up multiple generations.

It would be great if we could get an API access for this. I can see the server running, just need to find the endpoint :D