pelican-engine 0.3.16 → 0.3.17
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 +15 -3
- package/distribution.json +13 -12
- package/docs/STATUS.md +2 -2
- package/docs/api/REFERENCE.md +112 -92
- package/docs/api/index.json +111 -94
- package/docs/npm/GAME-AUTHOR.md +15 -3
- package/engine.manifest.json +1 -1
- package/lib/sdk/index.d.ts +18 -2
- package/lib/sdk/index.js +1 -1
- package/lib/simulation/rope-plugin.js +12 -4
- package/lib/simulation/rope-self-collision.js +102 -0
- package/lib/simulation/rope.js +36 -5
- 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.17",
|
|
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.17\"",
|
|
12
12
|
"line": 2
|
|
13
13
|
},
|
|
14
14
|
{
|
|
@@ -240,7 +240,7 @@
|
|
|
240
240
|
{
|
|
241
241
|
"name": "RopeDefinition",
|
|
242
242
|
"kind": "InterfaceDeclaration",
|
|
243
|
-
"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 /** When true, step once after each physics phase; defaults to false (manual stepping). */\n autoStep?: boolean;\n /** Automatically sample and react to existing dynamic, non-trigger sphere bodies. Requires autoStep. */\n bodyColliders?: readonly RopeBodyCollider[];\n /** Resolve sphere contacts on segment interiors; defaults to true for new ropes. */\n segmentCollisions?: boolean;\n /** Optional segmented presentation using an already-declared material id. */\n visual?: RopeVisualOptions;\n substeps?: number;\n iterations?: number;\n damping?: number;\n gravity?: Vec3;\n anchors?: readonly { index: number; position: Vec3 }[];\n}",
|
|
243
|
+
"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 /** When true, step once after each physics phase; defaults to false (manual stepping). */\n autoStep?: boolean;\n /** Automatically sample and react to existing dynamic, non-trigger sphere bodies. Requires autoStep. */\n bodyColliders?: readonly RopeBodyCollider[];\n /** Resolve sphere contacts on segment interiors; defaults to true for new ropes. */\n segmentCollisions?: boolean;\n /** Resolve discrete non-adjacent segment self contacts; defaults to true for new ropes. */\n selfCollisions?: boolean;\n /** Optional segmented presentation using an already-declared material id. */\n visual?: RopeVisualOptions;\n substeps?: number;\n iterations?: number;\n damping?: number;\n gravity?: Vec3;\n anchors?: readonly { index: number; position: Vec3 }[];\n}",
|
|
244
244
|
"line": 146,
|
|
245
245
|
"fields": [
|
|
246
246
|
"id",
|
|
@@ -251,6 +251,7 @@
|
|
|
251
251
|
"autoStep",
|
|
252
252
|
"bodyColliders",
|
|
253
253
|
"segmentCollisions",
|
|
254
|
+
"selfCollisions",
|
|
254
255
|
"visual",
|
|
255
256
|
"substeps",
|
|
256
257
|
"iterations",
|
|
@@ -263,7 +264,7 @@
|
|
|
263
264
|
"name": "RopeContact",
|
|
264
265
|
"kind": "InterfaceDeclaration",
|
|
265
266
|
"signature": "export interface RopeContact {\n tick: number; particle: number; colliderId: string; penetration: number;\n /** Opposite of particle contact impulses, N·s; absent in older snapshots. */\n reactionImpulse?: Vec3;\n /** Angular impulse about the world origin; absent in older snapshots. */\n reactionAngularImpulse?: Vec3;\n}",
|
|
266
|
-
"line":
|
|
267
|
+
"line": 171,
|
|
267
268
|
"fields": [
|
|
268
269
|
"tick",
|
|
269
270
|
"particle",
|
|
@@ -277,7 +278,7 @@
|
|
|
277
278
|
"name": "RopeSegmentContact",
|
|
278
279
|
"kind": "InterfaceDeclaration",
|
|
279
280
|
"signature": "export interface RopeSegmentContact {\n tick: number;\n /** Zero-based index of the first endpoint; the second is segment + 1. */\n segment: number;\n colliderId: string;\n /** Last closest-point fraction from the first endpoint toward the second. */\n fraction: number;\n penetration: number;\n reactionImpulse?: Vec3;\n reactionAngularImpulse?: Vec3;\n}",
|
|
280
|
-
"line":
|
|
281
|
+
"line": 179,
|
|
281
282
|
"fields": [
|
|
282
283
|
"tick",
|
|
283
284
|
"segment",
|
|
@@ -288,21 +289,37 @@
|
|
|
288
289
|
"reactionAngularImpulse"
|
|
289
290
|
]
|
|
290
291
|
},
|
|
292
|
+
{
|
|
293
|
+
"name": "RopeSelfContact",
|
|
294
|
+
"kind": "InterfaceDeclaration",
|
|
295
|
+
"signature": "export interface RopeSelfContact {\n tick: number;\n /** Zero-based first endpoint of each non-adjacent segment, ordered ascending. */\n firstSegment: number; secondSegment: number;\n /** Last closest-point fractions along the respective segments. */\n firstFraction: number; secondFraction: number;\n /** Maximum observed overlap in metres during this tick. */\n penetration: number;\n}",
|
|
296
|
+
"line": 191,
|
|
297
|
+
"fields": [
|
|
298
|
+
"tick",
|
|
299
|
+
"firstSegment",
|
|
300
|
+
"secondSegment",
|
|
301
|
+
"firstFraction",
|
|
302
|
+
"secondFraction",
|
|
303
|
+
"penetration"
|
|
304
|
+
]
|
|
305
|
+
},
|
|
291
306
|
{
|
|
292
307
|
"name": "RopeState",
|
|
293
308
|
"kind": "InterfaceDeclaration",
|
|
294
|
-
"signature": "export interface RopeState {\n tick: number; simulatedSeconds: number; disposed: boolean;\n segmentCollisions: boolean;\n positions: Vec3[]; velocities: Vec3[];\n anchors: { index: number; position: Vec3 }[];\n contacts: RopeContact[];\n segmentContacts: RopeSegmentContact[];\n maxDistanceError: number;\n resources: { particles: number; constraints: number; anchors: number; colliders: number };\n}",
|
|
295
|
-
"line":
|
|
309
|
+
"signature": "export interface RopeState {\n tick: number; simulatedSeconds: number; disposed: boolean;\n segmentCollisions: boolean;\n selfCollisions: boolean;\n positions: Vec3[]; velocities: Vec3[];\n anchors: { index: number; position: Vec3 }[];\n contacts: RopeContact[];\n segmentContacts: RopeSegmentContact[];\n selfContacts: RopeSelfContact[];\n maxDistanceError: number;\n resources: { particles: number; constraints: number; anchors: number; colliders: number };\n}",
|
|
310
|
+
"line": 200,
|
|
296
311
|
"fields": [
|
|
297
312
|
"tick",
|
|
298
313
|
"simulatedSeconds",
|
|
299
314
|
"disposed",
|
|
300
315
|
"segmentCollisions",
|
|
316
|
+
"selfCollisions",
|
|
301
317
|
"positions",
|
|
302
318
|
"velocities",
|
|
303
319
|
"anchors",
|
|
304
320
|
"contacts",
|
|
305
321
|
"segmentContacts",
|
|
322
|
+
"selfContacts",
|
|
306
323
|
"maxDistanceError",
|
|
307
324
|
"resources"
|
|
308
325
|
]
|
|
@@ -311,7 +328,7 @@
|
|
|
311
328
|
"name": "RopeService",
|
|
312
329
|
"kind": "InterfaceDeclaration",
|
|
313
330
|
"signature": "export interface RopeService {\n create(definition: RopeDefinition): void;\n /** Explicit ticks for manual ropes only. Auto-stepped ropes reject this call. A failed batch leaves the rope unchanged. */\n step(id: string, ticks?: number): RopeState;\n inspect(id: string): RopeState;\n /** Detached visual descriptions, sorted by rope id; empty when no visuals are requested. */\n visuals(): readonly RopeVisualState[];\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}",
|
|
314
|
-
"line":
|
|
331
|
+
"line": 212,
|
|
315
332
|
"fields": [
|
|
316
333
|
"create",
|
|
317
334
|
"step",
|
|
@@ -329,7 +346,7 @@
|
|
|
329
346
|
"name": "NavigationCell",
|
|
330
347
|
"kind": "InterfaceDeclaration",
|
|
331
348
|
"signature": "export interface NavigationCell { readonly x: number; readonly y: number }",
|
|
332
|
-
"line":
|
|
349
|
+
"line": 229,
|
|
333
350
|
"fields": [
|
|
334
351
|
"x",
|
|
335
352
|
"y"
|
|
@@ -339,7 +356,7 @@
|
|
|
339
356
|
"name": "NavigationObstacleUpdate",
|
|
340
357
|
"kind": "InterfaceDeclaration",
|
|
341
358
|
"signature": "export interface NavigationObstacleUpdate { readonly cell: NavigationCell; readonly blocked: boolean }",
|
|
342
|
-
"line":
|
|
359
|
+
"line": 231,
|
|
343
360
|
"fields": [
|
|
344
361
|
"cell",
|
|
345
362
|
"blocked"
|
|
@@ -349,7 +366,7 @@
|
|
|
349
366
|
"name": "NavigationGrid",
|
|
350
367
|
"kind": "InterfaceDeclaration",
|
|
351
368
|
"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}",
|
|
352
|
-
"line":
|
|
369
|
+
"line": 232,
|
|
353
370
|
"fields": [
|
|
354
371
|
"id",
|
|
355
372
|
"owner",
|
|
@@ -363,7 +380,7 @@
|
|
|
363
380
|
"name": "NavigationService",
|
|
364
381
|
"kind": "InterfaceDeclaration",
|
|
365
382
|
"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}",
|
|
366
|
-
"line":
|
|
383
|
+
"line": 241,
|
|
367
384
|
"fields": [
|
|
368
385
|
"createGrid",
|
|
369
386
|
"getGrid",
|
|
@@ -379,13 +396,13 @@
|
|
|
379
396
|
"name": "RenderMode",
|
|
380
397
|
"kind": "TypeAliasDeclaration",
|
|
381
398
|
"signature": "export type RenderMode = \"raster\" | \"hybrid\" | \"path\";",
|
|
382
|
-
"line":
|
|
399
|
+
"line": 253
|
|
383
400
|
},
|
|
384
401
|
{
|
|
385
402
|
"name": "RenderCapabilities",
|
|
386
403
|
"kind": "InterfaceDeclaration",
|
|
387
404
|
"signature": "export interface RenderCapabilities {\n backend: \"webgpu\" | \"webgl2\" | \"uninitialized\";\n compute: boolean;\n availableModes: readonly RenderMode[];\n}",
|
|
388
|
-
"line":
|
|
405
|
+
"line": 254,
|
|
389
406
|
"fields": [
|
|
390
407
|
"backend",
|
|
391
408
|
"compute",
|
|
@@ -396,7 +413,7 @@
|
|
|
396
413
|
"name": "RenderSettings",
|
|
397
414
|
"kind": "InterfaceDeclaration",
|
|
398
415
|
"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}",
|
|
399
|
-
"line":
|
|
416
|
+
"line": 259,
|
|
400
417
|
"fields": [
|
|
401
418
|
"mode",
|
|
402
419
|
"samplesPerFrame",
|
|
@@ -413,7 +430,7 @@
|
|
|
413
430
|
"name": "RenderService",
|
|
414
431
|
"kind": "InterfaceDeclaration",
|
|
415
432
|
"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}",
|
|
416
|
-
"line":
|
|
433
|
+
"line": 270,
|
|
417
434
|
"fields": [
|
|
418
435
|
"configure",
|
|
419
436
|
"state",
|
|
@@ -429,7 +446,7 @@
|
|
|
429
446
|
"name": "MaterialBufferInput",
|
|
430
447
|
"kind": "InterfaceDeclaration",
|
|
431
448
|
"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}",
|
|
432
|
-
"line":
|
|
449
|
+
"line": 280,
|
|
433
450
|
"fields": [
|
|
434
451
|
"name",
|
|
435
452
|
"type",
|
|
@@ -441,7 +458,7 @@
|
|
|
441
458
|
"name": "RenderBufferReference",
|
|
442
459
|
"kind": "InterfaceDeclaration",
|
|
443
460
|
"signature": "export interface RenderBufferReference {\n id: string;\n type: GraphType;\n count: number;\n}",
|
|
444
|
-
"line":
|
|
461
|
+
"line": 289,
|
|
445
462
|
"fields": [
|
|
446
463
|
"id",
|
|
447
464
|
"type",
|
|
@@ -452,7 +469,7 @@
|
|
|
452
469
|
"name": "RenderBufferBindings",
|
|
453
470
|
"kind": "InterfaceDeclaration",
|
|
454
471
|
"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}",
|
|
455
|
-
"line":
|
|
472
|
+
"line": 294,
|
|
456
473
|
"fields": [
|
|
457
474
|
"bind",
|
|
458
475
|
"unbind",
|
|
@@ -463,7 +480,7 @@
|
|
|
463
480
|
"name": "MaterialTextureInput",
|
|
464
481
|
"kind": "InterfaceDeclaration",
|
|
465
482
|
"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}",
|
|
466
|
-
"line":
|
|
483
|
+
"line": 299,
|
|
467
484
|
"fields": [
|
|
468
485
|
"texture",
|
|
469
486
|
"width",
|
|
@@ -474,7 +491,7 @@
|
|
|
474
491
|
"name": "RenderTextureReference",
|
|
475
492
|
"kind": "InterfaceDeclaration",
|
|
476
493
|
"signature": "export interface RenderTextureReference extends ComputeTextureSize {\n id: string;\n format: \"rgba32float\";\n}",
|
|
477
|
-
"line":
|
|
494
|
+
"line": 305,
|
|
478
495
|
"fields": [
|
|
479
496
|
"id",
|
|
480
497
|
"format"
|
|
@@ -484,7 +501,7 @@
|
|
|
484
501
|
"name": "RenderTextureBindings",
|
|
485
502
|
"kind": "InterfaceDeclaration",
|
|
486
503
|
"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}",
|
|
487
|
-
"line":
|
|
504
|
+
"line": 309,
|
|
488
505
|
"fields": [
|
|
489
506
|
"bind",
|
|
490
507
|
"unbind",
|
|
@@ -495,7 +512,7 @@
|
|
|
495
512
|
"name": "PostProcessState",
|
|
496
513
|
"kind": "InterfaceDeclaration",
|
|
497
514
|
"signature": "export interface PostProcessState {\n id: string;\n enabled: boolean;\n parameters: Readonly<Record<string, GraphValue>>;\n}",
|
|
498
|
-
"line":
|
|
515
|
+
"line": 314,
|
|
499
516
|
"fields": [
|
|
500
517
|
"id",
|
|
501
518
|
"enabled",
|
|
@@ -506,7 +523,7 @@
|
|
|
506
523
|
"name": "PostProcessService",
|
|
507
524
|
"kind": "InterfaceDeclaration",
|
|
508
525
|
"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}",
|
|
509
|
-
"line":
|
|
526
|
+
"line": 319,
|
|
510
527
|
"fields": [
|
|
511
528
|
"buffers",
|
|
512
529
|
"textures",
|
|
@@ -520,7 +537,7 @@
|
|
|
520
537
|
"name": "ComputeBufferHandle",
|
|
521
538
|
"kind": "InterfaceDeclaration",
|
|
522
539
|
"signature": "export interface ComputeBufferHandle {\n readonly owner: number;\n readonly index: number;\n readonly generation: number;\n}",
|
|
523
|
-
"line":
|
|
540
|
+
"line": 329,
|
|
524
541
|
"fields": [
|
|
525
542
|
"owner",
|
|
526
543
|
"index",
|
|
@@ -531,7 +548,7 @@
|
|
|
531
548
|
"name": "ComputeTaskHandle",
|
|
532
549
|
"kind": "InterfaceDeclaration",
|
|
533
550
|
"signature": "export interface ComputeTaskHandle {\n readonly owner: number;\n readonly id: number;\n}",
|
|
534
|
-
"line":
|
|
551
|
+
"line": 334,
|
|
535
552
|
"fields": [
|
|
536
553
|
"owner",
|
|
537
554
|
"id"
|
|
@@ -541,7 +558,7 @@
|
|
|
541
558
|
"name": "ComputeBufferInput",
|
|
542
559
|
"kind": "InterfaceDeclaration",
|
|
543
560
|
"signature": "export interface ComputeBufferInput {\n id: string;\n type: GraphType;\n count: number;\n data?: readonly GraphValue[];\n}",
|
|
544
|
-
"line":
|
|
561
|
+
"line": 338,
|
|
545
562
|
"fields": [
|
|
546
563
|
"id",
|
|
547
564
|
"type",
|
|
@@ -553,7 +570,7 @@
|
|
|
553
570
|
"name": "ComputeTextureHandle",
|
|
554
571
|
"kind": "InterfaceDeclaration",
|
|
555
572
|
"signature": "export interface ComputeTextureHandle {\n readonly owner: number;\n readonly index: number;\n readonly generation: number;\n readonly kind: \"texture\";\n}",
|
|
556
|
-
"line":
|
|
573
|
+
"line": 344,
|
|
557
574
|
"fields": [
|
|
558
575
|
"owner",
|
|
559
576
|
"index",
|
|
@@ -565,7 +582,7 @@
|
|
|
565
582
|
"name": "ComputeTextureSize",
|
|
566
583
|
"kind": "InterfaceDeclaration",
|
|
567
584
|
"signature": "export interface ComputeTextureSize {\n width: number;\n height: number;\n}",
|
|
568
|
-
"line":
|
|
585
|
+
"line": 350,
|
|
569
586
|
"fields": [
|
|
570
587
|
"width",
|
|
571
588
|
"height"
|
|
@@ -575,7 +592,7 @@
|
|
|
575
592
|
"name": "ComputeTextureDataInput",
|
|
576
593
|
"kind": "InterfaceDeclaration",
|
|
577
594
|
"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}",
|
|
578
|
-
"line":
|
|
595
|
+
"line": 354,
|
|
579
596
|
"fields": [
|
|
580
597
|
"id",
|
|
581
598
|
"data",
|
|
@@ -586,7 +603,7 @@
|
|
|
586
603
|
"name": "ComputeTextureAssetInput",
|
|
587
604
|
"kind": "InterfaceDeclaration",
|
|
588
605
|
"signature": "export interface ComputeTextureAssetInput {\n id: string;\n asset: AssetDefinition | string;\n width?: never;\n height?: never;\n data?: never;\n}",
|
|
589
|
-
"line":
|
|
606
|
+
"line": 360,
|
|
590
607
|
"fields": [
|
|
591
608
|
"id",
|
|
592
609
|
"asset",
|
|
@@ -599,13 +616,13 @@
|
|
|
599
616
|
"name": "ComputeTextureInput",
|
|
600
617
|
"kind": "TypeAliasDeclaration",
|
|
601
618
|
"signature": "export type ComputeTextureInput = ComputeTextureDataInput | ComputeTextureAssetInput;",
|
|
602
|
-
"line":
|
|
619
|
+
"line": 367
|
|
603
620
|
},
|
|
604
621
|
{
|
|
605
622
|
"name": "ComputeTextureBinding",
|
|
606
623
|
"kind": "InterfaceDeclaration",
|
|
607
624
|
"signature": "export interface ComputeTextureBinding {\n name: string;\n filter?: \"nearest\" | \"linear\";\n wrapU?: \"clamp\" | \"repeat\" | \"mirror\";\n wrapV?: \"clamp\" | \"repeat\" | \"mirror\";\n}",
|
|
608
|
-
"line":
|
|
625
|
+
"line": 368,
|
|
609
626
|
"fields": [
|
|
610
627
|
"name",
|
|
611
628
|
"filter",
|
|
@@ -617,7 +634,7 @@
|
|
|
617
634
|
"name": "ComputeDispatchInput",
|
|
618
635
|
"kind": "InterfaceDeclaration",
|
|
619
636
|
"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}",
|
|
620
|
-
"line":
|
|
637
|
+
"line": 374,
|
|
621
638
|
"fields": [
|
|
622
639
|
"output",
|
|
623
640
|
"bindings",
|
|
@@ -631,7 +648,7 @@
|
|
|
631
648
|
"name": "ComputeTaskState",
|
|
632
649
|
"kind": "InterfaceDeclaration",
|
|
633
650
|
"signature": "export interface ComputeTaskState {\n status: \"queued\" | \"running\" | \"succeeded\" | \"failed\" | \"cancelled\";\n error?: { code: string; message: string; remediation: string };\n}",
|
|
634
|
-
"line":
|
|
651
|
+
"line": 386,
|
|
635
652
|
"fields": [
|
|
636
653
|
"status",
|
|
637
654
|
"error"
|
|
@@ -641,7 +658,7 @@
|
|
|
641
658
|
"name": "ComputeService",
|
|
642
659
|
"kind": "InterfaceDeclaration",
|
|
643
660
|
"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}",
|
|
644
|
-
"line":
|
|
661
|
+
"line": 390,
|
|
645
662
|
"fields": [
|
|
646
663
|
"createTexture",
|
|
647
664
|
"resolveTexture",
|
|
@@ -666,7 +683,7 @@
|
|
|
666
683
|
"name": "InputService",
|
|
667
684
|
"kind": "InterfaceDeclaration",
|
|
668
685
|
"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}",
|
|
669
|
-
"line":
|
|
686
|
+
"line": 410,
|
|
670
687
|
"fields": [
|
|
671
688
|
"held",
|
|
672
689
|
"pressed",
|
|
@@ -678,7 +695,7 @@
|
|
|
678
695
|
"name": "PhysicsService",
|
|
679
696
|
"kind": "InterfaceDeclaration",
|
|
680
697
|
"signature": "export interface PhysicsService {\n moveCharacter(entity: string, displacement: Vec3): void;\n grounded(entity: string): boolean;\n velocity(entity: string): Vec3;\n /** World-space rigid-body center of mass, including collider offsets. */\n centerOfMass(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}",
|
|
681
|
-
"line":
|
|
698
|
+
"line": 416,
|
|
682
699
|
"fields": [
|
|
683
700
|
"moveCharacter",
|
|
684
701
|
"grounded",
|
|
@@ -697,7 +714,7 @@
|
|
|
697
714
|
"name": "AnimationService",
|
|
698
715
|
"kind": "InterfaceDeclaration",
|
|
699
716
|
"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}",
|
|
700
|
-
"line":
|
|
717
|
+
"line": 438,
|
|
701
718
|
"fields": [
|
|
702
719
|
"play",
|
|
703
720
|
"state"
|
|
@@ -707,7 +724,7 @@
|
|
|
707
724
|
"name": "CameraService",
|
|
708
725
|
"kind": "InterfaceDeclaration",
|
|
709
726
|
"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}",
|
|
710
|
-
"line":
|
|
727
|
+
"line": 450,
|
|
711
728
|
"fields": [
|
|
712
729
|
"follow",
|
|
713
730
|
"orbit"
|
|
@@ -717,7 +734,7 @@
|
|
|
717
734
|
"name": "UIService",
|
|
718
735
|
"kind": "InterfaceDeclaration",
|
|
719
736
|
"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}",
|
|
720
|
-
"line":
|
|
737
|
+
"line": 463,
|
|
721
738
|
"fields": [
|
|
722
739
|
"setText",
|
|
723
740
|
"setProgress",
|
|
@@ -728,7 +745,7 @@
|
|
|
728
745
|
"name": "AudioService",
|
|
729
746
|
"kind": "InterfaceDeclaration",
|
|
730
747
|
"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}",
|
|
731
|
-
"line":
|
|
748
|
+
"line": 468,
|
|
732
749
|
"fields": [
|
|
733
750
|
"play",
|
|
734
751
|
"stop",
|
|
@@ -743,7 +760,7 @@
|
|
|
743
760
|
"name": "StorageService",
|
|
744
761
|
"kind": "InterfaceDeclaration",
|
|
745
762
|
"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}",
|
|
746
|
-
"line":
|
|
763
|
+
"line": 483,
|
|
747
764
|
"fields": [
|
|
748
765
|
"save",
|
|
749
766
|
"load",
|
|
@@ -754,7 +771,7 @@
|
|
|
754
771
|
"name": "SceneService",
|
|
755
772
|
"kind": "InterfaceDeclaration",
|
|
756
773
|
"signature": "export interface SceneService {\n current(): string;\n load(id: string): void;\n}",
|
|
757
|
-
"line":
|
|
774
|
+
"line": 492,
|
|
758
775
|
"fields": [
|
|
759
776
|
"current",
|
|
760
777
|
"load"
|
|
@@ -764,7 +781,7 @@
|
|
|
764
781
|
"name": "ModelDefinition",
|
|
765
782
|
"kind": "InterfaceDeclaration",
|
|
766
783
|
"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}",
|
|
767
|
-
"line":
|
|
784
|
+
"line": 496,
|
|
768
785
|
"fields": [
|
|
769
786
|
"material",
|
|
770
787
|
"materialSlots",
|
|
@@ -781,7 +798,7 @@
|
|
|
781
798
|
"name": "RigidBodyDefinition",
|
|
782
799
|
"kind": "InterfaceDeclaration",
|
|
783
800
|
"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}",
|
|
784
|
-
"line":
|
|
801
|
+
"line": 509,
|
|
785
802
|
"fields": [
|
|
786
803
|
"type",
|
|
787
804
|
"collider",
|
|
@@ -795,7 +812,7 @@
|
|
|
795
812
|
"name": "CharacterDefinition",
|
|
796
813
|
"kind": "InterfaceDeclaration",
|
|
797
814
|
"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}",
|
|
798
|
-
"line":
|
|
815
|
+
"line": 523,
|
|
799
816
|
"fields": [
|
|
800
817
|
"radius",
|
|
801
818
|
"height",
|
|
@@ -808,7 +825,7 @@
|
|
|
808
825
|
"name": "UIElementDefinition",
|
|
809
826
|
"kind": "InterfaceDeclaration",
|
|
810
827
|
"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}",
|
|
811
|
-
"line":
|
|
828
|
+
"line": 531,
|
|
812
829
|
"fields": [
|
|
813
830
|
"id",
|
|
814
831
|
"kind",
|
|
@@ -827,7 +844,7 @@
|
|
|
827
844
|
"name": "SoundDefinition",
|
|
828
845
|
"kind": "InterfaceDeclaration",
|
|
829
846
|
"signature": "export interface SoundDefinition {\n id: string;\n asset: AssetDefinition | string;\n volume?: number;\n loop?: boolean;\n bus?: string;\n}",
|
|
830
|
-
"line":
|
|
847
|
+
"line": 544,
|
|
831
848
|
"fields": [
|
|
832
849
|
"id",
|
|
833
850
|
"asset",
|
|
@@ -840,7 +857,7 @@
|
|
|
840
857
|
"name": "AudioBusDefinition",
|
|
841
858
|
"kind": "InterfaceDeclaration",
|
|
842
859
|
"signature": "export interface AudioBusDefinition {\n id: string;\n volume?: number;\n}",
|
|
843
|
-
"line":
|
|
860
|
+
"line": 551,
|
|
844
861
|
"fields": [
|
|
845
862
|
"id",
|
|
846
863
|
"volume"
|
|
@@ -850,43 +867,43 @@
|
|
|
850
867
|
"name": "SYSTEM_PHASES",
|
|
851
868
|
"kind": "constant",
|
|
852
869
|
"signature": "SYSTEM_PHASES = [\n \"input\",\n \"prePhysics\",\n \"physics\",\n \"postPhysics\",\n \"update\",\n \"presentation\",\n] as const",
|
|
853
|
-
"line":
|
|
870
|
+
"line": 555
|
|
854
871
|
},
|
|
855
872
|
{
|
|
856
873
|
"name": "SystemPhase",
|
|
857
874
|
"kind": "TypeAliasDeclaration",
|
|
858
875
|
"signature": "export type SystemPhase = (typeof SYSTEM_PHASES)[number];",
|
|
859
|
-
"line":
|
|
876
|
+
"line": 563
|
|
860
877
|
},
|
|
861
878
|
{
|
|
862
879
|
"name": "Geometry",
|
|
863
880
|
"kind": "TypeAliasDeclaration",
|
|
864
881
|
"signature": "export type Geometry =\n | { kind: \"box\"; size?: Vec3 }\n | { kind: \"sphere\"; radius?: number; segments?: number }\n | { kind: \"plane\"; size?: readonly [number, number] };",
|
|
865
|
-
"line":
|
|
882
|
+
"line": 564
|
|
866
883
|
},
|
|
867
884
|
{
|
|
868
885
|
"name": "GRAPH_TYPES",
|
|
869
886
|
"kind": "constant",
|
|
870
887
|
"signature": "GRAPH_TYPES = [\"float\", \"vec2\", \"vec3\", \"vec4\", \"bool\"] as const",
|
|
871
|
-
"line":
|
|
888
|
+
"line": 568
|
|
872
889
|
},
|
|
873
890
|
{
|
|
874
891
|
"name": "GraphType",
|
|
875
892
|
"kind": "TypeAliasDeclaration",
|
|
876
893
|
"signature": "export type GraphType = typeof GRAPH_TYPES[number];",
|
|
877
|
-
"line":
|
|
894
|
+
"line": 569
|
|
878
895
|
},
|
|
879
896
|
{
|
|
880
897
|
"name": "GraphValue",
|
|
881
898
|
"kind": "TypeAliasDeclaration",
|
|
882
899
|
"signature": "export type GraphValue = number | boolean | Vec2 | Vec3 | Vec4;",
|
|
883
|
-
"line":
|
|
900
|
+
"line": 570
|
|
884
901
|
},
|
|
885
902
|
{
|
|
886
903
|
"name": "GraphParameter",
|
|
887
904
|
"kind": "InterfaceDeclaration",
|
|
888
905
|
"signature": "export interface GraphParameter {\n name: string;\n type: GraphType;\n default: GraphValue;\n}",
|
|
889
|
-
"line":
|
|
906
|
+
"line": 571,
|
|
890
907
|
"fields": [
|
|
891
908
|
"name",
|
|
892
909
|
"type",
|
|
@@ -897,31 +914,31 @@
|
|
|
897
914
|
"name": "GRAPH_INPUT_TYPES",
|
|
898
915
|
"kind": "constant",
|
|
899
916
|
"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",
|
|
900
|
-
"line":
|
|
917
|
+
"line": 576
|
|
901
918
|
},
|
|
902
919
|
{
|
|
903
920
|
"name": "GraphInputName",
|
|
904
921
|
"kind": "TypeAliasDeclaration",
|
|
905
922
|
"signature": "export type GraphInputName = keyof typeof GRAPH_INPUT_TYPES;",
|
|
906
|
-
"line":
|
|
923
|
+
"line": 583
|
|
907
924
|
},
|
|
908
925
|
{
|
|
909
926
|
"name": "GRAPH_OPERATIONS",
|
|
910
927
|
"kind": "constant",
|
|
911
928
|
"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",
|
|
912
|
-
"line":
|
|
929
|
+
"line": 584
|
|
913
930
|
},
|
|
914
931
|
{
|
|
915
932
|
"name": "GraphNode",
|
|
916
933
|
"kind": "TypeAliasDeclaration",
|
|
917
934
|
"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 };",
|
|
918
|
-
"line":
|
|
935
|
+
"line": 589
|
|
919
936
|
},
|
|
920
937
|
{
|
|
921
938
|
"name": "Graph",
|
|
922
939
|
"kind": "InterfaceDeclaration",
|
|
923
940
|
"signature": "export interface Graph {\n nodes: readonly GraphNode[];\n output: string;\n parameters?: readonly GraphParameter[];\n}",
|
|
924
|
-
"line":
|
|
941
|
+
"line": 609,
|
|
925
942
|
"fields": [
|
|
926
943
|
"nodes",
|
|
927
944
|
"output",
|
|
@@ -932,7 +949,7 @@
|
|
|
932
949
|
"name": "MaterialGraphs",
|
|
933
950
|
"kind": "InterfaceDeclaration",
|
|
934
951
|
"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}",
|
|
935
|
-
"line":
|
|
952
|
+
"line": 614,
|
|
936
953
|
"fields": [
|
|
937
954
|
"baseColor",
|
|
938
955
|
"emissive",
|
|
@@ -946,7 +963,7 @@
|
|
|
946
963
|
"name": "VertexGraphs",
|
|
947
964
|
"kind": "InterfaceDeclaration",
|
|
948
965
|
"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}",
|
|
949
|
-
"line":
|
|
966
|
+
"line": 623,
|
|
950
967
|
"fields": [
|
|
951
968
|
"position",
|
|
952
969
|
"normal"
|
|
@@ -956,7 +973,7 @@
|
|
|
956
973
|
"name": "MaterialInput",
|
|
957
974
|
"kind": "InterfaceDeclaration",
|
|
958
975
|
"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}",
|
|
959
|
-
"line":
|
|
976
|
+
"line": 629,
|
|
960
977
|
"fields": [
|
|
961
978
|
"id",
|
|
962
979
|
"color",
|
|
@@ -985,7 +1002,7 @@
|
|
|
985
1002
|
"name": "MaterialDefinition",
|
|
986
1003
|
"kind": "InterfaceDeclaration",
|
|
987
1004
|
"signature": "export interface MaterialDefinition extends MaterialInput {\n readonly kind: \"material\";\n}",
|
|
988
|
-
"line":
|
|
1005
|
+
"line": 656,
|
|
989
1006
|
"fields": [
|
|
990
1007
|
"kind"
|
|
991
1008
|
]
|
|
@@ -994,7 +1011,7 @@
|
|
|
994
1011
|
"name": "PostProcessInput",
|
|
995
1012
|
"kind": "InterfaceDeclaration",
|
|
996
1013
|
"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}",
|
|
997
|
-
"line":
|
|
1014
|
+
"line": 659,
|
|
998
1015
|
"fields": [
|
|
999
1016
|
"id",
|
|
1000
1017
|
"buffers",
|
|
@@ -1007,7 +1024,7 @@
|
|
|
1007
1024
|
"name": "PostProcessDefinition",
|
|
1008
1025
|
"kind": "InterfaceDeclaration",
|
|
1009
1026
|
"signature": "export interface PostProcessDefinition extends PostProcessInput {\n readonly kind: \"postprocess\";\n}",
|
|
1010
|
-
"line":
|
|
1027
|
+
"line": 667,
|
|
1011
1028
|
"fields": [
|
|
1012
1029
|
"kind"
|
|
1013
1030
|
]
|
|
@@ -1016,7 +1033,7 @@
|
|
|
1016
1033
|
"name": "ComputeInput",
|
|
1017
1034
|
"kind": "InterfaceDeclaration",
|
|
1018
1035
|
"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}",
|
|
1019
|
-
"line":
|
|
1036
|
+
"line": 670,
|
|
1020
1037
|
"fields": [
|
|
1021
1038
|
"id",
|
|
1022
1039
|
"graph",
|
|
@@ -1031,7 +1048,7 @@
|
|
|
1031
1048
|
"name": "ComputeDefinition",
|
|
1032
1049
|
"kind": "InterfaceDeclaration",
|
|
1033
1050
|
"signature": "export interface ComputeDefinition extends ComputeInput {\n readonly kind: \"compute\";\n}",
|
|
1034
|
-
"line":
|
|
1051
|
+
"line": 679,
|
|
1035
1052
|
"fields": [
|
|
1036
1053
|
"kind"
|
|
1037
1054
|
]
|
|
@@ -1040,7 +1057,7 @@
|
|
|
1040
1057
|
"name": "AssetInput",
|
|
1041
1058
|
"kind": "InterfaceDeclaration",
|
|
1042
1059
|
"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}",
|
|
1043
|
-
"line":
|
|
1060
|
+
"line": 682,
|
|
1044
1061
|
"fields": [
|
|
1045
1062
|
"id",
|
|
1046
1063
|
"path",
|
|
@@ -1055,7 +1072,7 @@
|
|
|
1055
1072
|
"name": "AssetDefinition",
|
|
1056
1073
|
"kind": "InterfaceDeclaration",
|
|
1057
1074
|
"signature": "export interface AssetDefinition extends AssetInput {\n readonly kind: \"asset\";\n}",
|
|
1058
|
-
"line":
|
|
1075
|
+
"line": 692,
|
|
1059
1076
|
"fields": [
|
|
1060
1077
|
"kind"
|
|
1061
1078
|
]
|
|
@@ -1064,7 +1081,7 @@
|
|
|
1064
1081
|
"name": "MeshDefinition",
|
|
1065
1082
|
"kind": "InterfaceDeclaration",
|
|
1066
1083
|
"signature": "export interface MeshDefinition {\n geometry: Geometry;\n material: MaterialDefinition | string;\n castShadow?: boolean;\n receiveShadow?: boolean;\n}",
|
|
1067
|
-
"line":
|
|
1084
|
+
"line": 695,
|
|
1068
1085
|
"fields": [
|
|
1069
1086
|
"geometry",
|
|
1070
1087
|
"material",
|
|
@@ -1076,7 +1093,7 @@
|
|
|
1076
1093
|
"name": "LightDefinition",
|
|
1077
1094
|
"kind": "InterfaceDeclaration",
|
|
1078
1095
|
"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}",
|
|
1079
|
-
"line":
|
|
1096
|
+
"line": 701,
|
|
1080
1097
|
"fields": [
|
|
1081
1098
|
"kind",
|
|
1082
1099
|
"color",
|
|
@@ -1090,7 +1107,7 @@
|
|
|
1090
1107
|
"name": "EntityInput",
|
|
1091
1108
|
"kind": "InterfaceDeclaration",
|
|
1092
1109
|
"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}",
|
|
1093
|
-
"line":
|
|
1110
|
+
"line": 716,
|
|
1094
1111
|
"fields": [
|
|
1095
1112
|
"id",
|
|
1096
1113
|
"prefab",
|
|
@@ -1108,7 +1125,7 @@
|
|
|
1108
1125
|
"name": "PrefabInput",
|
|
1109
1126
|
"kind": "InterfaceDeclaration",
|
|
1110
1127
|
"signature": "export interface PrefabInput extends Omit<EntityInput, \"prefab\" | \"parent\"> {\n extends?: PrefabDefinition | string;\n}",
|
|
1111
|
-
"line":
|
|
1128
|
+
"line": 728,
|
|
1112
1129
|
"fields": [
|
|
1113
1130
|
"extends"
|
|
1114
1131
|
]
|
|
@@ -1117,7 +1134,7 @@
|
|
|
1117
1134
|
"name": "PrefabDefinition",
|
|
1118
1135
|
"kind": "InterfaceDeclaration",
|
|
1119
1136
|
"signature": "export interface PrefabDefinition extends PrefabInput {\n readonly kind: \"prefab\";\n}",
|
|
1120
|
-
"line":
|
|
1137
|
+
"line": 731,
|
|
1121
1138
|
"fields": [
|
|
1122
1139
|
"kind"
|
|
1123
1140
|
]
|
|
@@ -1126,7 +1143,7 @@
|
|
|
1126
1143
|
"name": "SceneInput",
|
|
1127
1144
|
"kind": "InterfaceDeclaration",
|
|
1128
1145
|
"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}",
|
|
1129
|
-
"line":
|
|
1146
|
+
"line": 734,
|
|
1130
1147
|
"fields": [
|
|
1131
1148
|
"id",
|
|
1132
1149
|
"camera",
|
|
@@ -1140,7 +1157,7 @@
|
|
|
1140
1157
|
"name": "SceneDefinition",
|
|
1141
1158
|
"kind": "InterfaceDeclaration",
|
|
1142
1159
|
"signature": "export interface SceneDefinition extends SceneInput {\n readonly kind: \"scene\";\n}",
|
|
1143
|
-
"line":
|
|
1160
|
+
"line": 759,
|
|
1144
1161
|
"fields": [
|
|
1145
1162
|
"kind"
|
|
1146
1163
|
]
|
|
@@ -1149,7 +1166,7 @@
|
|
|
1149
1166
|
"name": "SystemInput",
|
|
1150
1167
|
"kind": "InterfaceDeclaration",
|
|
1151
1168
|
"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}",
|
|
1152
|
-
"line":
|
|
1169
|
+
"line": 762,
|
|
1153
1170
|
"fields": [
|
|
1154
1171
|
"id",
|
|
1155
1172
|
"phase",
|
|
@@ -1165,7 +1182,7 @@
|
|
|
1165
1182
|
"name": "SystemDefinition",
|
|
1166
1183
|
"kind": "InterfaceDeclaration",
|
|
1167
1184
|
"signature": "export interface SystemDefinition extends SystemInput {\n readonly kind: \"system\";\n}",
|
|
1168
|
-
"line":
|
|
1185
|
+
"line": 772,
|
|
1169
1186
|
"fields": [
|
|
1170
1187
|
"kind"
|
|
1171
1188
|
]
|
|
@@ -1174,7 +1191,7 @@
|
|
|
1174
1191
|
"name": "GameInput",
|
|
1175
1192
|
"kind": "InterfaceDeclaration",
|
|
1176
1193
|
"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}",
|
|
1177
|
-
"line":
|
|
1194
|
+
"line": 775,
|
|
1178
1195
|
"fields": [
|
|
1179
1196
|
"id",
|
|
1180
1197
|
"scene",
|
|
@@ -1199,7 +1216,7 @@
|
|
|
1199
1216
|
"name": "GameDefinition",
|
|
1200
1217
|
"kind": "InterfaceDeclaration",
|
|
1201
1218
|
"signature": "export interface GameDefinition extends GameInput {\n readonly kind: \"game\";\n}",
|
|
1202
|
-
"line":
|
|
1219
|
+
"line": 794,
|
|
1203
1220
|
"fields": [
|
|
1204
1221
|
"kind"
|
|
1205
1222
|
]
|
|
@@ -1208,7 +1225,7 @@
|
|
|
1208
1225
|
"name": "GameInstance",
|
|
1209
1226
|
"kind": "InterfaceDeclaration",
|
|
1210
1227
|
"signature": "export interface GameInstance {\n update(dt: number): void;\n dispose(): void;\n}",
|
|
1211
|
-
"line":
|
|
1228
|
+
"line": 797,
|
|
1212
1229
|
"fields": [
|
|
1213
1230
|
"update",
|
|
1214
1231
|
"dispose"
|
|
@@ -1218,61 +1235,61 @@
|
|
|
1218
1235
|
"name": "defineComponent",
|
|
1219
1236
|
"kind": "FunctionDeclaration",
|
|
1220
1237
|
"signature": "export function defineComponent<const S extends ComponentSchema>(input: {\n id: string;\n schema: S;\n}): ComponentDefinition<S>;",
|
|
1221
|
-
"line":
|
|
1238
|
+
"line": 801
|
|
1222
1239
|
},
|
|
1223
1240
|
{
|
|
1224
1241
|
"name": "defineMaterial",
|
|
1225
1242
|
"kind": "FunctionDeclaration",
|
|
1226
1243
|
"signature": "export function defineMaterial(input: MaterialInput): MaterialDefinition;",
|
|
1227
|
-
"line":
|
|
1244
|
+
"line": 807
|
|
1228
1245
|
},
|
|
1229
1246
|
{
|
|
1230
1247
|
"name": "definePostProcess",
|
|
1231
1248
|
"kind": "FunctionDeclaration",
|
|
1232
1249
|
"signature": "export function definePostProcess(input: PostProcessInput): PostProcessDefinition;",
|
|
1233
|
-
"line":
|
|
1250
|
+
"line": 810
|
|
1234
1251
|
},
|
|
1235
1252
|
{
|
|
1236
1253
|
"name": "defineCompute",
|
|
1237
1254
|
"kind": "FunctionDeclaration",
|
|
1238
1255
|
"signature": "export function defineCompute(input: ComputeInput): ComputeDefinition;",
|
|
1239
|
-
"line":
|
|
1256
|
+
"line": 813
|
|
1240
1257
|
},
|
|
1241
1258
|
{
|
|
1242
1259
|
"name": "defineAsset",
|
|
1243
1260
|
"kind": "FunctionDeclaration",
|
|
1244
1261
|
"signature": "export function defineAsset(input: AssetInput): AssetDefinition;",
|
|
1245
|
-
"line":
|
|
1262
|
+
"line": 816
|
|
1246
1263
|
},
|
|
1247
1264
|
{
|
|
1248
1265
|
"name": "definePrefab",
|
|
1249
1266
|
"kind": "FunctionDeclaration",
|
|
1250
1267
|
"signature": "export function definePrefab(input: PrefabInput): PrefabDefinition;",
|
|
1251
|
-
"line":
|
|
1268
|
+
"line": 819
|
|
1252
1269
|
},
|
|
1253
1270
|
{
|
|
1254
1271
|
"name": "defineScene",
|
|
1255
1272
|
"kind": "FunctionDeclaration",
|
|
1256
1273
|
"signature": "export function defineScene(input: SceneInput): SceneDefinition;",
|
|
1257
|
-
"line":
|
|
1274
|
+
"line": 822
|
|
1258
1275
|
},
|
|
1259
1276
|
{
|
|
1260
1277
|
"name": "defineSystem",
|
|
1261
1278
|
"kind": "FunctionDeclaration",
|
|
1262
1279
|
"signature": "export function defineSystem(input: SystemInput): SystemDefinition;",
|
|
1263
|
-
"line":
|
|
1280
|
+
"line": 825
|
|
1264
1281
|
},
|
|
1265
1282
|
{
|
|
1266
1283
|
"name": "defineGame",
|
|
1267
1284
|
"kind": "FunctionDeclaration",
|
|
1268
1285
|
"signature": "export function defineGame(input: GameInput): GameDefinition;",
|
|
1269
|
-
"line":
|
|
1286
|
+
"line": 828
|
|
1270
1287
|
},
|
|
1271
1288
|
{
|
|
1272
1289
|
"name": "instantiateGame",
|
|
1273
1290
|
"kind": "FunctionDeclaration",
|
|
1274
1291
|
"signature": "export function instantiateGame(\n game: GameDefinition,\n engine: EngineFacade,\n): GameInstance;",
|
|
1275
|
-
"line":
|
|
1292
|
+
"line": 832
|
|
1276
1293
|
}
|
|
1277
1294
|
],
|
|
1278
1295
|
"installedDeclarations": "lib/sdk/index.d.ts",
|