Whenever I’m scripting a UI I feel like doing certain things gets extremely repetitive. Let’s say I just want to create an effect when a button is hovered over. Once again if I have a lot of buttons I have to put more work in than should be required to create this hover effect on all the buttons. I created RoUI to solve all these problems.
What is RoUI?
A UI library for ROBLOX that intends on simplifying the UI scripting process. RoUI is an extremely powerful tool for creating UI effects and manipulating UI. Users are given vast control over their UI elements and RoUI provides them with the flexibility to quickly create beautiful UI effects.
Examples
The above example was created in nearly 20 lines of code including variables for the various UI elements.
This radial grow example was created in 1 line of code using one of RoUI’s built-in effects. Here’s the code for it that is instantly applied to an infinite number of buttons:
Example Code
To show the simplicity of RoUI here’s some example code to create an effect that will slide a GuiObject instance just out of view below the screen that is then applied to a frame:
Hey so I was experiencing with your module trying to make sort of a notification but the GrowShrink effect doesn’t really perform as expected. Anyways still a good module!
I think the name throws what the effect does a bit off. It’ll only grow an object slightly and then shrink it down until its invisible. You’re probably trying to grow a UI from nothing then shrink it after a certain period of time right?
I plan on implementing a way to quickly tween transparency for UI objects so you don’t have to create your own tweens for it. Probably something along these lines:
RoUIObject:TweenTransparency(number finalTransparency, number speed)
Also a way to quickly tween between colors. Basically I just want to keep implementing helper methods to just make scripting UIs easier.
As a UI Designer, I’ve tried out this module and it’s functions to come to a conclusion on how good this module is.
My rating:
9/10
Why a 9? Let me explain.
RoUI may still be a developing module but with the features it currently has, it makes developing UI much easier. Such tweens are messy to make within code, and overall hard to perfect on the first try. RoUI makes it much easier to perform such tasks, and that’s what I like about it. However instead of rating it a 10, I’d have to rate it a 9 as it’s still an indev module, but nonetheless it manages to get the job done!
I hope to see this grow and add more features, so that developers can use this in their own workflow!
This will probably be the last update for some time as I would actually like to expand the flexibility of playing effects and creating them. I would also like to include a bulk of new built-in effects in the next update. You might notice that built-in effects now have a settings table and I would like that to be standard with all effects including user-created ones.
No so basically I have a button in my gui that when clicked it should GrowShrink the gui, here’s a gif about the situation. And the actual problem is that it doesn’t GrowShrink in the center of the gui.
Set the AnchorPoint property of the frame or whatever the background is that you’re using GrowShrink on to be (0.5, 0.5) like so:
You’ll have to reposition it to be in the correct place but the effect should work fine now. That way the effect gets applied on all sides. It’s just the way Roblox works unfortunately. When I made the effect I thought this might be an issue but I can’t forcibly apply that new AnchorPoint without breaking user’s UIs which I obviously don’t want to do.
The radial glow effect is by far the best thing I’ve ever seen in my life. Amazing work, you don’t know how much it means to developers who don’t have the time or knowledge to script these things themselves.
I’ve actually been thinking about this as I would love to make a 2D Animator Plugin to easily create 2D UI Effects but it’s a fairly large project and it would take some time.