GameMaker’s rendering system has long been seen as clunky and inconsistent. The release of GameMaker Studio and the introduction of cross-platform exporting has further complicated the process of rendering projects appropriately based on native display resolution or user selections. Fortunately, change is on the way.
Mike Dailly, head of development at YoYo Games, has posted a tech blog announcing major changes to the GUI layer in GameMaker Studio. The full technical post is a sizable read, so we’ve summarized the article below.
Dailly begins by outlining the problems with GameMaker Studio’s current cross-platform rendering functionality, calling it “not only inconsistent, but just plain annoying.”
The new system promises “totally consistent rendering behaviour across all platforms.”
Notable changes include:
- GUI rendering will by default be 1:1 with the pixels in the buffer
- Every device will now correct for aspect ratio
- Surfaces are now stackable
- The hidden surface the game is being rendered to is no longer hidden
Dailly notes that the so-called hidden surface “is available in GameMaker via a new built in global variable called application_surface, and you can set it, clear it, and render to it however you like, giving you total control of your game rendering.”
Support for stackable surfaces is a “breaking change” and developers will “no longer have to remember which surface they’re using.”
Summarizing, Dailly states the new system “finally breaks the bond between game and window resolution, and means in full-screen mode, it’s now easy to change the resolution your game is being rendered at.”
What are your thoughts on these changes? Leave a comment below.