Extension that will allow you to use frame-based timing in GameMaker Studio.

These routines can setup timing inside an existing object. You simply do:

  1. Add r2d_dtCreate in the Create event
  2. Add r2d_dtBeginStep in the Begin Step event
  3. Call the r2d_dtXXX functions to update your objects or directly use global.r2d_DeltaTimer

Set global.r2d_dtDesiredFPS (default is 30) to set the speed of your simulation. Set global.r2d_dtMinFPS (default 10) to set the minimum FPS to try and maintain your desired simulation speed. Anything below this minimum value will just fall through.

global.r2d_dtMinFPS = 10; // manage simulation down to this speed
global.r2d_dtDesiredFPS = 60; // keep simulation running at this speed

r2d_dtCreate will set GMS's internal game fps to a very high value to prevent GMS from trying to lock the framerate. r2d_dtBeginStep has support to prevent large spikes in speed caused by background tasks. The end result is that you will have now decoupled rendering from updating, allowing your simulation to run at a known and predictable rate.

Routines will continue to be added to control more and more aspects of GMS via frame-based timing.

End User Licence Agreement (EULA).

Changes in 1.0.2

  • Changed to a pure GML extension
  • Misc fixes and enhancements
  • Added PDF documentation

Version 1.0.2. Published September 3, 2017

Age Rating: 4+

Average Rating

This asset hasn't received enough reviews yet.

Your review

You can only review assets you've bought.

No reviews yet

No reviews have been left for this asset - be the first!

Package contents

Total size 3.81 MB

assetpackage.yy 2.44 KB datafiles datafiles_yy extensions fonts objects rooms sprites

What is the issue?

Back to Top