Start the scheduler if it is not already active.
While active, the scheduler will override
to do nothing. By default Imba.tag#commit calls render, so
that rendering is cascaded through to children when rendering
a node. When a scheduler is active (for a node), Imba disables
this automatic rendering.
Check whether the current scheduler is active or not
Configure the scheduler
Stop the scheduler if it is active.
Delta time between the two last ticks
Instantly trigger target.tick and mark scheduler as clean (not dirty/marked). This is called implicitly from tick, but can also be called manually if you really want to force a tick without waiting for the next frame.
Create a new Imba.Scheduler for specified target
Mark the scheduler as dirty. This will make sure that
the scheduler calls
target.tick on the next frame
Called automatically on every frame while the scheduler is active.
It will only call
target.tick if the scheduler is marked dirty,
or when according to @fps setting.
If you have set up a scheduler with an fps of 1, tick will still be
called every frame, but
target.tick will only be called once every
second, and it will make sure each
target.tick happens in separate
seconds according to Date. So if you have a node that renders a clock
based on Date.now (or something similar), you can schedule it with 1fps,
never needing to worry about two ticks happening within the same second.
The same goes for 4fps, 10fps etc.