# Matter.Runner >Matter.Runner运行器模块在提供一个游戏框架的时候是可选功能,可以为你掌控Matter.Engine的更新。它用于开发和debug目的,但是也适合简单的游戏。如果你使用你自己的欧系框架代替,那你就不需要这个模块。代替的,你只要在你的游戏框架里调用Engine.update(engine, delta)。 ##Methods `Matter.Runner.create(options)` >创建一个运行器 `Matter.Runner.run(engine)` >在requestAnimationFrame事件中通过调用Runner.tick连续不断地运行Matter.Engine。 `Matter.Runner.start(runner, engine)` >Runner.run的别名 `Matter.Runner.stop(runner)` >结束指定runner的Runner.run。如果只是想暂停。看看engine.enabled `Matter.Runner.tick(runner, engine, time)` >游戏框架的一个功能,更新引擎和渲染器到下一帧(一个嘀嗒)。有平滑变量、时间矫正、固定或者动态时间的功能。在引擎里有beforeTick, tick and afterTick事件触发器。如果你使用自己的游戏框架只需要考虑Engine.update(engine, delta) ##Properties `runner.delta` >一个指定了引擎的两个更新之间的时间间隔(毫秒)的数字。如果engine.timing.isFixed设置为true,delta就是固定的。如果设置为false,delta就会自动改变以维持正确的界面的模拟速度。 `runner.enabled` >runner是否在运行的标识 `runner.isFixed` >指定了runner是否使用固定的时间间隔的布尔值。如果时间间隔是固定的,界面的模拟速度会依赖帧率而发生变化。如果间隔是可变的,界面的模拟速度将保持不变。(待) ## Events `Events.on(runner, "afterTick", callback)` >在映青更新之后,渲染之后,tick的结尾触发。 `Events.on(runner, "afterUpdate", callback)` >更新后触发 `Events.on(runner, "beforeTick", callback)` >在引擎的任何更新之前,tick的开头触发。 `Events.on(runner, "beforeUpdate", callback)` >更新之前触发 `Events.on(runner, "tick", callback)` >在引擎的时间更新之后,但是引擎状态还未全部更新之前