This is a module I made for myself about a year ago designed to more effectively resize GUIs based off a device’s screen size. Size customization is completely controlled by the player, so they can see as much, or as little, of the GUI as they’d like.
The idea of it is based off window size customization from Windows 10. When the GUI is made resizable, it’ll be given a border which can be dragged around by players until they reach their desired size. I’ve tested this on mobile devices, laptops, and desktop computers, and it’s been working well so far.
I released this publicly last year when it was first developed, so you may have come across it before - however, I’ve never been able to showcase it on a large scale. I believe it’s worthy of a post here because I’ve personally found it to be very useful in my own development, so it may be something someone else can make use of.
- Basics - GUIs can be resized by the players of your game to better match their desired size
- Persistent - GUI size is saved automatically. When players rejoin the game later, the gui will automatically resize itself to their chosen size
- Customizable - the borders of the window can be set however you’d like. They can be made smaller/larger, colors can be changed, and their entire visibility can be turned on & off.
- Size Constraints - The module supports properties for maximum & minimum size of the GUI, so you can set size constraints for resizing.
- Open Source - you can make any change you’d like to better adapt the module to your own games & your own needs.
- Automatic Updates - By default, the module automatically updates to the latest release. This can be toggled on & off by a BoolValue located inside the AutoUpdate script.
There is a demo of a resizable GUI available here:
The module is linked below:
The code is available open source from the link above. If you’ve made an improvement to it, please feel free to PM me so I can add it to the main code!