Plugin: Auto Scale for GUIs


#1

Hi everyone, I recently updated my AutoScale plugin. (The dislikes are from version 1)


Well, what can it do?
The plugin has two functions. Converting a UI element’s size to Scale or Offset, and the auto scalingfeature.
The Add Constraint feature makes use of the UIAspectRatioConstraint which ensures that your UI retains it’s size on all screen sizes. You can add this constraint to your UI manually but my plugin does the calculating of the AspectRatio property by dividing the AbsoluteSizes so you don’t have to!

image

How do I use it hmmmmm?
First, you need your GUI. Make sure it is in a ScreenGUI.

Second, select only the children of the ScreenGUI (not the descendants) and click the Add Constraint button.

This will add the constraint with the calculated AspectRatio property to the UI element, make sure you repeat step 2 for each child of the ScreenGUI. The descendants of the ScreenGUI will inherit the size of the parent so don’t go into each descendant and add a constraint to it.

Correct :white_check_mark: ur one smart boi
image

Wrong :x: bruh
image

Let me know if you need any help!
ZacBytes


Plugin Link


(Make sure to leave a :+1:)


Updates
image
image

-Now offers auto changing of AnchorPoint to Center
-Now offers auto conversion of new UI elements to Scale.
-Added new unloading event cleanup
-AutoScale button renamed to AutoConvert
-Fixed print message bugs


UI's going offset when in-game
Making a GUI perfect on any screen
How can i properly position UI
General Rule to UI Scaling
GUI isn't the same size for all devices
#2

Cool! Good for UI Designing


#3

Works perfectly fine!


#4

Very awesome!


#5

I would like for there to be an option to automatically convert any newly inserted UI elements to scale so I don’t have to do that manually. Then I would definitely get this.


#6

Really cool! Thank you so much for making this plugin!! ;D


#7

I actually started working on that yesterday lol, going to release it today.

Edit: Released the new update but the settings toggle doesn’t seem to be working, will fix tomorrow.

image
image


#8

This plugin will make a fine addition to my collection


#9

Awesome, I’ve been looking for something like this for ages. My attempts at UI design had been previously slaughtered by it looking funky on different size screens, and I never did get these UI constraint things. Thank you, this will be very helpful. :slight_smile:


#10

Hi everyone, the new update has arrived and the setting now works.

image
Click the Settings button at the plugin tab to open this gui, your settings are saved through the plugin. Please tell me if you experience crashes when clicking the button.


#11

This. Is. Amazing.


#12

This actually helps a lot- great time saver.


#13

So helpful! Thank you! :slight_smile:


#14

Np, if you have any feature suggestions just message me <3


#15

Yeah I noticed default scale would just make images or frames WAY too big and messing around with it can get really confusing and time consuming thanks for making this plugin, I’ll use it a lot :+1:


#16

The AutoScale feature has actually transformed my UI design completely, and scalability is excellent now, so thank you!

One gripe I have about GUIs is that TextScaled is kinda limited; if you have a row of TextButtons, and each is set to automatically scale, they’re all going to have different text sizes and look terrible. Right now, I circumvent this in my game by changing the TextSize every time the game resolution is changed until TextFits = false for every TextLabel in the same “group”, and then use the the biggest TextSize that fits all the TextLabels in the group. Have you had any experience dealing with this? I hope it’s not too off-topic, but if no functionality exists (well… that I’m aware of) I feel like this would be a good concept for a public module (not sure how a plug-in would work).


#17

Useful for new developers! Great job! :+1:


#18

I’ve definitely experienced this before, I’ll look into how I could implement a fix into a plugin. Thanks!

(Might make a viewport frame plugin soon)


#19

I thought of doing it as a module, where you have a method like Module:AddTextGroup(group), where group is an array of TextLabels/Buttons that must be the same size. Every time the method is called it scales the text group to the same, largest possible size, and every time the game resolution changes, it does the same for all added text groups

Actually, I think I’m gonna make this now, lol, I already do a similar thing for my game GUI, but it’s cumbersome having to connect to my custom ResolutionChanged event every time.


#20

UITextSizeConstraints will help with this