extra-game-loop 0.1.4 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -8,15 +8,16 @@ yarn add extra-game-loop
8
8
 
9
9
  ## Usage
10
10
  ```ts
11
- import { GameLoop } from 'extra-game-loop'
11
+ import { GameLoop, Mode } from 'extra-game-loop'
12
12
 
13
13
  const gameLoop = new GameLoop({
14
- fixedDeltaTime: 1000 / 50
14
+ mode: Mode.UpdateFirst
15
+ , fixedDeltaTime: 1000 / 50
15
16
  , maximumDeltaTime: (1000 / 50) * 30
16
- , fixedUpdate(deltaTime: number): State {
17
+ , update(deltaTime: number): void {
17
18
  // ...
18
19
  }
19
- , update(deltaTime: number): void {
20
+ , fixedUpdate(deltaTime: number): State {
20
21
  // ...
21
22
  }
22
23
  , render(alpha: number): void {
@@ -30,12 +31,18 @@ gameLoop.start()
30
31
  ## API
31
32
  ### GameLoop
32
33
  ```ts
34
+ enum Mode {
35
+ UpdateFirst // [Update, FixedUpdate, Render]
36
+ , FixedUpdateFirst // [FixedUpdate, Update, Render]
37
+ }
38
+
33
39
  class GameLoop<FixedDeltaTime extends number> {
34
40
  constructor(options: {
41
+ mode: Mode
35
42
  fixedDeltaTime: FixedDeltaTime /* ms */
36
43
  maximumDeltaTime: number /* ms */
37
- fixedUpdate: (deltaTime: FixedDeltaTime /* ms */) => void
38
44
  update: (deltaTime: number /* ms */) => void
45
+ fixedUpdate: (deltaTime: FixedDeltaTime /* ms */) => void
39
46
  render: (alpha: number /* [0, 1) */) => void
40
47
  })
41
48