Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/YAL-GameMaker/gameframe
Custom window frame for GameMaker games
https://github.com/YAL-GameMaker/gameframe
Last synced: 2 months ago
JSON representation
Custom window frame for GameMaker games
- Host: GitHub
- URL: https://github.com/YAL-GameMaker/gameframe
- Owner: YAL-GameMaker
- License: other
- Created: 2022-12-06T21:38:05.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-09-15T09:44:56.000Z (4 months ago)
- Last Synced: 2024-09-15T12:21:12.187Z (4 months ago)
- Language: Haxe
- Size: 261 KB
- Stars: 13
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-gamemaker - gameframe - Custom window caption and border for Windows. (Utilities / Recommendations)
README
## gameframe
**Quick links:** [documentation](https://yal.cc/docs/gm/gameframe)
· [itch.io](https://yellowafterlife.itch.io/gamemaker-gameframe)
· [GM Marketplace](https://marketplace.yoyogames.com/assets/11287/gameframe)
**Versions:** GameMaker: Studio 1.4, GMS2.2, GMS2.3/GM2022+
**Platforms:** Windows, Windows (YYC)This extension gives GameMaker games a custom window caption+border that act like a native one.
That includes the minimize/maximize buttons,
moving/resizing the window,
common (and less common) keyboard and mouse shortcuts,
and even the window shadow and rounded borders on Windows 11.
Having a custom border+caption subsequently allows for a few things:- Toggling window border on demand
- Supporting exclusive fullscreen, borderless fullscreen, and windowed modes.
(which more and more players expect from you as time goes on)
- Not freezing the application while the user is dragging the window around.
(essential for competitive online games)
- Customizing the title bar and/or border.
(now that it's game code that's drawing them)## What's interesting here
A lot of this extension is pretty normal code, really -
buttons, callbacks, variables for customization. Not complex, but there's a bunch of it.Default icons and animations are stylized to look akin to Windows 10, which also took a little while. And apparently UI scale doesn't _just_ scale component sizes by X%? That's fun.
On other hand, a native window shadow on a borderless window turned out to be a surprisingly high-effort feature consisting of multiple poorly documented WinAPI tricks.
## Building
See [BUILD.md](BUILD.md)
## Meta
**Author:** [YellowAfterlife](https://github.com/YellowAfterlife)
**License:** Custom license (see `LICENSE`)