Hello devforum, I need some help with a UI scaling problem. I have tried soluctions like uiaspectratio constraints or setting scale type ti fit etc. but I can’t fix it.
This is how to UI should look in every device.:
Here is how it looks in other devices:
The numbers in the inventory and the bars strech for some reason.
I always use Scale for everything to ensure the interface will fit any device.
But if you want a fixed distance between borders and objects, you could add some offset to the current Size.Scale.
To better help you, it will be good to see your frames.
You can create an empty Baseplate file, copy only your frames from your original project and paste to this new file. Save it and send here.
The first problem I see is that you have 3 SreenGuis and you need only one:
Having only one ScreenGui, inside it you have to create a “Parent” frame with the final dimension for you GUI:
Set the parent frame only with Size.Scale to fill the maximum dimensions, which will be proportionally adjusted to the screen size. Use Size / Position Offset only if you want to force dimensions in pixels, independent of the screen size.
Also, I see you are almost not using Frames, you are parenting objects inside objects. The be more practical and intuitive, use the concept of “frame inside frame” and only put your final objects inside the last child frame.
Example:
Obviously, you’ll have to adapt the positions, using the Position Scale.
Also, use Position.Scale 0.5 (x and/or y) with AnchorPoint 0.5 (x and/or y) if you want to centralize any object.