pelican-engine 0.3.8 → 0.3.10
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/AGENTS.md +18 -0
- package/distribution.json +14 -12
- package/docs/STATUS.md +2 -1
- package/docs/api/REFERENCE.md +154 -88
- package/docs/api/index.json +149 -90
- package/docs/npm/GAME-AUTHOR.md +18 -0
- package/engine.manifest.json +1 -1
- package/lib/renderer/gameplay.js +2 -0
- package/lib/runtime/host.js +4 -0
- package/lib/sdk/index.d.ts +68 -1
- package/lib/sdk/index.js +1 -1
- package/lib/simulation/rope-plugin.js +89 -0
- package/lib/simulation/rope.js +318 -0
- package/package.json +1 -1
package/docs/api/index.json
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"format": "pelican.api-index",
|
|
3
3
|
"version": 1,
|
|
4
|
-
"engineVersion": "0.3.
|
|
4
|
+
"engineVersion": "0.3.10",
|
|
5
5
|
"entry": "pelican-engine",
|
|
6
6
|
"source": "packages/sdk/src/index.ts",
|
|
7
7
|
"symbols": [
|
|
8
8
|
{
|
|
9
9
|
"name": "SDK_VERSION",
|
|
10
10
|
"kind": "constant",
|
|
11
|
-
"signature": "SDK_VERSION = \"0.3.
|
|
11
|
+
"signature": "SDK_VERSION = \"0.3.10\"",
|
|
12
12
|
"line": 2
|
|
13
13
|
},
|
|
14
14
|
{
|
|
@@ -171,7 +171,7 @@
|
|
|
171
171
|
{
|
|
172
172
|
"name": "SystemContext",
|
|
173
173
|
"kind": "InterfaceDeclaration",
|
|
174
|
-
"signature": "export interface SystemContext extends EngineFacade {\n readonly time: {\n readonly tick: number;\n readonly elapsed: number;\n readonly fixedDt: number;\n };\n readonly entities: EntityCommands;\n random(): number;\n emit(type: string, payload: unknown): void;\n events(type?: string): readonly GameEvent[];\n readonly input: InputService;\n readonly physics: PhysicsService;\n readonly animation: AnimationService;\n readonly camera: CameraService;\n readonly ui: UIService;\n readonly audio: AudioService;\n readonly storage: StorageService;\n readonly scenes: SceneService;\n readonly render: RenderService;\n readonly compute: ComputeService;\n readonly navigation: NavigationService;\n}",
|
|
174
|
+
"signature": "export interface SystemContext extends EngineFacade {\n readonly time: {\n readonly tick: number;\n readonly elapsed: number;\n readonly fixedDt: number;\n };\n readonly entities: EntityCommands;\n random(): number;\n emit(type: string, payload: unknown): void;\n events(type?: string): readonly GameEvent[];\n readonly input: InputService;\n readonly physics: PhysicsService;\n readonly animation: AnimationService;\n readonly camera: CameraService;\n readonly ui: UIService;\n readonly audio: AudioService;\n readonly storage: StorageService;\n readonly scenes: SceneService;\n readonly render: RenderService;\n readonly compute: ComputeService;\n readonly navigation: NavigationService;\n readonly ropes: RopeService;\n}",
|
|
175
175
|
"line": 98,
|
|
176
176
|
"fields": [
|
|
177
177
|
"time",
|
|
@@ -189,14 +189,73 @@
|
|
|
189
189
|
"scenes",
|
|
190
190
|
"render",
|
|
191
191
|
"compute",
|
|
192
|
-
"navigation"
|
|
192
|
+
"navigation",
|
|
193
|
+
"ropes"
|
|
194
|
+
]
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"name": "RopeCollider",
|
|
198
|
+
"kind": "TypeAliasDeclaration",
|
|
199
|
+
"signature": "export type RopeCollider =\n | { kind: \"sphere\"; id: string; center: Vec3; radius: number }\n | { kind: \"plane\"; id: string; normal: Vec3; offset: number };",
|
|
200
|
+
"line": 123
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
"name": "RopeDefinition",
|
|
204
|
+
"kind": "InterfaceDeclaration",
|
|
205
|
+
"signature": "export interface RopeDefinition {\n id: string;\n points: readonly Vec3[];\n /** Kilograms per particle, positive and at most 1e6. */\n mass: number;\n radius?: number;\n /** Defaults to the host interval; an explicit value must exactly match it. */\n fixedDt?: number;\n substeps?: number;\n iterations?: number;\n damping?: number;\n gravity?: Vec3;\n anchors?: readonly { index: number; position: Vec3 }[];\n}",
|
|
206
|
+
"line": 126,
|
|
207
|
+
"fields": [
|
|
208
|
+
"id",
|
|
209
|
+
"points",
|
|
210
|
+
"mass",
|
|
211
|
+
"radius",
|
|
212
|
+
"fixedDt",
|
|
213
|
+
"substeps",
|
|
214
|
+
"iterations",
|
|
215
|
+
"damping",
|
|
216
|
+
"gravity",
|
|
217
|
+
"anchors"
|
|
218
|
+
]
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"name": "RopeState",
|
|
222
|
+
"kind": "InterfaceDeclaration",
|
|
223
|
+
"signature": "export interface RopeState {\n tick: number; simulatedSeconds: number; disposed: boolean;\n positions: Vec3[]; velocities: Vec3[];\n anchors: { index: number; position: Vec3 }[];\n contacts: { tick: number; particle: number; colliderId: string; penetration: number }[];\n maxDistanceError: number;\n resources: { particles: number; constraints: number; anchors: number; colliders: number };\n}",
|
|
224
|
+
"line": 140,
|
|
225
|
+
"fields": [
|
|
226
|
+
"tick",
|
|
227
|
+
"simulatedSeconds",
|
|
228
|
+
"disposed",
|
|
229
|
+
"positions",
|
|
230
|
+
"velocities",
|
|
231
|
+
"anchors",
|
|
232
|
+
"contacts",
|
|
233
|
+
"maxDistanceError",
|
|
234
|
+
"resources"
|
|
235
|
+
]
|
|
236
|
+
},
|
|
237
|
+
{
|
|
238
|
+
"name": "RopeService",
|
|
239
|
+
"kind": "InterfaceDeclaration",
|
|
240
|
+
"signature": "export interface RopeService {\n create(definition: RopeDefinition): void;\n /** Explicit fixed solver ticks; not automatically advanced with the host. A failed batch leaves the rope unchanged. */\n step(id: string, ticks?: number): RopeState;\n inspect(id: string): RopeState;\n setColliders(id: string, colliders: readonly RopeCollider[]): void;\n setAnchor(id: string, index: number, position: Vec3): void;\n releaseAnchor(id: string, index: number): void;\n applyForce(id: string, index: number, force: Vec3): void;\n applyImpulse(id: string, index: number, impulse: Vec3): void;\n destroy(id: string): void;\n}",
|
|
241
|
+
"line": 148,
|
|
242
|
+
"fields": [
|
|
243
|
+
"create",
|
|
244
|
+
"step",
|
|
245
|
+
"inspect",
|
|
246
|
+
"setColliders",
|
|
247
|
+
"setAnchor",
|
|
248
|
+
"releaseAnchor",
|
|
249
|
+
"applyForce",
|
|
250
|
+
"applyImpulse",
|
|
251
|
+
"destroy"
|
|
193
252
|
]
|
|
194
253
|
},
|
|
195
254
|
{
|
|
196
255
|
"name": "NavigationCell",
|
|
197
256
|
"kind": "InterfaceDeclaration",
|
|
198
257
|
"signature": "export interface NavigationCell { readonly x: number; readonly y: number }",
|
|
199
|
-
"line":
|
|
258
|
+
"line": 163,
|
|
200
259
|
"fields": [
|
|
201
260
|
"x",
|
|
202
261
|
"y"
|
|
@@ -206,7 +265,7 @@
|
|
|
206
265
|
"name": "NavigationObstacleUpdate",
|
|
207
266
|
"kind": "InterfaceDeclaration",
|
|
208
267
|
"signature": "export interface NavigationObstacleUpdate { readonly cell: NavigationCell; readonly blocked: boolean }",
|
|
209
|
-
"line":
|
|
268
|
+
"line": 165,
|
|
210
269
|
"fields": [
|
|
211
270
|
"cell",
|
|
212
271
|
"blocked"
|
|
@@ -216,7 +275,7 @@
|
|
|
216
275
|
"name": "NavigationGrid",
|
|
217
276
|
"kind": "InterfaceDeclaration",
|
|
218
277
|
"signature": "export interface NavigationGrid {\n readonly id: string;\n readonly owner: string;\n readonly width: number;\n readonly height: number;\n readonly blocked?: readonly NavigationCell[];\n /** Maximum distinct search cells, including endpoints; defaults to 65536. Raising it increases memory and CPU use. */\n readonly searchCellBudget?: number;\n}",
|
|
219
|
-
"line":
|
|
278
|
+
"line": 166,
|
|
220
279
|
"fields": [
|
|
221
280
|
"id",
|
|
222
281
|
"owner",
|
|
@@ -230,7 +289,7 @@
|
|
|
230
289
|
"name": "NavigationService",
|
|
231
290
|
"kind": "InterfaceDeclaration",
|
|
232
291
|
"signature": "export interface NavigationService {\n createGrid(grid: NavigationGrid): void;\n /** Returns a detached description, including the current blocked cells. */\n getGrid(id: string): NavigationGrid;\n isBlocked(id: string, cell: NavigationCell): boolean;\n setBlocked(id: string, cell: NavigationCell, blocked: boolean): void;\n /** Validates the entire batch before committing; the last change for a repeated cell wins. */\n setBlockedBatch(id: string, updates: readonly NavigationObstacleUpdate[]): void;\n findPath(id: string, start: NavigationCell, end: NavigationCell): readonly NavigationCell[];\n destroyGrid(id: string): void;\n destroyOwner(owner: string): void;\n}",
|
|
233
|
-
"line":
|
|
292
|
+
"line": 175,
|
|
234
293
|
"fields": [
|
|
235
294
|
"createGrid",
|
|
236
295
|
"getGrid",
|
|
@@ -246,13 +305,13 @@
|
|
|
246
305
|
"name": "RenderMode",
|
|
247
306
|
"kind": "TypeAliasDeclaration",
|
|
248
307
|
"signature": "export type RenderMode = \"raster\" | \"hybrid\" | \"path\";",
|
|
249
|
-
"line":
|
|
308
|
+
"line": 187
|
|
250
309
|
},
|
|
251
310
|
{
|
|
252
311
|
"name": "RenderCapabilities",
|
|
253
312
|
"kind": "InterfaceDeclaration",
|
|
254
313
|
"signature": "export interface RenderCapabilities {\n backend: \"webgpu\" | \"webgl2\" | \"uninitialized\";\n compute: boolean;\n availableModes: readonly RenderMode[];\n}",
|
|
255
|
-
"line":
|
|
314
|
+
"line": 188,
|
|
256
315
|
"fields": [
|
|
257
316
|
"backend",
|
|
258
317
|
"compute",
|
|
@@ -263,7 +322,7 @@
|
|
|
263
322
|
"name": "RenderSettings",
|
|
264
323
|
"kind": "InterfaceDeclaration",
|
|
265
324
|
"signature": "export interface RenderSettings {\n mode: RenderMode;\n samplesPerFrame: number;\n maxBounces: number;\n denoise: boolean;\n denoiseIterations: number;\n exposure: number;\n directLighting: boolean;\n indirectLighting: boolean;\n debug: \"beauty\" | \"albedo\" | \"normal\" | \"depth\" | \"samples\";\n}",
|
|
266
|
-
"line":
|
|
325
|
+
"line": 193,
|
|
267
326
|
"fields": [
|
|
268
327
|
"mode",
|
|
269
328
|
"samplesPerFrame",
|
|
@@ -280,7 +339,7 @@
|
|
|
280
339
|
"name": "RenderService",
|
|
281
340
|
"kind": "InterfaceDeclaration",
|
|
282
341
|
"signature": "export interface RenderService {\n configure(settings: Partial<RenderSettings>): void;\n state(): Readonly<RenderSettings>;\n capabilities(): Readonly<RenderCapabilities>;\n setMaterialParameter(material: string, name: string, value: GraphValue): void;\n materialParameters(material: string): Readonly<Record<string, GraphValue>>;\n readonly effects: PostProcessService;\n readonly buffers: RenderBufferBindings;\n readonly textures: RenderTextureBindings;\n}",
|
|
283
|
-
"line":
|
|
342
|
+
"line": 204,
|
|
284
343
|
"fields": [
|
|
285
344
|
"configure",
|
|
286
345
|
"state",
|
|
@@ -296,7 +355,7 @@
|
|
|
296
355
|
"name": "MaterialBufferInput",
|
|
297
356
|
"kind": "InterfaceDeclaration",
|
|
298
357
|
"signature": "export interface MaterialBufferInput {\n /** Shared slot declaration for material and postprocess graphs. */\n name: string;\n type: GraphType;\n /** Optional initial logical compute-buffer ID. */\n buffer?: string;\n /** Optional exact element count required by this slot. */\n count?: number;\n}",
|
|
299
|
-
"line":
|
|
358
|
+
"line": 214,
|
|
300
359
|
"fields": [
|
|
301
360
|
"name",
|
|
302
361
|
"type",
|
|
@@ -308,7 +367,7 @@
|
|
|
308
367
|
"name": "RenderBufferReference",
|
|
309
368
|
"kind": "InterfaceDeclaration",
|
|
310
369
|
"signature": "export interface RenderBufferReference {\n id: string;\n type: GraphType;\n count: number;\n}",
|
|
311
|
-
"line":
|
|
370
|
+
"line": 223,
|
|
312
371
|
"fields": [
|
|
313
372
|
"id",
|
|
314
373
|
"type",
|
|
@@ -319,7 +378,7 @@
|
|
|
319
378
|
"name": "RenderBufferBindings",
|
|
320
379
|
"kind": "InterfaceDeclaration",
|
|
321
380
|
"signature": "export interface RenderBufferBindings {\n bind(target: string, name: string, buffer: ComputeBufferHandle): void;\n unbind(target: string, name: string): void;\n state(target: string): Readonly<Record<string, RenderBufferReference>>;\n}",
|
|
322
|
-
"line":
|
|
381
|
+
"line": 228,
|
|
323
382
|
"fields": [
|
|
324
383
|
"bind",
|
|
325
384
|
"unbind",
|
|
@@ -330,7 +389,7 @@
|
|
|
330
389
|
"name": "MaterialTextureInput",
|
|
331
390
|
"kind": "InterfaceDeclaration",
|
|
332
391
|
"signature": "export interface MaterialTextureInput extends ComputeTextureBinding {\n /** Initial managed texture ID; asset import uses computeTextures/createTexture. */\n texture?: string;\n width?: number;\n height?: number;\n}",
|
|
333
|
-
"line":
|
|
392
|
+
"line": 233,
|
|
334
393
|
"fields": [
|
|
335
394
|
"texture",
|
|
336
395
|
"width",
|
|
@@ -341,7 +400,7 @@
|
|
|
341
400
|
"name": "RenderTextureReference",
|
|
342
401
|
"kind": "InterfaceDeclaration",
|
|
343
402
|
"signature": "export interface RenderTextureReference extends ComputeTextureSize {\n id: string;\n format: \"rgba32float\";\n}",
|
|
344
|
-
"line":
|
|
403
|
+
"line": 239,
|
|
345
404
|
"fields": [
|
|
346
405
|
"id",
|
|
347
406
|
"format"
|
|
@@ -351,7 +410,7 @@
|
|
|
351
410
|
"name": "RenderTextureBindings",
|
|
352
411
|
"kind": "InterfaceDeclaration",
|
|
353
412
|
"signature": "export interface RenderTextureBindings {\n bind(target: string, name: string, texture: ComputeTextureHandle): void;\n unbind(target: string, name: string): void;\n state(target: string): Readonly<Record<string, RenderTextureReference>>;\n}",
|
|
354
|
-
"line":
|
|
413
|
+
"line": 243,
|
|
355
414
|
"fields": [
|
|
356
415
|
"bind",
|
|
357
416
|
"unbind",
|
|
@@ -362,7 +421,7 @@
|
|
|
362
421
|
"name": "PostProcessState",
|
|
363
422
|
"kind": "InterfaceDeclaration",
|
|
364
423
|
"signature": "export interface PostProcessState {\n id: string;\n enabled: boolean;\n parameters: Readonly<Record<string, GraphValue>>;\n}",
|
|
365
|
-
"line":
|
|
424
|
+
"line": 248,
|
|
366
425
|
"fields": [
|
|
367
426
|
"id",
|
|
368
427
|
"enabled",
|
|
@@ -373,7 +432,7 @@
|
|
|
373
432
|
"name": "PostProcessService",
|
|
374
433
|
"kind": "InterfaceDeclaration",
|
|
375
434
|
"signature": "export interface PostProcessService {\n /** Compute-buffer slots declared by definePostProcess, addressed by pass ID. */\n readonly buffers: RenderBufferBindings;\n readonly textures: RenderTextureBindings;\n configure(id: string, settings: { enabled: boolean }): void;\n state(id: string): Readonly<PostProcessState>;\n setParameter(id: string, name: string, value: GraphValue): void;\n /** Clears temporal effect images; it does not modify game or trace accumulation state. */\n resetHistory(id?: string): void;\n}",
|
|
376
|
-
"line":
|
|
435
|
+
"line": 253,
|
|
377
436
|
"fields": [
|
|
378
437
|
"buffers",
|
|
379
438
|
"textures",
|
|
@@ -387,7 +446,7 @@
|
|
|
387
446
|
"name": "ComputeBufferHandle",
|
|
388
447
|
"kind": "InterfaceDeclaration",
|
|
389
448
|
"signature": "export interface ComputeBufferHandle {\n readonly owner: number;\n readonly index: number;\n readonly generation: number;\n}",
|
|
390
|
-
"line":
|
|
449
|
+
"line": 263,
|
|
391
450
|
"fields": [
|
|
392
451
|
"owner",
|
|
393
452
|
"index",
|
|
@@ -398,7 +457,7 @@
|
|
|
398
457
|
"name": "ComputeTaskHandle",
|
|
399
458
|
"kind": "InterfaceDeclaration",
|
|
400
459
|
"signature": "export interface ComputeTaskHandle {\n readonly owner: number;\n readonly id: number;\n}",
|
|
401
|
-
"line":
|
|
460
|
+
"line": 268,
|
|
402
461
|
"fields": [
|
|
403
462
|
"owner",
|
|
404
463
|
"id"
|
|
@@ -408,7 +467,7 @@
|
|
|
408
467
|
"name": "ComputeBufferInput",
|
|
409
468
|
"kind": "InterfaceDeclaration",
|
|
410
469
|
"signature": "export interface ComputeBufferInput {\n id: string;\n type: GraphType;\n count: number;\n data?: readonly GraphValue[];\n}",
|
|
411
|
-
"line":
|
|
470
|
+
"line": 272,
|
|
412
471
|
"fields": [
|
|
413
472
|
"id",
|
|
414
473
|
"type",
|
|
@@ -420,7 +479,7 @@
|
|
|
420
479
|
"name": "ComputeTextureHandle",
|
|
421
480
|
"kind": "InterfaceDeclaration",
|
|
422
481
|
"signature": "export interface ComputeTextureHandle {\n readonly owner: number;\n readonly index: number;\n readonly generation: number;\n readonly kind: \"texture\";\n}",
|
|
423
|
-
"line":
|
|
482
|
+
"line": 278,
|
|
424
483
|
"fields": [
|
|
425
484
|
"owner",
|
|
426
485
|
"index",
|
|
@@ -432,7 +491,7 @@
|
|
|
432
491
|
"name": "ComputeTextureSize",
|
|
433
492
|
"kind": "InterfaceDeclaration",
|
|
434
493
|
"signature": "export interface ComputeTextureSize {\n width: number;\n height: number;\n}",
|
|
435
|
-
"line":
|
|
494
|
+
"line": 284,
|
|
436
495
|
"fields": [
|
|
437
496
|
"width",
|
|
438
497
|
"height"
|
|
@@ -442,7 +501,7 @@
|
|
|
442
501
|
"name": "ComputeTextureDataInput",
|
|
443
502
|
"kind": "InterfaceDeclaration",
|
|
444
503
|
"signature": "export interface ComputeTextureDataInput extends ComputeTextureSize {\n id: string;\n /** Linear rgba32float texels in row-major order, without color-space conversion. */\n data?: readonly Vec4[];\n asset?: never;\n}",
|
|
445
|
-
"line":
|
|
504
|
+
"line": 288,
|
|
446
505
|
"fields": [
|
|
447
506
|
"id",
|
|
448
507
|
"data",
|
|
@@ -453,7 +512,7 @@
|
|
|
453
512
|
"name": "ComputeTextureAssetInput",
|
|
454
513
|
"kind": "InterfaceDeclaration",
|
|
455
514
|
"signature": "export interface ComputeTextureAssetInput {\n id: string;\n asset: AssetDefinition | string;\n width?: never;\n height?: never;\n data?: never;\n}",
|
|
456
|
-
"line":
|
|
515
|
+
"line": 294,
|
|
457
516
|
"fields": [
|
|
458
517
|
"id",
|
|
459
518
|
"asset",
|
|
@@ -466,13 +525,13 @@
|
|
|
466
525
|
"name": "ComputeTextureInput",
|
|
467
526
|
"kind": "TypeAliasDeclaration",
|
|
468
527
|
"signature": "export type ComputeTextureInput = ComputeTextureDataInput | ComputeTextureAssetInput;",
|
|
469
|
-
"line":
|
|
528
|
+
"line": 301
|
|
470
529
|
},
|
|
471
530
|
{
|
|
472
531
|
"name": "ComputeTextureBinding",
|
|
473
532
|
"kind": "InterfaceDeclaration",
|
|
474
533
|
"signature": "export interface ComputeTextureBinding {\n name: string;\n filter?: \"nearest\" | \"linear\";\n wrapU?: \"clamp\" | \"repeat\" | \"mirror\";\n wrapV?: \"clamp\" | \"repeat\" | \"mirror\";\n}",
|
|
475
|
-
"line":
|
|
534
|
+
"line": 302,
|
|
476
535
|
"fields": [
|
|
477
536
|
"name",
|
|
478
537
|
"filter",
|
|
@@ -484,7 +543,7 @@
|
|
|
484
543
|
"name": "ComputeDispatchInput",
|
|
485
544
|
"kind": "InterfaceDeclaration",
|
|
486
545
|
"signature": "export interface ComputeDispatchInput {\n output: ComputeBufferHandle | ComputeTextureHandle;\n /** Handles capture dispatch-time data; task bindings consume that exact successful output revision. */\n bindings?: Readonly<Record<string, ComputeBufferHandle | { task: ComputeTaskHandle }>>;\n /** Named sampled rgba32float textures; task bindings capture that exact texture result. */\n textures?: Readonly<Record<string, ComputeTextureHandle | { task: ComputeTaskHandle }>>;\n /** Ordering only. It never silently refreshes ordinary handle bindings. */\n after?: readonly ComputeTaskHandle[];\n parameters?: Readonly<Record<string, GraphValue>>;\n /** Fixed simulation time by default, not wall-clock time. */\n time?: number;\n}",
|
|
487
|
-
"line":
|
|
546
|
+
"line": 308,
|
|
488
547
|
"fields": [
|
|
489
548
|
"output",
|
|
490
549
|
"bindings",
|
|
@@ -498,7 +557,7 @@
|
|
|
498
557
|
"name": "ComputeTaskState",
|
|
499
558
|
"kind": "InterfaceDeclaration",
|
|
500
559
|
"signature": "export interface ComputeTaskState {\n status: \"queued\" | \"running\" | \"succeeded\" | \"failed\" | \"cancelled\";\n error?: { code: string; message: string; remediation: string };\n}",
|
|
501
|
-
"line":
|
|
560
|
+
"line": 320,
|
|
502
561
|
"fields": [
|
|
503
562
|
"status",
|
|
504
563
|
"error"
|
|
@@ -508,7 +567,7 @@
|
|
|
508
567
|
"name": "ComputeService",
|
|
509
568
|
"kind": "InterfaceDeclaration",
|
|
510
569
|
"signature": "export interface ComputeService {\n createTexture(input: ComputeTextureInput): ComputeTextureHandle;\n resolveTexture(id: string): ComputeTextureHandle;\n describeTexture(texture: ComputeTextureHandle): Readonly<ComputeTextureSize & { id: string; format: \"rgba32float\"; revision: number }>;\n readTexture(texture: ComputeTextureHandle): readonly Vec4[];\n writeTexture(texture: ComputeTextureHandle, data: readonly Vec4[], region?: ComputeTextureSize & { x: number; y: number }): void;\n releaseTexture(texture: ComputeTextureHandle): void;\n createBuffer(input: ComputeBufferInput): ComputeBufferHandle;\n resolve(id: string): ComputeBufferHandle;\n describeBuffer(buffer: ComputeBufferHandle): Readonly<{ id: string; type: GraphType; count: number; revision: number }>;\n /** Last committed GPU result; detached CPU data, never a GPU object. */\n readBuffer(buffer: ComputeBufferHandle): readonly GraphValue[];\n writeBuffer(buffer: ComputeBufferHandle, values: readonly GraphValue[], offset?: number): void;\n releaseBuffer(buffer: ComputeBufferHandle): void;\n dispatch(kernel: ComputeDefinition | string, input: ComputeDispatchInput): ComputeTaskHandle;\n task(task: ComputeTaskHandle): Readonly<ComputeTaskState>;\n tasks(): readonly { handle: ComputeTaskHandle; state: ComputeTaskState }[];\n cancel(task: ComputeTaskHandle): void;\n releaseTask(task: ComputeTaskHandle): void;\n}",
|
|
511
|
-
"line":
|
|
570
|
+
"line": 324,
|
|
512
571
|
"fields": [
|
|
513
572
|
"createTexture",
|
|
514
573
|
"resolveTexture",
|
|
@@ -533,7 +592,7 @@
|
|
|
533
592
|
"name": "InputService",
|
|
534
593
|
"kind": "InterfaceDeclaration",
|
|
535
594
|
"signature": "export interface InputService {\n held(action: string): boolean;\n pressed(action: string): boolean;\n released(action: string): boolean;\n axis(negative: string, positive: string): number;\n}",
|
|
536
|
-
"line":
|
|
595
|
+
"line": 344,
|
|
537
596
|
"fields": [
|
|
538
597
|
"held",
|
|
539
598
|
"pressed",
|
|
@@ -545,7 +604,7 @@
|
|
|
545
604
|
"name": "PhysicsService",
|
|
546
605
|
"kind": "InterfaceDeclaration",
|
|
547
606
|
"signature": "export interface PhysicsService {\n moveCharacter(entity: string, displacement: Vec3): void;\n grounded(entity: string): boolean;\n velocity(entity: string): Vec3;\n setVelocity(entity: string, velocity: Vec3): void;\n impulse(entity: string, impulse: Vec3): void;\n /** Angular velocity in world-space radians per second. */\n angularVelocity(entity: string): Vec3;\n setAngularVelocity(entity: string, velocity: Vec3): void;\n /** Instantaneous world-space angular impulse, in angular-momentum units. */\n torqueImpulse(entity: string, impulse: Vec3): void;\n /** Apply world-space impulse at a world-space point, changing linear and angular motion. */\n impulseAtPoint(entity: string, impulse: Vec3, point: Vec3): void;\n raycast(\n origin: Vec3,\n direction: Vec3,\n maxDistance: number,\n options?: { exclude?: readonly string[]; includeTriggers?: boolean },\n ): { entity: string; distance: number; point: Vec3; normal: Vec3 } | null;\n}",
|
|
548
|
-
"line":
|
|
607
|
+
"line": 350,
|
|
549
608
|
"fields": [
|
|
550
609
|
"moveCharacter",
|
|
551
610
|
"grounded",
|
|
@@ -563,7 +622,7 @@
|
|
|
563
622
|
"name": "AnimationService",
|
|
564
623
|
"kind": "InterfaceDeclaration",
|
|
565
624
|
"signature": "export interface AnimationService {\n play(\n entity: string,\n clip: string,\n options?: { fade?: number; speed?: number; loop?: boolean },\n ): void;\n state(entity: string): {\n clip: string | null;\n time: number;\n playing: boolean;\n };\n}",
|
|
566
|
-
"line":
|
|
625
|
+
"line": 370,
|
|
567
626
|
"fields": [
|
|
568
627
|
"play",
|
|
569
628
|
"state"
|
|
@@ -573,7 +632,7 @@
|
|
|
573
632
|
"name": "CameraService",
|
|
574
633
|
"kind": "InterfaceDeclaration",
|
|
575
634
|
"signature": "export interface CameraService {\n follow(\n entity: string,\n options?: {\n distance?: number;\n height?: number;\n lookHeight?: number;\n yaw?: number;\n smoothing?: number;\n },\n ): void;\n orbit(yaw: number): void;\n}",
|
|
576
|
-
"line":
|
|
635
|
+
"line": 382,
|
|
577
636
|
"fields": [
|
|
578
637
|
"follow",
|
|
579
638
|
"orbit"
|
|
@@ -583,7 +642,7 @@
|
|
|
583
642
|
"name": "UIService",
|
|
584
643
|
"kind": "InterfaceDeclaration",
|
|
585
644
|
"signature": "export interface UIService {\n setText(id: string, text: string): void;\n setProgress(id: string, value: number): void;\n setVisible(id: string, visible: boolean): void;\n}",
|
|
586
|
-
"line":
|
|
645
|
+
"line": 395,
|
|
587
646
|
"fields": [
|
|
588
647
|
"setText",
|
|
589
648
|
"setProgress",
|
|
@@ -594,7 +653,7 @@
|
|
|
594
653
|
"name": "AudioService",
|
|
595
654
|
"kind": "InterfaceDeclaration",
|
|
596
655
|
"signature": "export interface AudioService {\n play(\n id: string,\n options?: { volume?: number; loop?: boolean; entity?: string; bus?: string; priority?: number },\n ): string;\n stop(voice: string): void;\n /** Pause/resume are idempotent; an unknown valid voice id is a no-op. Playback time follows fixed simulation ticks, even while audio is locked. */\n pause(voice: string): void;\n resume(voice: string): void;\n volume(value: number): void;\n /** Set a declared bus gain, independently of master and voice gain. */\n busVolume(id: string, value: number): void;\n /** Fade a declared bus over fixed-tick seconds; busVolume or another fade replaces it. */\n fadeBus(id: string, target: number, duration: number): void;\n}",
|
|
597
|
-
"line":
|
|
656
|
+
"line": 400,
|
|
598
657
|
"fields": [
|
|
599
658
|
"play",
|
|
600
659
|
"stop",
|
|
@@ -609,7 +668,7 @@
|
|
|
609
668
|
"name": "StorageService",
|
|
610
669
|
"kind": "InterfaceDeclaration",
|
|
611
670
|
"signature": "export interface StorageService {\n save(slot: string): void;\n load(slot: string): void;\n status(): {\n state: \"idle\" | \"saving\" | \"loading\" | \"saved\" | \"loaded\" | \"failed\";\n slot: string | null;\n error: string | null;\n };\n}",
|
|
612
|
-
"line":
|
|
671
|
+
"line": 415,
|
|
613
672
|
"fields": [
|
|
614
673
|
"save",
|
|
615
674
|
"load",
|
|
@@ -620,7 +679,7 @@
|
|
|
620
679
|
"name": "SceneService",
|
|
621
680
|
"kind": "InterfaceDeclaration",
|
|
622
681
|
"signature": "export interface SceneService {\n current(): string;\n load(id: string): void;\n}",
|
|
623
|
-
"line":
|
|
682
|
+
"line": 424,
|
|
624
683
|
"fields": [
|
|
625
684
|
"current",
|
|
626
685
|
"load"
|
|
@@ -630,7 +689,7 @@
|
|
|
630
689
|
"name": "ModelDefinition",
|
|
631
690
|
"kind": "InterfaceDeclaration",
|
|
632
691
|
"signature": "export interface ModelDefinition {\n /** Optional whole-model material override; omitted keeps the asset's original materials. */\n material?: MaterialDefinition | string;\n /** Replace all asset material slots with the given exact material name. Mutually exclusive with material. */\n materialSlots?: Record<string, MaterialDefinition | string>;\n castShadow?: boolean;\n receiveShadow?: boolean;\n asset: AssetDefinition | string;\n scale?: number;\n offset?: Vec3;\n rotation?: Vec3;\n animation?: { clip: string; speed?: number; loop?: boolean };\n}",
|
|
633
|
-
"line":
|
|
692
|
+
"line": 428,
|
|
634
693
|
"fields": [
|
|
635
694
|
"material",
|
|
636
695
|
"materialSlots",
|
|
@@ -647,7 +706,7 @@
|
|
|
647
706
|
"name": "RigidBodyDefinition",
|
|
648
707
|
"kind": "InterfaceDeclaration",
|
|
649
708
|
"signature": "export interface RigidBodyDefinition {\n type: \"fixed\" | \"dynamic\" | \"kinematic\";\n collider: {\n shape: \"box\" | \"sphere\" | \"capsule\";\n size?: Vec3;\n radius?: number;\n halfHeight?: number;\n offset?: Vec3;\n };\n mass?: number;\n friction?: number;\n restitution?: number;\n trigger?: boolean;\n}",
|
|
650
|
-
"line":
|
|
709
|
+
"line": 441,
|
|
651
710
|
"fields": [
|
|
652
711
|
"type",
|
|
653
712
|
"collider",
|
|
@@ -661,7 +720,7 @@
|
|
|
661
720
|
"name": "CharacterDefinition",
|
|
662
721
|
"kind": "InterfaceDeclaration",
|
|
663
722
|
"signature": "export interface CharacterDefinition {\n radius: number;\n height: number;\n speed: number;\n jumpSpeed?: number;\n /** Downward acceleration magnitude in world units/s^2; defaults to 9.81. Scene.gravity is a signed vector. */\n gravity?: number;\n}",
|
|
664
|
-
"line":
|
|
723
|
+
"line": 455,
|
|
665
724
|
"fields": [
|
|
666
725
|
"radius",
|
|
667
726
|
"height",
|
|
@@ -674,7 +733,7 @@
|
|
|
674
733
|
"name": "UIElementDefinition",
|
|
675
734
|
"kind": "InterfaceDeclaration",
|
|
676
735
|
"signature": "export interface UIElementDefinition {\n id: string;\n kind: \"text\" | \"bar\" | \"button\" | \"input\";\n text?: string;\n value?: number;\n visible?: boolean;\n anchor?: \"top-left\" | \"top-right\" | \"bottom-left\" | \"bottom-right\" | \"center\";\n x?: number;\n y?: number;\n width?: number;\n color?: string;\n world?: { entity: string; offset?: Vec3; occlude?: boolean };\n}",
|
|
677
|
-
"line":
|
|
736
|
+
"line": 463,
|
|
678
737
|
"fields": [
|
|
679
738
|
"id",
|
|
680
739
|
"kind",
|
|
@@ -693,7 +752,7 @@
|
|
|
693
752
|
"name": "SoundDefinition",
|
|
694
753
|
"kind": "InterfaceDeclaration",
|
|
695
754
|
"signature": "export interface SoundDefinition {\n id: string;\n asset: AssetDefinition | string;\n volume?: number;\n loop?: boolean;\n bus?: string;\n}",
|
|
696
|
-
"line":
|
|
755
|
+
"line": 476,
|
|
697
756
|
"fields": [
|
|
698
757
|
"id",
|
|
699
758
|
"asset",
|
|
@@ -706,7 +765,7 @@
|
|
|
706
765
|
"name": "AudioBusDefinition",
|
|
707
766
|
"kind": "InterfaceDeclaration",
|
|
708
767
|
"signature": "export interface AudioBusDefinition {\n id: string;\n volume?: number;\n}",
|
|
709
|
-
"line":
|
|
768
|
+
"line": 483,
|
|
710
769
|
"fields": [
|
|
711
770
|
"id",
|
|
712
771
|
"volume"
|
|
@@ -716,43 +775,43 @@
|
|
|
716
775
|
"name": "SYSTEM_PHASES",
|
|
717
776
|
"kind": "constant",
|
|
718
777
|
"signature": "SYSTEM_PHASES = [\n \"input\",\n \"prePhysics\",\n \"physics\",\n \"postPhysics\",\n \"update\",\n \"presentation\",\n] as const",
|
|
719
|
-
"line":
|
|
778
|
+
"line": 487
|
|
720
779
|
},
|
|
721
780
|
{
|
|
722
781
|
"name": "SystemPhase",
|
|
723
782
|
"kind": "TypeAliasDeclaration",
|
|
724
783
|
"signature": "export type SystemPhase = (typeof SYSTEM_PHASES)[number];",
|
|
725
|
-
"line":
|
|
784
|
+
"line": 495
|
|
726
785
|
},
|
|
727
786
|
{
|
|
728
787
|
"name": "Geometry",
|
|
729
788
|
"kind": "TypeAliasDeclaration",
|
|
730
789
|
"signature": "export type Geometry =\n | { kind: \"box\"; size?: Vec3 }\n | { kind: \"sphere\"; radius?: number; segments?: number }\n | { kind: \"plane\"; size?: readonly [number, number] };",
|
|
731
|
-
"line":
|
|
790
|
+
"line": 496
|
|
732
791
|
},
|
|
733
792
|
{
|
|
734
793
|
"name": "GRAPH_TYPES",
|
|
735
794
|
"kind": "constant",
|
|
736
795
|
"signature": "GRAPH_TYPES = [\"float\", \"vec2\", \"vec3\", \"vec4\", \"bool\"] as const",
|
|
737
|
-
"line":
|
|
796
|
+
"line": 500
|
|
738
797
|
},
|
|
739
798
|
{
|
|
740
799
|
"name": "GraphType",
|
|
741
800
|
"kind": "TypeAliasDeclaration",
|
|
742
801
|
"signature": "export type GraphType = typeof GRAPH_TYPES[number];",
|
|
743
|
-
"line":
|
|
802
|
+
"line": 501
|
|
744
803
|
},
|
|
745
804
|
{
|
|
746
805
|
"name": "GraphValue",
|
|
747
806
|
"kind": "TypeAliasDeclaration",
|
|
748
807
|
"signature": "export type GraphValue = number | boolean | Vec2 | Vec3 | Vec4;",
|
|
749
|
-
"line":
|
|
808
|
+
"line": 502
|
|
750
809
|
},
|
|
751
810
|
{
|
|
752
811
|
"name": "GraphParameter",
|
|
753
812
|
"kind": "InterfaceDeclaration",
|
|
754
813
|
"signature": "export interface GraphParameter {\n name: string;\n type: GraphType;\n default: GraphValue;\n}",
|
|
755
|
-
"line":
|
|
814
|
+
"line": 503,
|
|
756
815
|
"fields": [
|
|
757
816
|
"name",
|
|
758
817
|
"type",
|
|
@@ -763,31 +822,31 @@
|
|
|
763
822
|
"name": "GRAPH_INPUT_TYPES",
|
|
764
823
|
"kind": "constant",
|
|
765
824
|
"signature": "GRAPH_INPUT_TYPES = {\n uv: \"vec2\", uv1: \"vec2\", positionWorld: \"vec3\", normalWorld: \"vec3\",\n viewDirectionWorld: \"vec3\", vertexColor: \"vec4\", index: \"float\",\n screenSize: \"vec2\", texelSize: \"vec2\",\n pixelCoord: \"vec2\", outputSize: \"vec2\",\n positionLocal: \"vec3\", normalLocal: \"vec3\", vertexIndex: \"float\", instanceIndex: \"float\",\n} as const",
|
|
766
|
-
"line":
|
|
825
|
+
"line": 508
|
|
767
826
|
},
|
|
768
827
|
{
|
|
769
828
|
"name": "GraphInputName",
|
|
770
829
|
"kind": "TypeAliasDeclaration",
|
|
771
830
|
"signature": "export type GraphInputName = keyof typeof GRAPH_INPUT_TYPES;",
|
|
772
|
-
"line":
|
|
831
|
+
"line": 515
|
|
773
832
|
},
|
|
774
833
|
{
|
|
775
834
|
"name": "GRAPH_OPERATIONS",
|
|
776
835
|
"kind": "constant",
|
|
777
836
|
"signature": "GRAPH_OPERATIONS = {\n unary: [\"sin\", \"cos\", \"abs\", \"floor\", \"ceil\", \"fract\", \"negate\", \"saturate\", \"normalize\", \"length\", \"safeSqrt\"] as const,\n binary: [\"add\", \"subtract\", \"multiply\", \"safeDivide\", \"min\", \"max\", \"dot\", \"cross\", \"step\", \"lessThan\", \"lessEqual\", \"greaterThan\", \"greaterEqual\", \"equal\", \"and\", \"or\"] as const,\n ternary: [\"mix\", \"clamp\", \"smoothstep\", \"select\"] as const,\n} as const",
|
|
778
|
-
"line":
|
|
837
|
+
"line": 516
|
|
779
838
|
},
|
|
780
839
|
{
|
|
781
840
|
"name": "GraphNode",
|
|
782
841
|
"kind": "TypeAliasDeclaration",
|
|
783
842
|
"signature": "export type GraphNode =\n | { id: string; op: \"float\"; value: number }\n | { id: string; op: \"bool\"; value: boolean }\n | { id: string; op: \"vec2\"; value: Vec2 }\n | { id: string; op: \"vec3\"; value: Vec3 }\n | { id: string; op: \"vec4\"; value: Vec4 }\n | { id: string; op: \"time\" }\n | { id: string; op: \"input\"; name: GraphInputName }\n | { id: string; op: \"parameter\"; name: string }\n | { id: string; op: typeof GRAPH_OPERATIONS.unary[number] | \"not\"; inputs: readonly [string] }\n | { id: string; op: typeof GRAPH_OPERATIONS.binary[number]; inputs: readonly [string, string] }\n | { id: string; op: typeof GRAPH_OPERATIONS.ternary[number]; inputs: readonly [string, string, string] }\n | { id: string; op: \"compose2\"; inputs: readonly [string, string] }\n | { id: string; op: \"compose3\"; inputs: readonly [string, string, string] }\n | { id: string; op: \"compose4\"; inputs: readonly [string, string, string, string] }\n | { id: string; op: \"swizzle\"; inputs: readonly [string]; components: string }\n | { id: string; op: \"sampleTexture\"; inputs: readonly [string]; texture: AssetDefinition | string }\n | { id: string; op: \"readBuffer\"; inputs: readonly [string]; buffer: string }\n | { id: string; op: \"sampleFrame\"; inputs: readonly [string]; channel: string }\n | { id: string; op: \"sampleHistory\"; inputs: readonly [string]; channel: string };",
|
|
784
|
-
"line":
|
|
843
|
+
"line": 521
|
|
785
844
|
},
|
|
786
845
|
{
|
|
787
846
|
"name": "Graph",
|
|
788
847
|
"kind": "InterfaceDeclaration",
|
|
789
848
|
"signature": "export interface Graph {\n nodes: readonly GraphNode[];\n output: string;\n parameters?: readonly GraphParameter[];\n}",
|
|
790
|
-
"line":
|
|
849
|
+
"line": 541,
|
|
791
850
|
"fields": [
|
|
792
851
|
"nodes",
|
|
793
852
|
"output",
|
|
@@ -798,7 +857,7 @@
|
|
|
798
857
|
"name": "MaterialGraphs",
|
|
799
858
|
"kind": "InterfaceDeclaration",
|
|
800
859
|
"signature": "export interface MaterialGraphs {\n baseColor?: Graph;\n emissive?: Graph;\n roughness?: Graph;\n metalness?: Graph;\n opacity?: Graph;\n /** Absolute, unsided world-space normal; engine applies material boundary orientation. */\n normalWorld?: Graph;\n}",
|
|
801
|
-
"line":
|
|
860
|
+
"line": 546,
|
|
802
861
|
"fields": [
|
|
803
862
|
"baseColor",
|
|
804
863
|
"emissive",
|
|
@@ -812,7 +871,7 @@
|
|
|
812
871
|
"name": "VertexGraphs",
|
|
813
872
|
"kind": "InterfaceDeclaration",
|
|
814
873
|
"signature": "export interface VertexGraphs {\n /** Absolute object-local position after built-in morph, skin and instance transforms. */\n position?: Graph;\n /** Unsided object-local normal in the same domain; zero keeps the normalized input normal. */\n normal?: Graph;\n}",
|
|
815
|
-
"line":
|
|
874
|
+
"line": 555,
|
|
816
875
|
"fields": [
|
|
817
876
|
"position",
|
|
818
877
|
"normal"
|
|
@@ -822,7 +881,7 @@
|
|
|
822
881
|
"name": "MaterialInput",
|
|
823
882
|
"kind": "InterfaceDeclaration",
|
|
824
883
|
"signature": "export interface MaterialInput {\n id: string;\n color?: string;\n roughness?: number;\n metalness?: number;\n texture?: AssetDefinition | string;\n graph?: Graph;\n graphs?: MaterialGraphs;\n vertex?: VertexGraphs;\n buffers?: readonly MaterialBufferInput[];\n textures?: readonly MaterialTextureInput[];\n emissive?: string;\n emissiveIntensity?: number;\n opacity?: number;\n alphaTest?: number;\n side?: \"front\" | \"back\" | \"double\";\n /** Closed-volume dielectric fraction; opacity remains independent stochastic coverage. */\n transmission?: number;\n ior?: number;\n /** Nontransmissive dielectric specular strength in [0,1]. Defaults to 1. */\n specularIntensity?: number;\n /** Nontransmissive dielectric specular color, a hex or named sRGB color. Defaults to white. */\n specularColor?: string;\n attenuationColor?: string;\n /** World-space distance for Beer absorption; omitted means no absorption. */\n attenuationDistance?: number;\n}",
|
|
825
|
-
"line":
|
|
884
|
+
"line": 561,
|
|
826
885
|
"fields": [
|
|
827
886
|
"id",
|
|
828
887
|
"color",
|
|
@@ -851,7 +910,7 @@
|
|
|
851
910
|
"name": "MaterialDefinition",
|
|
852
911
|
"kind": "InterfaceDeclaration",
|
|
853
912
|
"signature": "export interface MaterialDefinition extends MaterialInput {\n readonly kind: \"material\";\n}",
|
|
854
|
-
"line":
|
|
913
|
+
"line": 588,
|
|
855
914
|
"fields": [
|
|
856
915
|
"kind"
|
|
857
916
|
]
|
|
@@ -860,7 +919,7 @@
|
|
|
860
919
|
"name": "PostProcessInput",
|
|
861
920
|
"kind": "InterfaceDeclaration",
|
|
862
921
|
"signature": "export interface PostProcessInput {\n id: string;\n buffers?: readonly MaterialBufferInput[];\n textures?: readonly MaterialTextureInput[];\n /** Linear HDR vec4 output. Frame channels: scene.color, scene.normal, scene.depth, or an earlier pass ID. */\n graph: Graph;\n enabled?: boolean;\n}",
|
|
863
|
-
"line":
|
|
922
|
+
"line": 591,
|
|
864
923
|
"fields": [
|
|
865
924
|
"id",
|
|
866
925
|
"buffers",
|
|
@@ -873,7 +932,7 @@
|
|
|
873
932
|
"name": "PostProcessDefinition",
|
|
874
933
|
"kind": "InterfaceDeclaration",
|
|
875
934
|
"signature": "export interface PostProcessDefinition extends PostProcessInput {\n readonly kind: \"postprocess\";\n}",
|
|
876
|
-
"line":
|
|
935
|
+
"line": 599,
|
|
877
936
|
"fields": [
|
|
878
937
|
"kind"
|
|
879
938
|
]
|
|
@@ -882,7 +941,7 @@
|
|
|
882
941
|
"name": "ComputeInput",
|
|
883
942
|
"kind": "InterfaceDeclaration",
|
|
884
943
|
"signature": "export interface ComputeInput {\n id: string;\n graph: Graph;\n outputType: GraphType;\n count: number;\n workgroupSize?: number;\n buffers?: readonly { name: string; type: GraphType }[];\n textures?: readonly ComputeTextureBinding[];\n}",
|
|
885
|
-
"line":
|
|
944
|
+
"line": 602,
|
|
886
945
|
"fields": [
|
|
887
946
|
"id",
|
|
888
947
|
"graph",
|
|
@@ -897,7 +956,7 @@
|
|
|
897
956
|
"name": "ComputeDefinition",
|
|
898
957
|
"kind": "InterfaceDeclaration",
|
|
899
958
|
"signature": "export interface ComputeDefinition extends ComputeInput {\n readonly kind: \"compute\";\n}",
|
|
900
|
-
"line":
|
|
959
|
+
"line": 611,
|
|
901
960
|
"fields": [
|
|
902
961
|
"kind"
|
|
903
962
|
]
|
|
@@ -906,7 +965,7 @@
|
|
|
906
965
|
"name": "AssetInput",
|
|
907
966
|
"kind": "InterfaceDeclaration",
|
|
908
967
|
"signature": "export interface AssetInput {\n id: string;\n path: string;\n type: \"texture\" | \"binary\" | \"model\" | \"audio\";\n source?: string;\n license?: string;\n attribution?: string;\n /** Texture imports only; defaults to sRGB color. Data/normal/ORM textures use linear. */\n colorSpace?: \"srgb\" | \"linear\";\n}",
|
|
909
|
-
"line":
|
|
968
|
+
"line": 614,
|
|
910
969
|
"fields": [
|
|
911
970
|
"id",
|
|
912
971
|
"path",
|
|
@@ -921,7 +980,7 @@
|
|
|
921
980
|
"name": "AssetDefinition",
|
|
922
981
|
"kind": "InterfaceDeclaration",
|
|
923
982
|
"signature": "export interface AssetDefinition extends AssetInput {\n readonly kind: \"asset\";\n}",
|
|
924
|
-
"line":
|
|
983
|
+
"line": 624,
|
|
925
984
|
"fields": [
|
|
926
985
|
"kind"
|
|
927
986
|
]
|
|
@@ -930,7 +989,7 @@
|
|
|
930
989
|
"name": "MeshDefinition",
|
|
931
990
|
"kind": "InterfaceDeclaration",
|
|
932
991
|
"signature": "export interface MeshDefinition {\n geometry: Geometry;\n material: MaterialDefinition | string;\n castShadow?: boolean;\n receiveShadow?: boolean;\n}",
|
|
933
|
-
"line":
|
|
992
|
+
"line": 627,
|
|
934
993
|
"fields": [
|
|
935
994
|
"geometry",
|
|
936
995
|
"material",
|
|
@@ -942,7 +1001,7 @@
|
|
|
942
1001
|
"name": "LightDefinition",
|
|
943
1002
|
"kind": "InterfaceDeclaration",
|
|
944
1003
|
"signature": "export interface LightDefinition {\n kind: \"directional\" | \"point\";\n color?: string;\n intensity?: number;\n castShadow?: boolean;\n target?: Vec3;\n shadow?: {\n mapSize?: number;\n extent?: number;\n bias?: number;\n normalBias?: number;\n near?: number;\n far?: number;\n };\n}",
|
|
945
|
-
"line":
|
|
1004
|
+
"line": 633,
|
|
946
1005
|
"fields": [
|
|
947
1006
|
"kind",
|
|
948
1007
|
"color",
|
|
@@ -956,7 +1015,7 @@
|
|
|
956
1015
|
"name": "EntityInput",
|
|
957
1016
|
"kind": "InterfaceDeclaration",
|
|
958
1017
|
"signature": "export interface EntityInput {\n id: string;\n prefab?: PrefabDefinition | string;\n parent?: string;\n transform?: TransformPatch;\n mesh?: MeshDefinition;\n light?: LightDefinition;\n model?: ModelDefinition;\n rigidBody?: RigidBodyDefinition;\n character?: CharacterDefinition;\n components?: readonly ComponentInstance[];\n}",
|
|
959
|
-
"line":
|
|
1018
|
+
"line": 648,
|
|
960
1019
|
"fields": [
|
|
961
1020
|
"id",
|
|
962
1021
|
"prefab",
|
|
@@ -974,7 +1033,7 @@
|
|
|
974
1033
|
"name": "PrefabInput",
|
|
975
1034
|
"kind": "InterfaceDeclaration",
|
|
976
1035
|
"signature": "export interface PrefabInput extends Omit<EntityInput, \"prefab\" | \"parent\"> {\n extends?: PrefabDefinition | string;\n}",
|
|
977
|
-
"line":
|
|
1036
|
+
"line": 660,
|
|
978
1037
|
"fields": [
|
|
979
1038
|
"extends"
|
|
980
1039
|
]
|
|
@@ -983,7 +1042,7 @@
|
|
|
983
1042
|
"name": "PrefabDefinition",
|
|
984
1043
|
"kind": "InterfaceDeclaration",
|
|
985
1044
|
"signature": "export interface PrefabDefinition extends PrefabInput {\n readonly kind: \"prefab\";\n}",
|
|
986
|
-
"line":
|
|
1045
|
+
"line": 663,
|
|
987
1046
|
"fields": [
|
|
988
1047
|
"kind"
|
|
989
1048
|
]
|
|
@@ -992,7 +1051,7 @@
|
|
|
992
1051
|
"name": "SceneInput",
|
|
993
1052
|
"kind": "InterfaceDeclaration",
|
|
994
1053
|
"signature": "export interface SceneInput {\n id: string;\n camera?: {\n position: Vec3;\n target: Vec3;\n fov?: number;\n near?: number;\n far?: number;\n };\n environment?: {\n background?: string;\n ambientIntensity?: number;\n lighting?: \"none\" | \"studio\";\n };\n follow?: {\n entity: string;\n distance?: number;\n height?: number;\n lookHeight?: number;\n yaw?: number;\n smoothing?: number;\n };\n gravity?: Vec3;\n entities: readonly EntityInput[];\n}",
|
|
995
|
-
"line":
|
|
1054
|
+
"line": 666,
|
|
996
1055
|
"fields": [
|
|
997
1056
|
"id",
|
|
998
1057
|
"camera",
|
|
@@ -1006,7 +1065,7 @@
|
|
|
1006
1065
|
"name": "SceneDefinition",
|
|
1007
1066
|
"kind": "InterfaceDeclaration",
|
|
1008
1067
|
"signature": "export interface SceneDefinition extends SceneInput {\n readonly kind: \"scene\";\n}",
|
|
1009
|
-
"line":
|
|
1068
|
+
"line": 691,
|
|
1010
1069
|
"fields": [
|
|
1011
1070
|
"kind"
|
|
1012
1071
|
]
|
|
@@ -1015,7 +1074,7 @@
|
|
|
1015
1074
|
"name": "SystemInput",
|
|
1016
1075
|
"kind": "InterfaceDeclaration",
|
|
1017
1076
|
"signature": "export interface SystemInput {\n id: string;\n phase?: SystemPhase;\n before?: readonly string[];\n after?: readonly string[];\n reads?: readonly string[];\n writes?: readonly string[];\n structural?: boolean;\n run: (engine: SystemContext, dt: number) => void;\n}",
|
|
1018
|
-
"line":
|
|
1077
|
+
"line": 694,
|
|
1019
1078
|
"fields": [
|
|
1020
1079
|
"id",
|
|
1021
1080
|
"phase",
|
|
@@ -1031,7 +1090,7 @@
|
|
|
1031
1090
|
"name": "SystemDefinition",
|
|
1032
1091
|
"kind": "InterfaceDeclaration",
|
|
1033
1092
|
"signature": "export interface SystemDefinition extends SystemInput {\n readonly kind: \"system\";\n}",
|
|
1034
|
-
"line":
|
|
1093
|
+
"line": 704,
|
|
1035
1094
|
"fields": [
|
|
1036
1095
|
"kind"
|
|
1037
1096
|
]
|
|
@@ -1040,7 +1099,7 @@
|
|
|
1040
1099
|
"name": "GameInput",
|
|
1041
1100
|
"kind": "InterfaceDeclaration",
|
|
1042
1101
|
"signature": "export interface GameInput {\n id: string;\n scene: SceneDefinition;\n systems?: readonly SystemDefinition[];\n components?: readonly ComponentDefinition[];\n prefabs?: readonly PrefabDefinition[];\n materials?: readonly MaterialDefinition[];\n computes?: readonly ComputeDefinition[];\n computeBuffers?: readonly ComputeBufferInput[];\n computeTextures?: readonly ComputeTextureInput[];\n assets?: readonly AssetDefinition[];\n scenes?: readonly SceneDefinition[];\n input?: Readonly<Record<string, readonly string[]>>;\n ui?: readonly UIElementDefinition[];\n sounds?: readonly SoundDefinition[];\n audioBuses?: readonly AudioBusDefinition[];\n render?: Partial<RenderSettings>;\n postProcesses?: readonly PostProcessDefinition[];\n}",
|
|
1043
|
-
"line":
|
|
1102
|
+
"line": 707,
|
|
1044
1103
|
"fields": [
|
|
1045
1104
|
"id",
|
|
1046
1105
|
"scene",
|
|
@@ -1065,7 +1124,7 @@
|
|
|
1065
1124
|
"name": "GameDefinition",
|
|
1066
1125
|
"kind": "InterfaceDeclaration",
|
|
1067
1126
|
"signature": "export interface GameDefinition extends GameInput {\n readonly kind: \"game\";\n}",
|
|
1068
|
-
"line":
|
|
1127
|
+
"line": 726,
|
|
1069
1128
|
"fields": [
|
|
1070
1129
|
"kind"
|
|
1071
1130
|
]
|
|
@@ -1074,7 +1133,7 @@
|
|
|
1074
1133
|
"name": "GameInstance",
|
|
1075
1134
|
"kind": "InterfaceDeclaration",
|
|
1076
1135
|
"signature": "export interface GameInstance {\n update(dt: number): void;\n dispose(): void;\n}",
|
|
1077
|
-
"line":
|
|
1136
|
+
"line": 729,
|
|
1078
1137
|
"fields": [
|
|
1079
1138
|
"update",
|
|
1080
1139
|
"dispose"
|
|
@@ -1084,61 +1143,61 @@
|
|
|
1084
1143
|
"name": "defineComponent",
|
|
1085
1144
|
"kind": "FunctionDeclaration",
|
|
1086
1145
|
"signature": "export function defineComponent<const S extends ComponentSchema>(input: {\n id: string;\n schema: S;\n}): ComponentDefinition<S>;",
|
|
1087
|
-
"line":
|
|
1146
|
+
"line": 733
|
|
1088
1147
|
},
|
|
1089
1148
|
{
|
|
1090
1149
|
"name": "defineMaterial",
|
|
1091
1150
|
"kind": "FunctionDeclaration",
|
|
1092
1151
|
"signature": "export function defineMaterial(input: MaterialInput): MaterialDefinition;",
|
|
1093
|
-
"line":
|
|
1152
|
+
"line": 739
|
|
1094
1153
|
},
|
|
1095
1154
|
{
|
|
1096
1155
|
"name": "definePostProcess",
|
|
1097
1156
|
"kind": "FunctionDeclaration",
|
|
1098
1157
|
"signature": "export function definePostProcess(input: PostProcessInput): PostProcessDefinition;",
|
|
1099
|
-
"line":
|
|
1158
|
+
"line": 742
|
|
1100
1159
|
},
|
|
1101
1160
|
{
|
|
1102
1161
|
"name": "defineCompute",
|
|
1103
1162
|
"kind": "FunctionDeclaration",
|
|
1104
1163
|
"signature": "export function defineCompute(input: ComputeInput): ComputeDefinition;",
|
|
1105
|
-
"line":
|
|
1164
|
+
"line": 745
|
|
1106
1165
|
},
|
|
1107
1166
|
{
|
|
1108
1167
|
"name": "defineAsset",
|
|
1109
1168
|
"kind": "FunctionDeclaration",
|
|
1110
1169
|
"signature": "export function defineAsset(input: AssetInput): AssetDefinition;",
|
|
1111
|
-
"line":
|
|
1170
|
+
"line": 748
|
|
1112
1171
|
},
|
|
1113
1172
|
{
|
|
1114
1173
|
"name": "definePrefab",
|
|
1115
1174
|
"kind": "FunctionDeclaration",
|
|
1116
1175
|
"signature": "export function definePrefab(input: PrefabInput): PrefabDefinition;",
|
|
1117
|
-
"line":
|
|
1176
|
+
"line": 751
|
|
1118
1177
|
},
|
|
1119
1178
|
{
|
|
1120
1179
|
"name": "defineScene",
|
|
1121
1180
|
"kind": "FunctionDeclaration",
|
|
1122
1181
|
"signature": "export function defineScene(input: SceneInput): SceneDefinition;",
|
|
1123
|
-
"line":
|
|
1182
|
+
"line": 754
|
|
1124
1183
|
},
|
|
1125
1184
|
{
|
|
1126
1185
|
"name": "defineSystem",
|
|
1127
1186
|
"kind": "FunctionDeclaration",
|
|
1128
1187
|
"signature": "export function defineSystem(input: SystemInput): SystemDefinition;",
|
|
1129
|
-
"line":
|
|
1188
|
+
"line": 757
|
|
1130
1189
|
},
|
|
1131
1190
|
{
|
|
1132
1191
|
"name": "defineGame",
|
|
1133
1192
|
"kind": "FunctionDeclaration",
|
|
1134
1193
|
"signature": "export function defineGame(input: GameInput): GameDefinition;",
|
|
1135
|
-
"line":
|
|
1194
|
+
"line": 760
|
|
1136
1195
|
},
|
|
1137
1196
|
{
|
|
1138
1197
|
"name": "instantiateGame",
|
|
1139
1198
|
"kind": "FunctionDeclaration",
|
|
1140
1199
|
"signature": "export function instantiateGame(\n game: GameDefinition,\n engine: EngineFacade,\n): GameInstance;",
|
|
1141
|
-
"line":
|
|
1200
|
+
"line": 764
|
|
1142
1201
|
}
|
|
1143
1202
|
],
|
|
1144
1203
|
"installedDeclarations": "lib/sdk/index.d.ts",
|