Native cursors for GameMaker
A downloadable extension for Windows
This extension provides the ability to set system-level cursors for the game' window. Such cursors are framerate-independent and have zero lag (unlike anything that can be accomplished by drawing the cursor from "inside" the game).
- window_set_cursor_sprite(sprite, subimg)
- window_set_cursor_sprite_ext(sprite, subimg, xscale, yscale, blend, alpha)
- window_set_cursor_surface(surface, hotpoint_x, hotpoint_y)
- window_set_cursor_surface_part(surface, hotpoint_x, hotpoint_y)
- window_set_cursor_normal() (reverts to cursor set via built-in functions)
Supported versions: GMS1, GMS2
- Windows: via DLL (WndProc hook).
Supports cursors up to 256x256px.
Old systems may only support cursors up to 64x64px (in otherwords, make an option if you want a huge cursor)
Likely works on UWP/Windows Store native apps, but wasn't tested yet.
- HTML5: via JS (CSS3 cursors).
Supports cursors up to 128x128px.
On WebGL, cursors can only be changed in draw event, since drawing operations do not work elsewhere.
- Given demand, Mac and Linux may be supported in future.
- The extension itself.
- Sample project (shown on the GIF).
- Source code (GML, JS, C++).
In order to download this extension you must purchase it at or above the minimum price of $2.95 USD. You will get access to the following files:
- Added a GMS2 versionDec 10, 2019