extra-game-loop 0.1.3 → 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,18 +8,19 @@ 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
- , render(): void {
23
+ , render(alpha: number): void {
23
24
  // ...
24
25
  }
25
26
  })
@@ -30,13 +31,19 @@ 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
39
- render: () => void
45
+ fixedUpdate: (deltaTime: FixedDeltaTime /* ms */) => void
46
+ render: (alpha: number /* [0, 1) */) => void
40
47
  })
41
48
 
42
49
  start(): void