A downloadable extension for Windows

Buy Now$2.95 USD or more

This extension enables your GameMaker games to use system-level custom cursors. Such cursors are framerate-independent and have zero lag.

Use of native cursors is particularly important for any players that might run your game at displays with higher refresh rates or with vertical synchronization enabled, as mouse lag can be disorienting for many.

Included functions:

  • 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, GMS2.3+

Supported platforms:

  • 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 (as per specification).
    On WebGL, cursors can only be changed in draw event, since drawing operations do not work elsewhere.

Package contains:

  • The extension itself.
  • Sample project (shown on the GIF).
  • Source code (GML, JS, C++).
Updated 25 days ago
StatusReleased
CategoryAssets
Rating
(1)
AuthorYellowAfterlife
Made withGameMaker: Studio
Tagsextension, GameMaker

Purchase

Buy Now$2.95 USD or more

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:

window_set_cursor_demo.gmz 152 kB
window_set_cursor.yymp 67 kB
window_set_cursor.yymps 64 kB
window_set_cursor.gmez 40 kB

Download demo

Download
window_set_cursor_demo.zip 1 MB

Development log