@woosh/meep-engine 2.34.8 → 2.34.12

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.
@@ -0,0 +1,12 @@
1
+ import Task from "../task/Task";
2
+ import TaskGroup from "../task/TaskGroup";
3
+
4
+ export default class ConcurrentExecutor {
5
+ constructor(quietTime: number, workTime: number)
6
+
7
+ runGroup(t: TaskGroup): void
8
+
9
+ run(t: Task): void
10
+
11
+ runMany(tasks: Task[]): void
12
+ }
@@ -0,0 +1,18 @@
1
+ import Signal from "../../events/signal/Signal";
2
+
3
+ export abstract class ITask {
4
+ readonly name: string
5
+ readonly on: {
6
+ started: Signal,
7
+ completed: Signal,
8
+ failed: Signal
9
+ }
10
+
11
+ promise(): Promise<void>
12
+
13
+ getExecutedCpuTime(): number
14
+
15
+ getEstimatedDuration(): number
16
+
17
+ computeProgress(): number
18
+ }
@@ -0,0 +1,5 @@
1
+ import {ITask} from "./ITask";
2
+
3
+ export default class Task extends ITask {
4
+ readonly isTask:boolean
5
+ }
@@ -0,0 +1,5 @@
1
+ import {ITask} from "./ITask";
2
+
3
+ export default class TaskGroup extends ITask{
4
+
5
+ }
@@ -9,6 +9,7 @@ import {EntityManager} from "./ecs/EntityManager";
9
9
  import View from "../view/View";
10
10
  import Ticker from "./simulation/Ticker";
11
11
  import {EnginePluginManager} from "./plugin/EnginePluginManager";
12
+ import ConcurrentExecutor from "../core/process/executor/ConcurrentExecutor";
12
13
 
13
14
  export interface IEngineInitializationOptions {
14
15
  entityManager?: EntityManager
@@ -27,6 +28,7 @@ export default class Engine {
27
28
  public readonly assetManager: AssetManager
28
29
  public readonly ticker: Ticker
29
30
  public readonly plugins: EnginePluginManager
31
+ public readonly executor: ConcurrentExecutor
30
32
 
31
33
  public start(): Promise<any>
32
34
 
package/engine/Engine.js CHANGED
@@ -82,6 +82,12 @@ class Engine {
82
82
  */
83
83
  this.performance = new MetricCollection();
84
84
 
85
+ /**
86
+ *
87
+ * @type {ConcurrentExecutor}
88
+ */
89
+ this.executor = new ConcurrentExecutor(0, 10);
90
+
85
91
  this.__using_external_entity_manager = entityManager !== undefined;
86
92
 
87
93
  //setup entity component system
@@ -179,7 +185,6 @@ class Engine {
179
185
 
180
186
  this.settings = new EngineSettings();
181
187
 
182
- this.executor = new ConcurrentExecutor(0, 10);
183
188
 
184
189
  this.services = {
185
190
  compression: new CompressionService()
@@ -6,17 +6,19 @@ import {AssetTransformer} from "./AssetTransformer";
6
6
  export class AssetManager {
7
7
  public readonly crossOriginConfig: CrossOriginConfig
8
8
 
9
- public promise<T>(path: string, type: string): Promise<Asset<T>>
9
+ promise<T>(path: string, type: string): Promise<Asset<T>>
10
10
 
11
- public remove(path: string, type: string): boolean
11
+ remove(path: string, type: string): boolean
12
12
 
13
- public clear(): void
13
+ clear(): void
14
14
 
15
- public registerLoader<T>(type: string, loader: AssetLoader<T>): Promise<void>
15
+ registerLoader<T>(type: string, loader: AssetLoader<T>): Promise<void>
16
16
 
17
- public unregisterLoader(type: string): Promise<void>
17
+ unregisterLoader(type: string): Promise<void>
18
18
 
19
- public registerTransformer<T extends Asset<X>, X = any>(type: string, transformer: AssetTransformer<T>): void
19
+ getLoaderByType<T>(type: string): AssetLoader<T> | undefined
20
20
 
21
- public unregisterTransformer<T extends Asset<X>, X = any>(type: string, transformer: AssetTransformer<T>): boolean
21
+ registerTransformer<T extends Asset<X>, X = any>(type: string, transformer: AssetTransformer<T>): void
22
+
23
+ unregisterTransformer<T extends Asset<X>, X = any>(type: string, transformer: AssetTransformer<T>): boolean
22
24
  }
@@ -40,4 +40,6 @@ export class EntityComponentDataset {
40
40
  public sendEvent<T>(entity: number, name: string, event?: T);
41
41
 
42
42
  public getComponentClassByName<T>(name: string): Type<T>;
43
+
44
+ getAnyComponent<T>(type: Type<T>): { entity: number, component: T | null }
43
45
  }
@@ -0,0 +1,5 @@
1
+ export class Sampler2D {
2
+ readChannel(x: number, y: number, channel: number): number
3
+
4
+ writeChannel(x: number, y: number, channel: number, value: number): void
5
+ }
@@ -0,0 +1,3 @@
1
+ export class GridData{
2
+
3
+ }
package/package.json CHANGED
@@ -5,7 +5,7 @@
5
5
  "productName": "Meep",
6
6
  "description": "production-ready JavaScript game engine based on Entity Component System Architecture",
7
7
  "author": "Alexander Goldring",
8
- "version": "2.34.8",
8
+ "version": "2.34.12",
9
9
  "dependencies": {
10
10
  "gl-matrix": "3.4.3",
11
11
  "fast-levenshtein": "2.0.6",