@zephyr3d/scene 0.9.18 → 0.9.20

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.
Files changed (124) hide show
  1. package/dist/animation/joint_dynamics/convex_collider.js +320 -0
  2. package/dist/animation/joint_dynamics/convex_collider.js.map +1 -0
  3. package/dist/app/scriptregistry.js +124 -6
  4. package/dist/app/scriptregistry.js.map +1 -1
  5. package/dist/asset/assetmanager.js +1 -0
  6. package/dist/asset/assetmanager.js.map +1 -1
  7. package/dist/camera/camera.js +240 -201
  8. package/dist/camera/camera.js.map +1 -1
  9. package/dist/index.d.ts +458 -9
  10. package/dist/index.js +4 -2
  11. package/dist/index.js.map +1 -1
  12. package/dist/material/meshmaterial.js +2 -2
  13. package/dist/material/meshmaterial.js.map +1 -1
  14. package/dist/material/mixins/lightmodel/pbrblueprintmixin.js +11 -5
  15. package/dist/material/mixins/lightmodel/pbrblueprintmixin.js.map +1 -1
  16. package/dist/material/mixins/lit.js +10 -0
  17. package/dist/material/mixins/lit.js.map +1 -1
  18. package/dist/material/shader/helper.js +138 -10
  19. package/dist/material/shader/helper.js.map +1 -1
  20. package/dist/material/skin.js +4 -6
  21. package/dist/material/skin.js.map +1 -1
  22. package/dist/material/water.js +1 -1
  23. package/dist/material/water.js.map +1 -1
  24. package/dist/posteffect/bloom.js +177 -29
  25. package/dist/posteffect/bloom.js.map +1 -1
  26. package/dist/posteffect/compositor.js +111 -204
  27. package/dist/posteffect/compositor.js.map +1 -1
  28. package/dist/posteffect/motionblur.js +3 -0
  29. package/dist/posteffect/motionblur.js.map +1 -1
  30. package/dist/posteffect/posteffect.js +79 -0
  31. package/dist/posteffect/posteffect.js.map +1 -1
  32. package/dist/posteffect/skinsss.js.map +1 -1
  33. package/dist/posteffect/ssr.js +238 -7
  34. package/dist/posteffect/ssr.js.map +1 -1
  35. package/dist/posteffect/sss.js +16 -15
  36. package/dist/posteffect/sss.js.map +1 -1
  37. package/dist/posteffect/taa.js +121 -19
  38. package/dist/posteffect/taa.js.map +1 -1
  39. package/dist/posteffect/tonemap.js +1 -1
  40. package/dist/posteffect/tonemap.js.map +1 -1
  41. package/dist/render/abuffer_oit.js +7 -1
  42. package/dist/render/abuffer_oit.js.map +1 -1
  43. package/dist/render/cluster_light.js +52 -8
  44. package/dist/render/cluster_light.js.map +1 -1
  45. package/dist/render/dualdepthpeeling_oit.js +331 -0
  46. package/dist/render/dualdepthpeeling_oit.js.map +1 -0
  47. package/dist/render/envlight.js +6 -3
  48. package/dist/render/envlight.js.map +1 -1
  49. package/dist/render/hzb.js +11 -4
  50. package/dist/render/hzb.js.map +1 -1
  51. package/dist/render/lightpass.js +21 -12
  52. package/dist/render/lightpass.js.map +1 -1
  53. package/dist/render/renderer.js +7 -3
  54. package/dist/render/renderer.js.map +1 -1
  55. package/dist/render/rendergraph/blackboard.js +79 -0
  56. package/dist/render/rendergraph/blackboard.js.map +1 -0
  57. package/dist/render/rendergraph/device_pool_allocator.js +10 -1
  58. package/dist/render/rendergraph/device_pool_allocator.js.map +1 -1
  59. package/dist/render/rendergraph/executor.js +41 -11
  60. package/dist/render/rendergraph/executor.js.map +1 -1
  61. package/dist/render/rendergraph/forward_plus_builder.js +551 -201
  62. package/dist/render/rendergraph/forward_plus_builder.js.map +1 -1
  63. package/dist/render/rendergraph/rendergraph.js +29 -0
  64. package/dist/render/rendergraph/rendergraph.js.map +1 -1
  65. package/dist/render/rendergraph/types.js.map +1 -1
  66. package/dist/render/renderpass.js +12 -2
  67. package/dist/render/renderpass.js.map +1 -1
  68. package/dist/render/shadow_mask_pass.js +297 -0
  69. package/dist/render/shadow_mask_pass.js.map +1 -0
  70. package/dist/render/weightedblended_oit.js +5 -0
  71. package/dist/render/weightedblended_oit.js.map +1 -1
  72. package/dist/scene/basesprite.js +1 -0
  73. package/dist/scene/basesprite.js.map +1 -1
  74. package/dist/scene/batchgroup.js +1 -0
  75. package/dist/scene/batchgroup.js.map +1 -1
  76. package/dist/scene/environment.js +1 -0
  77. package/dist/scene/environment.js.map +1 -1
  78. package/dist/scene/msdftext.js +1 -0
  79. package/dist/scene/msdftext.js.map +1 -1
  80. package/dist/scene/msdftextsprite.js +1 -0
  81. package/dist/scene/msdftextsprite.js.map +1 -1
  82. package/dist/scene/particlesys.js +1 -0
  83. package/dist/scene/particlesys.js.map +1 -1
  84. package/dist/scene/scene.js +1 -0
  85. package/dist/scene/scene.js.map +1 -1
  86. package/dist/scene/terrain-cm/grass.js +1 -0
  87. package/dist/scene/terrain-cm/grass.js.map +1 -1
  88. package/dist/scene/terrain-cm/terrain-cm.js +1 -0
  89. package/dist/scene/terrain-cm/terrain-cm.js.map +1 -1
  90. package/dist/scene/water.js +1 -0
  91. package/dist/scene/water.js.map +1 -1
  92. package/dist/shaders/ssr.js +52 -21
  93. package/dist/shaders/ssr.js.map +1 -1
  94. package/dist/utility/misc.js +10 -1
  95. package/dist/utility/misc.js.map +1 -1
  96. package/dist/utility/serialization/manager.js +1 -0
  97. package/dist/utility/serialization/manager.js.map +1 -1
  98. package/dist/utility/serialization/scene/animation.js +1 -0
  99. package/dist/utility/serialization/scene/animation.js.map +1 -1
  100. package/dist/utility/serialization/scene/batch.js +1 -0
  101. package/dist/utility/serialization/scene/batch.js.map +1 -1
  102. package/dist/utility/serialization/scene/camera.js +35 -2
  103. package/dist/utility/serialization/scene/camera.js.map +1 -1
  104. package/dist/utility/serialization/scene/light.js +1 -0
  105. package/dist/utility/serialization/scene/light.js.map +1 -1
  106. package/dist/utility/serialization/scene/mesh.js +1 -0
  107. package/dist/utility/serialization/scene/mesh.js.map +1 -1
  108. package/dist/utility/serialization/scene/node.js +1 -0
  109. package/dist/utility/serialization/scene/node.js.map +1 -1
  110. package/dist/utility/serialization/scene/particle.js +1 -0
  111. package/dist/utility/serialization/scene/particle.js.map +1 -1
  112. package/dist/utility/serialization/scene/primitive.js +1 -0
  113. package/dist/utility/serialization/scene/primitive.js.map +1 -1
  114. package/dist/utility/serialization/scene/sprite.js +1 -0
  115. package/dist/utility/serialization/scene/sprite.js.map +1 -1
  116. package/dist/utility/serialization/scene/terrain.js +1 -0
  117. package/dist/utility/serialization/scene/terrain.js.map +1 -1
  118. package/dist/utility/serialization/scene/text.js +1 -0
  119. package/dist/utility/serialization/scene/text.js.map +1 -1
  120. package/dist/utility/serialization/scene/water.js +1 -0
  121. package/dist/utility/serialization/scene/water.js.map +1 -1
  122. package/dist/values.js +11 -1
  123. package/dist/values.js.map +1 -1
  124. package/package.json +2 -2
package/dist/index.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _zephyr3d_device from '@zephyr3d/device';
2
- import { TextureCube, FrameBuffer, Texture2D, GPUDataBuffer, PrimitiveType, TextureSampler, BindGroupLayout, ProgramBuilder, PBInsideFunctionScope, PBShaderExp, PBGlobalScope, VertexSemantic, StructuredBuffer, VertexAttribFormat, VertexStepMode, IndexBuffer, BindGroup, GPUProgram, RenderStateSet, FaceMode, PBFunctionScope, Texture2DArray, BaseTexture, ShaderTypeFunc, TextureFormat, AbstractDevice, TimestampQueryStatus, ColorState, TextureAddressMode, TextureFilterMode, SamplerOptions, TextureAtlasManager, DeviceBackend } from '@zephyr3d/device';
2
+ import { TextureCube, FrameBuffer, Texture2D, GPUDataBuffer, PrimitiveType, TextureSampler, SamplerOptions, BindGroupLayout, ProgramBuilder, PBInsideFunctionScope, PBShaderExp, PBGlobalScope, VertexSemantic, StructuredBuffer, VertexAttribFormat, VertexStepMode, IndexBuffer, BindGroup, GPUProgram, RenderStateSet, FaceMode, PBFunctionScope, Texture2DArray, BaseTexture, ShaderTypeFunc, TextureFormat, DeviceCaps, AbstractDevice, TimestampQueryStatus, ColorState, TextureAddressMode, TextureFilterMode, TextureAtlasManager, DeviceBackend } from '@zephyr3d/device';
3
3
  import * as _zephyr3d_base from '@zephyr3d/base';
4
4
  import { Disposable, TypedArray, Ray, AABB, Matrix4x4, Plane, Frustum, Vector3, Nullable, GenericConstructor, RequireOptionals, Immutable, Vector4, Clonable, IDisposable, Vector2, IEventTarget, Observable, DRef, Rect, CubeFace, Quaternion, Interpolator, InterpolationMode, InterpolatorScalar, DeepPartial, VFS, HttpRequest, WriteOptions, ReadOptions, DeepRequireOptionals } from '@zephyr3d/base';
5
5
 
@@ -232,6 +232,14 @@ type SamplerType = 'clamp_linear' | 'clamp_linear_nomip' | 'clamp_nearest' | 'cl
232
232
  * @public
233
233
  */
234
234
  declare function fetchSampler(type: SamplerType): TextureSampler<unknown> | null;
235
+ /**
236
+ * Get the sampler options of a sampler preset, e.g. for use with the
237
+ * withSampler() shader declaration modifier.
238
+ * @param type - The sampler type
239
+ * @returns The sampler options for the given type
240
+ * @public
241
+ */
242
+ declare function getSamplerOptions(type: SamplerType): SamplerOptions;
235
243
 
236
244
  /**
237
245
  * Enumerates supported data types for serializable properties.
@@ -4930,6 +4938,9 @@ declare abstract class RenderPass extends Disposable {
4930
4938
  /** Color value that is used to clear the frame buffer */
4931
4939
  get clearColor(): Nullable<Immutable<Vector4>>;
4932
4940
  set clearColor(color: Nullable<Immutable<Vector4>>);
4941
+ /** Per-target color values that are used to clear the frame buffer */
4942
+ get clearColors(): Nullable<readonly Nullable<Immutable<Vector4>>[]>;
4943
+ set clearColors(colors: Nullable<readonly Nullable<Immutable<Vector4>>[]>);
4933
4944
  /** Depth value that is used to clear the frame buffer */
4934
4945
  get clearDepth(): Nullable<number>;
4935
4946
  set clearDepth(depth: Nullable<number>);
@@ -6272,6 +6283,13 @@ interface OIT extends IDisposable {
6272
6283
  /**
6273
6284
  * Begins rendering the transparent objects.
6274
6285
  *
6286
+ * @remarks
6287
+ * Contract: the caller (the transparent scene pass) must have explicitly
6288
+ * bound the transparent scene target framebuffer before calling begin(),
6289
+ * beginPass() or endPass(). Implementations may redirect rendering to
6290
+ * internal buffers, but must composite into that bound target and restore
6291
+ * it before returning.
6292
+ *
6275
6293
  * @param ctx - The draw context.
6276
6294
  * @returns The number of passes required for rendering.
6277
6295
  */
@@ -6315,7 +6333,7 @@ interface OIT extends IDisposable {
6315
6333
  * @param scope - The global shader scope.
6316
6334
  * @param color - The calculated fragment color.
6317
6335
  */
6318
- outputFragmentColor(scope: PBInsideFunctionScope, color: PBShaderExp): boolean;
6336
+ outputFragmentColor(scope: PBInsideFunctionScope, color: PBShaderExp, ctx: DrawContext): boolean;
6319
6337
  /**
6320
6338
  * Applies the uniforms for the given draw context and bind group.
6321
6339
  *
@@ -6325,6 +6343,14 @@ interface OIT extends IDisposable {
6325
6343
  * @param bindGroup - The bind group.
6326
6344
  */
6327
6345
  applyUniforms(ctx: DrawContext, bindGroup: BindGroup): void;
6346
+ /**
6347
+ * Whether additive light passes should keep the material alpha before OIT output.
6348
+ *
6349
+ * @remarks
6350
+ * Some OIT algorithms need the original material alpha to weight additive light color,
6351
+ * but write zero alpha to their accumulation targets so transmittance is not counted twice.
6352
+ */
6353
+ wantsAdditiveLightPassAlpha?(): boolean;
6328
6354
  /**
6329
6355
  * Calculates the hash of the renderer.
6330
6356
  *
@@ -6379,6 +6405,10 @@ declare class WeightedBlendedOIT extends Disposable implements OIT {
6379
6405
  * {@inheritDoc OIT.wantsPremultipliedAlpha}
6380
6406
  */
6381
6407
  wantsPremultipliedAlpha(): boolean;
6408
+ /**
6409
+ * {@inheritDoc OIT.wantsAdditiveLightPassAlpha}
6410
+ */
6411
+ wantsAdditiveLightPassAlpha(): boolean;
6382
6412
  /**
6383
6413
  * {@inheritDoc OIT.begin}
6384
6414
  */
@@ -6466,6 +6496,10 @@ declare class ABufferOIT extends Disposable implements OIT {
6466
6496
  * {@inheritDoc OIT.wantsPremultipliedAlpha}
6467
6497
  */
6468
6498
  wantsPremultipliedAlpha(): boolean;
6499
+ /**
6500
+ * {@inheritDoc OIT.wantsAdditiveLightPassAlpha}
6501
+ */
6502
+ wantsAdditiveLightPassAlpha(): boolean;
6469
6503
  /**
6470
6504
  * {@inheritDoc OIT.begin}
6471
6505
  */
@@ -6505,6 +6539,109 @@ declare class ABufferOIT extends Disposable implements OIT {
6505
6539
  protected onDispose(): void;
6506
6540
  }
6507
6541
 
6542
+ /**
6543
+ * Dual depth peeling OIT renderer.
6544
+ *
6545
+ * @remarks
6546
+ * This implementation follows the official dual depth peeling pass structure:
6547
+ * an initialization pass writes the nearest/farthest transparent depth pair, then
6548
+ * each peel pass ping-pongs the depth pair while accumulating front and back colors.
6549
+ *
6550
+ * It requires MRT, per-target blending, min/max blend equations and blendable
6551
+ * floating-point color targets. If those capabilities are missing, supportDevice()
6552
+ * returns false and the transparent pass falls back to sorted alpha blending.
6553
+ *
6554
+ * @public
6555
+ */
6556
+ declare class DualDepthPeelingOIT extends Disposable implements OIT {
6557
+ /** Type name of DualDepthPeelingOIT */
6558
+ static readonly type = "ddp";
6559
+ private static readonly DEPTH_CLEAR;
6560
+ private static readonly FRONT_CLEAR;
6561
+ private static readonly BACK_CLEAR;
6562
+ private static _compositeProgram;
6563
+ private static _compositeBindGroup;
6564
+ private static _compositeRenderStates;
6565
+ private _numPeels;
6566
+ private _currentPass;
6567
+ private _hash;
6568
+ private _depthTargets;
6569
+ private _frontTarget;
6570
+ private _backTarget;
6571
+ private _framebuffers;
6572
+ private _device;
6573
+ /**
6574
+ * Creates an instance of DualDepthPeelingOIT.
6575
+ *
6576
+ * @param numPeels - Number of peel iterations after the initialization pass.
6577
+ */
6578
+ constructor(numPeels?: number);
6579
+ /** Number of front/back peel iterations after the initialization pass. */
6580
+ get numPeels(): number;
6581
+ set numPeels(val: number);
6582
+ /**
6583
+ * Checks whether dual depth peeling can run with a capability snapshot.
6584
+ *
6585
+ * @param deviceType - The device type.
6586
+ * @param caps - The device capabilities.
6587
+ * @returns True if dual depth peeling is supported.
6588
+ */
6589
+ static supportDeviceCaps(deviceType: string, caps: DeviceCaps): boolean;
6590
+ /**
6591
+ * {@inheritDoc OIT.getType}
6592
+ */
6593
+ getType(): string;
6594
+ /**
6595
+ * {@inheritDoc OIT.supportDevice}
6596
+ */
6597
+ supportDevice(deviceType: string): boolean;
6598
+ /**
6599
+ * {@inheritDoc OIT.wantsPremultipliedAlpha}
6600
+ */
6601
+ wantsPremultipliedAlpha(): boolean;
6602
+ /**
6603
+ * {@inheritDoc OIT.wantsAdditiveLightPassAlpha}
6604
+ */
6605
+ wantsAdditiveLightPassAlpha(): boolean;
6606
+ /**
6607
+ * {@inheritDoc OIT.begin}
6608
+ */
6609
+ begin(ctx: DrawContext): number;
6610
+ /**
6611
+ * {@inheritDoc OIT.end}
6612
+ */
6613
+ end(ctx: DrawContext): void;
6614
+ /**
6615
+ * {@inheritDoc OIT.beginPass}
6616
+ */
6617
+ beginPass(ctx: DrawContext, pass: number): boolean;
6618
+ /**
6619
+ * {@inheritDoc OIT.endPass}
6620
+ */
6621
+ endPass(ctx: DrawContext, _pass: number): void;
6622
+ /**
6623
+ * {@inheritDoc OIT.setupFragmentOutput}
6624
+ */
6625
+ setupFragmentOutput(scope: PBGlobalScope): void;
6626
+ /**
6627
+ * {@inheritDoc OIT.outputFragmentColor}
6628
+ */
6629
+ outputFragmentColor(scope: PBInsideFunctionScope, color: PBShaderExp, ctx: DrawContext): boolean;
6630
+ /**
6631
+ * {@inheritDoc OIT.applyUniforms}
6632
+ */
6633
+ applyUniforms(_ctx: DrawContext, bindGroup: BindGroup): void;
6634
+ /**
6635
+ * {@inheritDoc OIT.calculateHash}
6636
+ */
6637
+ calculateHash(): string;
6638
+ /**
6639
+ * {@inheritDoc OIT.setRenderStates}
6640
+ */
6641
+ setRenderStates(rs: RenderStateSet): void;
6642
+ protected onDispose(): void;
6643
+ }
6644
+
6508
6645
  /**
6509
6646
  * Abstract class for wave generators.
6510
6647
  * @public
@@ -7149,6 +7286,14 @@ interface RGTextureDesc {
7149
7286
  height?: number;
7150
7287
  /** Number of mip levels. Default 1. */
7151
7288
  mipLevels?: number;
7289
+ /**
7290
+ * Number of array layers. When omitted, a plain 2D texture is allocated. When
7291
+ * defined (including 1), the allocator produces a 2D array texture — a
7292
+ * single-layer array is a distinct texture type from a 2D texture and is not
7293
+ * interchangeable when bound to a `tex2DArray` sampler. Individual layers can be
7294
+ * targeted as framebuffer color attachments via {@link RGFramebufferDesc.attachmentLayer}.
7295
+ */
7296
+ arrayLayers?: number;
7152
7297
  }
7153
7298
  /**
7154
7299
  * Opaque handle referencing a resource within the render graph.
@@ -7519,6 +7664,13 @@ interface RGFramebufferDesc {
7519
7664
  * The executor calls `allocate()` before a resource's first use and
7520
7665
  * `release()` after its last use.
7521
7666
  *
7667
+ * Lifetime contract: the graph compiler extends a texture's lifetime to cover
7668
+ * every graph-managed framebuffer it is attached to, and the executor releases
7669
+ * framebuffers before textures at the same pass boundary. Allocators may
7670
+ * therefore assume `releaseFramebuffer()` is called before `release()` of its
7671
+ * attachments, and must keep a released framebuffer's attachments intact until
7672
+ * their own `release()` call.
7673
+ *
7522
7674
  * @typeParam TTexture - The concrete texture type (e.g. `Texture2D`).
7523
7675
  * @public
7524
7676
  */
@@ -7965,6 +8117,75 @@ declare const RGHistoryResources: {
7965
8117
  readonly SSR_MOTION_VECTOR: "ssrMotionVector";
7966
8118
  };
7967
8119
 
8120
+ /**
8121
+ * Canonical names for well-known per-frame resources shared through {@link RGBlackboard}.
8122
+ *
8123
+ * Producer passes register their output handles under these names so that
8124
+ * consumers (e.g. post effects) can declare reads without hard-coupling to
8125
+ * the pass that produced them.
8126
+ *
8127
+ * @public
8128
+ */
8129
+ declare const FrameResources: {
8130
+ readonly SceneColor: "sceneColor";
8131
+ readonly SceneColorCopy: "sceneColorCopy";
8132
+ readonly LinearDepth: "linearDepth";
8133
+ readonly SceneDepthAttachment: "sceneDepthAttachment";
8134
+ readonly MotionVector: "motionVector";
8135
+ readonly HiZ: "hiZ";
8136
+ readonly SSRRoughness: "ssrRoughness";
8137
+ readonly SSRNormal: "ssrNormal";
8138
+ readonly SSSProfile: "sssProfile";
8139
+ readonly SSSParam: "sssParam";
8140
+ readonly SSSDiffuse: "sssDiffuse";
8141
+ readonly SSSTransmission: "sssTransmission";
8142
+ readonly SkinSSS: "skinSSS";
8143
+ readonly ShadowMask: "shadowMask";
8144
+ };
8145
+ /**
8146
+ * Named registry of render graph resource handles for the current frame.
8147
+ *
8148
+ * The blackboard decouples resource producers from consumers: passes that
8149
+ * create shared resources register the returned handles by name, and later
8150
+ * passes look them up to declare read dependencies. This replaces passing
8151
+ * textures through mutable `DrawContext` fields.
8152
+ *
8153
+ * A blackboard instance is valid for a single graph build; create a new one
8154
+ * (or clear it) every frame together with the graph.
8155
+ *
8156
+ * @public
8157
+ */
8158
+ declare class RGBlackboard {
8159
+ /**
8160
+ * Register a resource handle under a name, replacing any previous entry.
8161
+ * @param name - Resource name, typically one of {@link FrameResources}.
8162
+ * @param handle - The handle to register.
8163
+ */
8164
+ set(name: string, handle: RGHandle): void;
8165
+ /**
8166
+ * Look up a resource handle by name.
8167
+ * @param name - Resource name, typically one of {@link FrameResources}.
8168
+ * @returns The registered handle, or null if not present this frame.
8169
+ */
8170
+ get(name: string): Nullable<RGHandle>;
8171
+ /**
8172
+ * Check whether a resource is registered.
8173
+ * @param name - Resource name.
8174
+ * @returns true if a handle is registered under the name.
8175
+ */
8176
+ has(name: string): boolean;
8177
+ /**
8178
+ * Look up a resource handle that must exist.
8179
+ * @param name - Resource name.
8180
+ * @returns The registered handle.
8181
+ */
8182
+ expect(name: string): RGHandle;
8183
+ /**
8184
+ * Remove all registered handles.
8185
+ */
8186
+ clear(): void;
8187
+ }
8188
+
7968
8189
  /**
7969
8190
  * Options controlling which features are enabled in the forward+ pipeline.
7970
8191
  *
@@ -8032,6 +8253,80 @@ declare enum PostEffectLayer {
8032
8253
  transparent = 1,
8033
8254
  end = 2
8034
8255
  }
8256
+ /**
8257
+ * History texture binding required while a post effect executes.
8258
+ * @public
8259
+ */
8260
+ interface PostEffectHistoryRead {
8261
+ /** History resource name (see {@link RGHistoryResources}). */
8262
+ name: string;
8263
+ /** Graph handle of the imported previous-frame texture. */
8264
+ handle: RGHandle;
8265
+ }
8266
+ /**
8267
+ * Output target of a post effect, created through {@link PostEffectSetupContext.createOutput}.
8268
+ * @public
8269
+ */
8270
+ interface PostEffectOutput {
8271
+ /** Color handle produced by this effect. Return it from {@link AbstractPostEffect.setup}. */
8272
+ color: RGHandle;
8273
+ /**
8274
+ * Graph framebuffer to render into, or null when the effect must render to the
8275
+ * device default framebuffer (screen).
8276
+ */
8277
+ framebuffer: Nullable<RGHandle>;
8278
+ /** Whether the effect must gamma-correct its final write. */
8279
+ srgbOutput: boolean;
8280
+ }
8281
+ /**
8282
+ * Build-time context handed to {@link AbstractPostEffect.setup}.
8283
+ *
8284
+ * The context carries everything an effect needs to declare its passes on the
8285
+ * render graph. Where the effect output physically lands (intermediate texture,
8286
+ * backbuffer or screen) is decided by {@link PostEffectSetupContext.createOutput};
8287
+ * effect implementations never deal with final-target selection themselves.
8288
+ *
8289
+ * @public
8290
+ */
8291
+ interface PostEffectSetupContext {
8292
+ /** The render graph being built for this frame. */
8293
+ readonly graph: RenderGraph;
8294
+ /** Frame draw context. Read configuration from it, never textures. */
8295
+ readonly ctx: DrawContext;
8296
+ /** Named frame resources (linear depth, motion vectors, GBuffer, ...). */
8297
+ readonly blackboard: RGBlackboard;
8298
+ /** Chain input: color output of the previous effect (or the scene color). */
8299
+ readonly input: RGHandle;
8300
+ /** Intermediate color format of the post effect chain. */
8301
+ readonly colorFormat: TextureFormat;
8302
+ /** Render width in pixels. */
8303
+ readonly width: number;
8304
+ /** Render height in pixels. */
8305
+ readonly height: number;
8306
+ /** Cross-frame history resources, or null when unavailable. */
8307
+ readonly history: Nullable<HistoryResourceManager<Texture2D>>;
8308
+ /**
8309
+ * Scene depth attachment for intermediate passes that depth-test against
8310
+ * scene depth: either a graph texture handle or a backend depth texture.
8311
+ * Pass it as the depthAttachment of intermediate framebuffers; the final
8312
+ * pass gets it through createOutput({needDepthAttachment: true}).
8313
+ */
8314
+ readonly sceneDepthAttachment: unknown;
8315
+ /**
8316
+ * Create the output target for the effect's final pass.
8317
+ *
8318
+ * Must be called exactly once, inside the setup callback of the pass that
8319
+ * produces the effect's final color. The compositor decides whether this
8320
+ * resolves to an intermediate texture or a direct write to the final target.
8321
+ *
8322
+ * @param builder - The pass builder of the effect's final pass.
8323
+ * @param opts - Set needDepthAttachment when the pass depth-tests against scene depth.
8324
+ * @returns The resolved output target.
8325
+ */
8326
+ createOutput(builder: RGPassBuilder, opts?: {
8327
+ needDepthAttachment?: boolean;
8328
+ }): PostEffectOutput;
8329
+ }
8035
8330
  /**
8036
8331
  * Base class for any type of post effect
8037
8332
  * @public
@@ -8066,6 +8361,11 @@ declare class AbstractPostEffect extends Disposable {
8066
8361
  * @returns true if the scene depth buffer is required.
8067
8362
  */
8068
8363
  requireDepthAttachment(_ctx: DrawContext): boolean;
8364
+ /**
8365
+ * Checks whether this post effect requires the motion vector texture
8366
+ * @returns true if the motion vector texture is required.
8367
+ */
8368
+ requireMotionVectorTexture(_ctx: DrawContext): boolean;
8069
8369
  /**
8070
8370
  * Apply the post effect
8071
8371
  * @param camera - Camera used the render the scene
@@ -8077,6 +8377,19 @@ declare class AbstractPostEffect extends Disposable {
8077
8377
  * The frame buffer of the post effect is already set when apply() is called.
8078
8378
  */
8079
8379
  apply(ctx: DrawContext, inputColorTexture: Texture2D, sceneDepthTexture: Texture2D, srgbOutput: boolean): void;
8380
+ /**
8381
+ * Declare this effect's passes on the render graph.
8382
+ *
8383
+ * The default implementation wraps {@link AbstractPostEffect.apply} into a
8384
+ * single graph pass, so effects only overriding apply() work unchanged.
8385
+ * Multi-pass effects override this method to declare each internal step as
8386
+ * its own pass, calling {@link PostEffectSetupContext.createOutput} inside
8387
+ * the final pass.
8388
+ *
8389
+ * @param s - Build-time setup context.
8390
+ * @returns The effect's output color handle.
8391
+ */
8392
+ setup(s: PostEffectSetupContext): RGHandle;
8080
8393
  /**
8081
8394
  *
8082
8395
  * @param ctx - Draw context
@@ -8093,13 +8406,58 @@ declare class AbstractPostEffect extends Disposable {
8093
8406
  }
8094
8407
 
8095
8408
  /**
8096
- * Posteffect rendering context
8409
+ * Options for building a post effect layer as render graph passes.
8410
+ * @public
8411
+ */
8412
+ interface CompositorBuildLayerOptions {
8413
+ /** The render graph being built. */
8414
+ graph: RenderGraph;
8415
+ /** Frame draw context. */
8416
+ ctx: DrawContext;
8417
+ /** The layer to build. */
8418
+ layer: PostEffectLayer;
8419
+ /** Named frame resources. */
8420
+ blackboard: RGBlackboard;
8421
+ /** Chain input color handle. */
8422
+ input: RGHandle;
8423
+ /**
8424
+ * Direct final target for the last effect of the chain, or null to always
8425
+ * end the chain in an intermediate texture. Pass the imported backbuffer
8426
+ * handle together with isScreen=false when rendering into a framebuffer,
8427
+ * or isScreen=true when the final target is the device default framebuffer.
8428
+ */
8429
+ finalOutput?: Nullable<{
8430
+ handle: RGHandle;
8431
+ isScreen: boolean;
8432
+ }>;
8433
+ /**
8434
+ * True when the chain input physically resides in the final target (final
8435
+ * framebuffer used as scene intermediate). An effect whose input is the
8436
+ * final target must never direct-write it — sampling and rendering the same
8437
+ * texture in one pass is a feedback loop.
8438
+ */
8439
+ inputResidesInFinalTarget?: boolean;
8440
+ /**
8441
+ * Depth attachment for intermediate effect outputs that request one:
8442
+ * either a graph texture handle or a backend depth texture.
8443
+ */
8444
+ sceneDepthAttachment?: unknown;
8445
+ /** Ordering/lifetime dependencies declared by every effect pass. */
8446
+ dependencies?: RGHandle[];
8447
+ /** History bindings kept in a read scope while effects execute. */
8448
+ historyReads?: PostEffectHistoryRead[];
8449
+ /** Cross-frame history resource manager. */
8450
+ history?: Nullable<HistoryResourceManager<Texture2D>>;
8451
+ }
8452
+ /**
8453
+ * Result of {@link Compositor.buildLayer}.
8097
8454
  * @public
8098
8455
  */
8099
- interface CompositorContext {
8100
- pingpongFramebuffers: FrameBuffer[];
8101
- finalFramebuffer: FrameBuffer;
8102
- writeIndex: number;
8456
+ interface CompositorBuildLayerResult {
8457
+ /** Chain output color handle. Equals the input when no effect is enabled. */
8458
+ color: RGHandle;
8459
+ /** True when the last effect wrote the final target directly. */
8460
+ wroteFinal: boolean;
8103
8461
  }
8104
8462
  /**
8105
8463
  * Post processing compositor
@@ -8110,6 +8468,19 @@ declare class Compositor {
8110
8468
  * Creates an instance of Compositor
8111
8469
  */
8112
8470
  constructor();
8471
+ /**
8472
+ * Build the enabled effects of a layer as render graph passes.
8473
+ *
8474
+ * Effects are chained through graph texture handles: each effect's setup()
8475
+ * declares its passes reading the previous output. Where each effect output
8476
+ * lands (intermediate texture or the final target) is decided here through
8477
+ * the {@link PostEffectSetupContext.createOutput} implementation, so effect
8478
+ * code never handles final-target selection.
8479
+ *
8480
+ * @param options - Build inputs.
8481
+ * @returns The chain output handle and whether the final target was written directly.
8482
+ */
8483
+ buildLayer(options: CompositorBuildLayerOptions): CompositorBuildLayerResult;
8113
8484
  /**
8114
8485
  * Adds a posteffect
8115
8486
  *
@@ -8490,7 +8861,7 @@ type RenderPath = 'forward';
8490
8861
  * Camera Order-Independent Transparency mode.
8491
8862
  * @public
8492
8863
  */
8493
- type CameraOITMode = 'none' | 'weighted' | 'abuffer';
8864
+ type CameraOITMode = 'none' | 'weighted' | 'abuffer' | 'dual-depth';
8494
8865
  /**
8495
8866
  * Subsurface Scattering debug visualization modes (implementation-defined).
8496
8867
  * @public
@@ -8573,6 +8944,16 @@ declare class Camera extends SceneNode {
8573
8944
  */
8574
8945
  get HiZ(): boolean;
8575
8946
  set HiZ(val: boolean);
8947
+ /**
8948
+ * Whether the screen-space shadow mask is enabled.
8949
+ *
8950
+ * When enabled, shadow-casting lights are lit through the clustered pass and
8951
+ * sample a pre-rendered screen-space shadow mask instead of each casting an
8952
+ * additional full-scene additive light pass. Requires the depth prepass
8953
+ * (always on in Forward+).
8954
+ */
8955
+ get screenSpaceShadowMask(): boolean;
8956
+ set screenSpaceShadowMask(val: boolean);
8576
8957
  /**
8577
8958
  * Render path used by the scene renderer.
8578
8959
  */
@@ -8839,6 +9220,9 @@ declare class Camera extends SceneNode {
8839
9220
  /** ABuffer OIT layer budget. */
8840
9221
  get oitABufferLayers(): number;
8841
9222
  set oitABufferLayers(val: number);
9223
+ /** Dual depth peeling OIT peel iteration count. */
9224
+ get oitDualDepthPeels(): number;
9225
+ set oitDualDepthPeels(val: number);
8842
9226
  /** Clip plane mask */
8843
9227
  get clipMask(): number;
8844
9228
  set clipMask(val: number);
@@ -9189,6 +9573,14 @@ declare class Bloom extends AbstractPostEffect {
9189
9573
  requireLinearDepthTexture(): boolean;
9190
9574
  /** {@inheritDoc AbstractPostEffect.requireDepthAttachment} */
9191
9575
  requireDepthAttachment(): boolean;
9576
+ /** {@inheritDoc AbstractPostEffect.setup}
9577
+ *
9578
+ * Native multi-pass implementation: prefilter, one pass per pyramid level
9579
+ * (separable blur), one additive upsample pass per level, and a final
9580
+ * compose pass. Pyramid sizes are computed at build time with the same math
9581
+ * as {@link Bloom.apply}, so both paths produce identical results.
9582
+ */
9583
+ setup(s: PostEffectSetupContext): RGHandle;
9192
9584
  /** {@inheritDoc AbstractPostEffect.apply} */
9193
9585
  apply(ctx: DrawContext, inputColorTexture: Texture2D, _sceneDepthTexture: Texture2D, _srgbOutput: boolean): void;
9194
9586
  }
@@ -9312,6 +9704,8 @@ declare class FXAA extends AbstractPostEffect {
9312
9704
  }
9313
9705
 
9314
9706
  declare class ClusteredLight {
9707
+ /** Emit the shadow-mask overflow warning only once per session. */
9708
+ private static _warnedShadowMaskOverflow;
9315
9709
  private readonly _tileCountX;
9316
9710
  private readonly _tileCountY;
9317
9711
  private readonly _tileCountZ;
@@ -9326,8 +9720,15 @@ declare class ClusteredLight {
9326
9720
  private readonly _sizeParam;
9327
9721
  private _countParam;
9328
9722
  private readonly _clusterParam;
9723
+ private _numShadowLights;
9329
9724
  constructor();
9330
9725
  get lightBuffer(): Nullable<StructuredBuffer<unknown>>;
9726
+ /**
9727
+ * Number of shadow-casting lights placed at the head of the clustered light
9728
+ * buffer (indices `1..N`), each backed by a screen-space shadow mask slot.
9729
+ * Zero unless the screen-space shadow mask path is active.
9730
+ */
9731
+ get numShadowLights(): number;
9331
9732
  get clusterParam(): Vector4;
9332
9733
  get countParam(): Int32Array<ArrayBuffer>;
9333
9734
  get lightIndexTexture(): Nullable<Texture2D<unknown>>;
@@ -9399,6 +9800,28 @@ interface DrawContext {
9399
9800
  readonly HiZ: boolean;
9400
9801
  /** Hi-Z (hierarchical Z) depth texture, when generated. */
9401
9802
  HiZTexture: Nullable<Texture2D>;
9803
+ /**
9804
+ * Whether the screen-space shadow mask path is active for this pass. When true,
9805
+ * shadow-casting lights occupy the head of the clustered light buffer and are
9806
+ * shaded through the clustered pass sampling a pre-rendered shadow mask, rather
9807
+ * than via per-light additive passes.
9808
+ */
9809
+ readonly screenSpaceShadowMask: boolean;
9810
+ /**
9811
+ * Screen-space shadow mask array, produced by the ShadowMaskPass when
9812
+ * {@link DrawContext.screenSpaceShadowMask} is active. Each RGBA8 layer packs
9813
+ * four shadow lights (one per channel); a clustered light at buffer index `i`
9814
+ * (1..N) samples `layer = (i-1) >> 2`, `channel = (i-1) & 3`.
9815
+ */
9816
+ shadowMaskTexture?: Nullable<Texture2DArray>;
9817
+ /**
9818
+ * Whether the current clustered light pass should sample the opaque shadow mask
9819
+ * for shadow-casting lights. True for the opaque queue; false for transparent
9820
+ * queues (e.g. OIT hair), where shadow lights are instead lit inline by the
9821
+ * additive passes because the opaque-depth mask does not represent transparent
9822
+ * surfaces. Only meaningful while {@link DrawContext.screenSpaceShadowMask} is on.
9823
+ */
9824
+ shadowMaskClusterSample?: boolean;
9402
9825
  /** The scene currently being drawn. */
9403
9826
  readonly scene: Scene;
9404
9827
  /** The render pass to which this drawing task belongs. */
@@ -19713,6 +20136,13 @@ declare class InputManager {
19713
20136
  *
19714
20137
  * Caching:
19715
20138
  * - Built bundles are memoized in `_built` map keyed by canonical source path.
20139
+ * - At runtime, all bundles built by the same registry share one realm-global
20140
+ * module registry (keyed by a per-registry namespace): a local module is
20141
+ * evaluated once no matter how many entry bundles inline it, so module-level
20142
+ * singletons are identical across entries. Module records are versioned by a
20143
+ * content hash — rebuilding an unchanged module reuses its evaluated
20144
+ * instance, while changed content replaces the record so the next load
20145
+ * re-evaluates the new code.
19716
20146
  *
19717
20147
  * @public
19718
20148
  */
@@ -19722,6 +20152,7 @@ declare class ScriptRegistry {
19722
20152
  private _built;
19723
20153
  private _building;
19724
20154
  private _builtDeps;
20155
+ private _namespace;
19725
20156
  /**
19726
20157
  * @param vfs - The virtual file system for existence checks, reads, and path ops.
19727
20158
  * @param scriptsRoot - Root directory for script resolution (used with `#/` specifiers).
@@ -19804,6 +20235,13 @@ declare class ScriptRegistry {
19804
20235
  private build;
19805
20236
  private buildBundle;
19806
20237
  private collectModule;
20238
+ /**
20239
+ * Rewrites each collected module's version to a Merkle-style hash combining
20240
+ * its own content hash with the effective versions of its local
20241
+ * dependencies. Cycles fall back to the plain content hash, which is
20242
+ * deterministic on both sides of the cycle.
20243
+ */
20244
+ private applyEffectiveVersions;
19807
20245
  private resolveModuleInfo;
19808
20246
  private getTypeScriptRuntime;
19809
20247
  private transpileToESModule;
@@ -27993,6 +28431,17 @@ declare const LIGHT_TYPE_RECT = 4;
27993
28431
  * @public
27994
28432
  */
27995
28433
  declare const MAX_CLUSTERED_LIGHTS = 255;
28434
+ /**
28435
+ * Max number of shadow-casting lights backed by the screen-space shadow mask.
28436
+ *
28437
+ * Each mask layer packs 4 lights (one per RGBA8 channel), so this maps to
28438
+ * `MAX_SHADOW_MASK_LIGHTS / 4` texture array layers. Shadow-casting lights are
28439
+ * placed at the head of the clustered light buffer (indices `1..N`), so this
28440
+ * value must not exceed {@link MAX_CLUSTERED_LIGHTS}. Shadow lights beyond this
28441
+ * cap fall back to being lit without a mask-backed shadow.
28442
+ * @public
28443
+ */
28444
+ declare const MAX_SHADOW_MASK_LIGHTS = 32;
27996
28445
  /**
27997
28446
  * Opaque render queue type
27998
28447
  * @public
@@ -28058,4 +28507,4 @@ declare const ATMOSPHERIC_FOG_BIT: number;
28058
28507
  */
28059
28508
  declare const HEIGHT_FOG_BIT: number;
28060
28509
 
28061
- export { AABBTree, ABufferOIT, ATMOSPHERIC_FOG_BIT, AbsNode, AbstractPostEffect, AllConditionNode, type AngleLimitConfig, AnimationClip, AnimationController, type AnimationControllerEventMap, type AnimationControllerSetStateOptions, type AnimationControllerStateDefinition, type AnimationFrameEvent, type AnimationMarker, type AnimationMarkerEvent, AnimationPlayback, type AnimationPlaybackEvent, type AnimationPlaybackEventMap, type AnimationPlaybackState, type AnimationPlaybackStopEvent, type AnimationPlaybackSyncMode, type AnimationPlaybackSyncOptions, AnimationSet, type AnimationSetEventMap, type AnimationStopReason, type AnimationTimeRef, AnimationTimeline, type AnimationTimelineActiveDisposition, type AnimationTimelineDefinition, type AnimationTimelineEventPolicy, type AnimationTimelineEventResponse, type AnimationTimelineEventResult, type AnimationTimelineEventTarget, AnimationTimelineRunner, type AnimationTimelineRunnerEventMap, type AnimationTimelineRunnerState, type AnimationTimelineStateReturnTarget, type AnimationTimelineStep, AnimationTrack, AnyConditionNode, type AppCreationOptions, type AppOptions, Application, type ApplyResultOutput, ArcCosNode, ArcSinNode, ArcTan2Node, ArcTanNode, ArccosineHNode, ArcsineHNode, ArctangentHNode, type AssetAnimationData, type AssetAnimationTrack, type AssetFixedGeometryCacheAnimationTrack, type AssetGeometryCacheAnimationTrack, type AssetGeometryCacheFrame, AssetHierarchyNode, type AssetImageInfo, type AssetJointDynamicsChain, type AssetJointDynamicsCollider, type AssetJointDynamicsFlatPlane, type AssetJointDynamicsSpringBone, type AssetMToonMaterial, AssetManager, type AssetMaterial, type AssetMaterialClearcoat, type AssetMaterialCommon, type AssetMaterialIridescence, type AssetMaterialSheen, type AssetMaterialTransmission, type AssetMeshData, type AssetMorphTargetBinding, type AssetMorphTargetGroup, type AssetPBRMaterialCommon, type AssetPBRMaterialMR, type AssetPBRMaterialSG, type AssetPCAGeometryCacheAnimationTrack, type AssetPrimitiveInfo, type AssetRotationTrack, type AssetSamplerInfo, type AssetScaleTrack, AssetScene, type AssetSkeletalAnimationTrack, AssetSkeleton, type AssetSpringBone, type AssetSpringBoneCollider, type AssetSpringBoneColliderGroup, type AssetSpringBoneColliderShape, type AssetSpringBoneJoint, type AssetSubMeshData, type AssetTextureInfo, type AssetTranslationTrack, type AssetUnlitMaterial, type AssetVertexBufferInfo, type AvatarBindMode, type AvatarBodyRegionTarget, type AvatarBodyRegions, type AvatarEquipOptions, type AvatarFitMode, type AvatarJointMap, AvatarOutfitInstance, type AvatarOutfitSource, type AvatarOutfitValidation, type AvatarSlotId, type AvatarSlotOptions, AvatarWardrobe, type AvatarWardrobeOptions, BUILTIN_ASSET_TEST_CUBEMAP, BUILTIN_ASSET_TEXTURE_SHEEN_LUT, BaseCameraController, type BaseFetchOptions, BaseGraphNode, BaseLight, BaseSprite, BaseTextureNode, type BatchDrawable, BatchGroup, BillboardMatrixNode, type BlendMode, BlinnMaterial, type BlitType, Blitter, Bloom, type BluePrintEditorState, type BluePrintUniformTexture, type BluePrintUniformValue, type BlueprintDAG, type BoneNode, BoundingBox, type BoundingVolume, type BoxCreationOptions, BoxFilterBlitter, BoxFrameShape, BoxShape, CCDSolver, type CachedBindGroup, Camera, type CameraHistoryData, CameraNearFarNode, type CameraOITMode, CameraPositionNode, CameraVectorNode, type CapsuleCollider, type CapsuleCreationOptions, CapsuleShape, CeilNode, ClampNode, ClipmapTerrain, ClipmapTerrainMaterial, ColliderForce, type ColliderR, type ColliderRW, type CollisionResult, ColorAdjust, type ColoredEdge, type ColoredLineEdge, type ColoredQuadraticEdge, CompAddNode, CompComparisonNode, CompDivNode, CompMulNode, CompSubNode, type ComparisonMode, type CompiledRenderGraph, Compositor, type CompositorContext, ConstantBVec2Node, ConstantBVec3Node, ConstantBVec4Node, ConstantBooleanNode, ConstantScalarNode, ConstantTexture2DArrayNode, ConstantTexture2DNode, ConstantTextureCubeNode, ConstantVec2Node, ConstantVec3Node, ConstantVec4Node, type Constraint, type ConstraintBuildOptions, ConstraintType, type ControllerConfig, type ControllerConfigUpdate, CopyBlitter, type CopyHumanoidAnimationOptions, CosHNode, CosNode, CrossProductNode, CubemapSHProjector, CullVisitor, type CylinderCreationOptions, CylinderShape, DDXNode, DDYNode, Degrees2RadiansNode, DepthPass, DevicePoolAllocator, DirectionalLight, DistanceNode, DotProductNode, DracoMeshDecoder, type DrawContext, type Drawable, type DrawableInstanceInfo, EPSILON, type EdgeColor, type EditorMode, ElapsedTimeNode, type EmitterBehavior, type EmitterShape, Engine, EnvConstantAmbient, EnvHemisphericAmbient, type EnvLightType, EnvLightWrapper, EnvShIBL, Environment, EnvironmentLighting, EqualNode, Exp2Node, ExpNode, type ExtractMixinReturnType, type ExtractMixinType, FABRIKSolver, FBMWaveGenerator, FFTWaveGenerator, FPSCameraController, type FPSCameraControllerOptions, FWidthNode, FXAA, FaceForwardNode, type FixedGeometryCacheFrame, type FixedGeometryCacheState, FixedGeometryCacheTrack, type FlatPlane, FloorNode, FmaNode, type FogType, FontAsset, type FontAssetFetchOptions, type FontAssetMSDFAtlasSettings, type FontMetrics, type ForwardPlusOptions, FractNode, FunctionCallNode, FunctionInputNode, FunctionOutputNode, GPUClothSystem, type GPUClothSystemOptions, type GPUClothWrapBindingData, type GPUClothWrapBindingTarget, GaussianBlurBlitter, GenericMathNode, type GeometryCacheFrame, type GeometryCacheMeshBinding, type GeometryCacheState, GerstnerWaveGenerator, type GlyphContour, type GlyphData, type GlyphPoint, type GrabberR, type GrabberRW, GraphNode, type GraphNodeInput, type GraphNodeOutput, type GraphStructure, type GrassInstanceInfo, GrassLayer, GrassMaterial, GrassRenderer, Grayscale, HEIGHT_FOG_BIT, Hash1Node, Hash2Node, Hash3Node, HistoryResourceManager, type Host, HumanoidBodyRig, HumanoidHandRig, type HumanoidJointMapping, type HumanoidRetargetAxisLocks, type HumanoidRootMotionMode, type HumanoidRootMotionScaleMode, type HumanoidSkeletalAnimationMaskOptions, type HumanoidSkeletalAnimationMaskPreset, type IAttachedScript, type IBaseEvent, type IControllerKeyboardEvent, type IControllerKeydownEvent, type IControllerKeypressEvent, type IControllerKeyupEvent, type IControllerMouseEvent, type IControllerPointerCancelEvent, type IControllerPointerDownEvent, type IControllerPointerMoveEvent, type IControllerPointerUpEvent, type IControllerWheelEvent, type IGraphNode, IKAngleConstraint, IKChain, IKConstraint, type IKJoint, IKModifier, IKSolver, type IMixinAlbedoColor, type IMixinBlinnPhong, type IMixinFoliage, type IMixinLambert, type IMixinLight, type IMixinPBRBluePrint, type IMixinPBRCommon, type IMixinPBRMetallicRoughness, type IMixinPBRSpecularGlossiness, type IMixinVertexColor, type IModKey, type IRUniformTexture, type IRUniformValue, type IRenderHook, type IRenderable, type InputEventHandler, InputManager, InstanceBindGroupAllocator, type InstanceData, InstanceIndexNode, type InstanceUniformType, type InterChainConstraint, InvProjMatrixNode, InvSqrtNode, InvViewProjMatrixNode, type JointChainConfig, type JointDynamicSystemConfig, type JointDynamicsColliderHandle, type JointDynamicsColliderSnapshot, type JointDynamicsFlatPlaneHandle, type JointDynamicsFlatPlaneSnapshot, type JointDynamicsGrabberHandle, type JointDynamicsGrabberSnapshot, JointDynamicsModifier, JointDynamicsSystem, JointDynamicsSystemController, type JointNameMatcher, LIGHT_TYPE_DIRECTIONAL, LIGHT_TYPE_NONE, LIGHT_TYPE_POINT, LIGHT_TYPE_RECT, LIGHT_TYPE_SPOT, LambertMaterial, LengthNode, type LineCollisionResult, Log2Node, type LogMode, LogNode, LogicallyAndNode, LogicallyOrNode, MAX_CLUSTERED_LIGHTS, MAX_GERSTNER_WAVE_COUNT, MAX_MORPH_ATTRIBUTES, MAX_MORPH_TARGETS, MAX_TERRAIN_MIPMAP_LEVELS, MORPH_ATTRIBUTE_VECTOR_COUNT, MORPH_TARGET_COLOR, MORPH_TARGET_NORMAL, MORPH_TARGET_POSITION, MORPH_TARGET_TANGENT, MORPH_TARGET_TEX0, MORPH_TARGET_TEX1, MORPH_TARGET_TEX2, MORPH_TARGET_TEX3, MORPH_WEIGHTS_VECTOR_COUNT, type MSDFBitmap, type MSDFOptions, type MSDFShape, MSDFText, MSDFTextAtlasManager, MSDFTextSprite, MToonMaterial, type MToonOutlineWidthMode, MakeVectorNode, Material, MaterialBlueprintIR, type MaterialBlueprintIRBehaviors, type MaterialTextureInfo, MaterialVaryingFlags, MaxNode, Mesh$1 as Mesh, MeshMaterial, type MeshUpdateCallback, type Metadata$1 as Metadata, MinNode, MixNode, ModNode, type ModelFetchOptions, type ModelInfo, type ModelLoader, type MorphBoundingInfo, type MorphData, type MorphInfo, type MorphState, MorphTargetGroupTrack, MorphTargetTrack, MultiChainSpringSystem, type MultiChainSpringSystemOptions, type NamedJointsSkeletalAnimationMaskOptions, NamedObject, type NearestPointsResult, type NodeConnection, NodeEulerRotationTrack, type NodeIterateFunc, NodeRotationTrack, NodeScaleTrack, NodeTranslationTrack, NormalizeNode, NotEqualNode, type OIT, Octree, OctreeNode, OctreeNodeChunk, OctreePlacement, OrbitCameraController, type OrbitCameraControllerOptions, OrthoCamera, PBRBlockNode, PBRBluePrintMaterial, type PBRBlueprintOutputName, PBRMetallicRoughnessMaterial, type PBRReflectionMode, PBRSpecularGlossinessMaterial, type PCAGeometryCacheState, PCAGeometryCacheTrack, type PCAGeometryCacheTrackData, type PairAdjustment, PannerNode, ParticleMaterial, ParticleSystem, PerlinNoise2DNode, PerspectiveCamera, type PhysicsCurves, type PickResult, type PickTarget, PixelNormalNode, PixelWorldPositionNode, type PlaneCollider, type PlaneCreationOptions, PlaneShape, type PlayAnimationOptions, type PointInit, PointLight, type PointR, type PointRW, type PointTransform, PostEffectLayer, PowNode, Primitive, ProjectionMatrixNode, type PropEdit, type PropertyAccessor, type PropertyAccessorOptions, type PropertySceneNodeOptions, type PropertyToType, PropertyTrack, type PropertyType, type PropertyValue, PunctualLight, QUEUE_OPAQUE, QUEUE_TRANSPARENT, RENDER_PASS_TYPE_DEPTH, RENDER_PASS_TYPE_LIGHT, RENDER_PASS_TYPE_OBJECT_COLOR, RENDER_PASS_TYPE_SHADOWMAP, type RGExecuteContext, type RGExecuteFn, type RGFramebufferDesc, RGHandle, RGHistoryResources, type RGPassBuilder, type RGProfileResult, type RGProfileScopeResult, type RGProfileScopeType, type RGProfilingOptions, type RGResolvedSize, type RGResourceLifetime, type RGSizeMode, RGSubpass, type RGTextureAllocator, type RGTextureDesc, Radians2DegreesNode, RaycastVisitor, RectLight, ReflectNode, RefractNode, type RenderFunc, RenderGraph, RenderGraphExecutor, type RenderGraphExecutorOptions, type RenderItemList, type RenderItemListBundle, type RenderItemListInfo, RenderPass, type RenderPath, RenderQueue, type RenderQueueItem, type RenderQueueRef, RenderTarget, type ResolutionTransform, ResolveVertexNormalNode, ResolveVertexPositionNode, ResolveVertexTangentNode, ResourceManager, RotateAboutAxisNode, RuntimeScript, type RuntimeScriptArrayDeclaration, type RuntimeScriptArrayElementDeclaration, type RuntimeScriptConfig, type RuntimeScriptObjectDeclaration, type RuntimeScriptObjectFieldDeclaration, type RuntimeScriptPropertyDeclaration, type RuntimeScriptPropertyInfo, type RuntimeScriptPropertyOptions, type RuntimeScriptPropertyType, type RuntimeScriptValueDeclaration, type RuntimeScriptValueType, SAO, type SSSDebugView, type SSSQualityPreset, type SSSResolvedSettings, type SamplerType, SaturateNode, type SaveOptions, Scene, type SceneMorphTargetBinding, type SceneMorphTargetGroup, SceneNode, type SceneNodeVisible, ScreenAdapter, type ScreenConfig, ScreenRenderTarget, type ScreenScaleMode, ScriptAttachment, type ScriptAttachmentConfig, ScriptRegistry, ScriptingSystem, type ScriptingSystemOptions, SelectionNode, type SerializableClass, type SerializedMorphTargetBinding, type SerializedMorphTargetGroup, ShaderHelper, ShadowMapPass, ShadowMapper, type ShadowMode, type ShadowQualityPreset, ShadowRegion, Shape, type ShapeCreationOptions, type ShapeOptionType, type ShapeType, SharedModel, SignNode, SimplexNoise2DNode, type SimulationParams, SinHNode, SinNode, type SkeletalAnimationMaskCommonOptions, type SkeletalAnimationMaskOptions, type SkeletalAnimationMaskRootMotionMode, type SkeletalAnimationMaskUnsupportedTrackMode, Skeleton, type SkeletonBindPose, SkeletonModifier, SkeletonRig, type SkeletonRigOptions, SkinBinding, SkinMaterial, SkinSSS, type SkinnedBoundingBox, SkyEnvTextureNode, SkyRenderer, type SkyType, SmoothStepNode, type SphereCollider, type SphereCreationOptions, SphereShape, SpotLight, SpringChain, type SpringCollider, type SpringConstraint, SpringModifier, type SpringParticle, SpringSystem, type SpringSystemOptions, Sprite, SpriteBlockNode, SpriteBlueprintMaterial, SpriteMaterial, SqrtNode, StandardSpriteMaterial, StepNode, type StopAnimationOptions, SubsurfaceProfile, type SubsurfaceProfilePreset, type SurfaceCheckResult, SwizzleNode, TanHNode, TanNode, type TerrainDebugMode, type TetrahedronCreationOptions, TetrahedronFrameShape, TetrahedronShape, TextSprite, type TextureFetchOptions, type TextureMixinInstanceTypes, type TextureMixinTypes, type TextureProp, type TexturePropUniforms, TextureSampleGrad, TextureSampleNode, type ToMixedTextureType, Tonemap, type TorusCreationOptions, TorusShape, type TransformAccess, TransformNode, type TwistConstraint, TwoBoneIKSolver, UnlitMaterial, VertexBinormalNode, VertexBlockNode, VertexColorNode, VertexIndexNode, VertexNormalNode, VertexOutputNode, VertexPositionNode, VertexTangentNode, VertexUVNode, ViewMatrixNode, ViewProjMatrixNode, type Visitor, Water, type WaveGenerator, WeightedBlendedOIT, applyAngleLimits, applyMaterialMixins, applyResult, applyRuntimeScriptConfig, buildConstraints, buildForwardPlusGraph, buildMSDFShape, buildSurfaceFaces, checkSurfaceCollision, collisionDetection, collisionDetectionCapsule, collisionDetectionSphere, computeMaxDepth, computeNearestPoints, createCapsuleCollider, createGPUClothWrapBindingData, createGeometryCacheState, createPlaneCollider, createSphereCollider, createSpringConstraint, createSpringParticle, createTransformAccess, decode2HalfFromRGBA, decodeFloatFromRGBA, decodeNormalizedFloatFromRGBA, decodeRGBM, defineProps, encode2HalfToRGBA, encodeFloatToRGBA, encodeNormalizedFloatToRGBA, encodeRGBM, ensureGeometryCacheMeshBinding, executeForwardPlusGraph, fetchSampler, gammaToLinear, generateMSDF, getApp, getDevice, getEngine, getInput, getRuntimeScriptProperties, gradient, hash11, hash12, hash13, hash21, hash22, hash23, hash31, hash32, hash33, interleavedGradientNoise, isGPUClothSupported, linearToGamma, mixGeometryCacheBoundingBox, mixinAlbedoColor, mixinBlinnPhong, mixinFoliage, mixinLambert, mixinLight, mixinPBRBluePrint, mixinPBRCommon, mixinPBRMetallicRoughness, mixinPBRSpecularGlossness, mixinTextureProps, mixinVertexColor, noise3D, normalizeRuntimeScriptConfig, normalizeScriptAttachmentConfig, normalizeScriptAttachments, panoramaToCubemap, perlinNoise2D, perlinNoise3D, prefilterCubemap, pushInCollisionDetection, pushInFromCapsule, pushInFromCollider, pushInFromSphere, pushoutFromCapsule, pushoutFromCollider, pushoutFromSphere, resolveCapsuleCollision, resolvePlaneCollision, resolveSphereCollision, restoreGeometryCacheMeshBinding, scriptProp, simulate, smoothNoise3D, sortRootPointsByProximity, temporalResolve, tryGetApp, updateColliderFromNode, valueNoise, whiteNoise, worleyFBM, worleyNoise };
28510
+ export { AABBTree, ABufferOIT, ATMOSPHERIC_FOG_BIT, AbsNode, AbstractPostEffect, AllConditionNode, type AngleLimitConfig, AnimationClip, AnimationController, type AnimationControllerEventMap, type AnimationControllerSetStateOptions, type AnimationControllerStateDefinition, type AnimationFrameEvent, type AnimationMarker, type AnimationMarkerEvent, AnimationPlayback, type AnimationPlaybackEvent, type AnimationPlaybackEventMap, type AnimationPlaybackState, type AnimationPlaybackStopEvent, type AnimationPlaybackSyncMode, type AnimationPlaybackSyncOptions, AnimationSet, type AnimationSetEventMap, type AnimationStopReason, type AnimationTimeRef, AnimationTimeline, type AnimationTimelineActiveDisposition, type AnimationTimelineDefinition, type AnimationTimelineEventPolicy, type AnimationTimelineEventResponse, type AnimationTimelineEventResult, type AnimationTimelineEventTarget, AnimationTimelineRunner, type AnimationTimelineRunnerEventMap, type AnimationTimelineRunnerState, type AnimationTimelineStateReturnTarget, type AnimationTimelineStep, AnimationTrack, AnyConditionNode, type AppCreationOptions, type AppOptions, Application, type ApplyResultOutput, ArcCosNode, ArcSinNode, ArcTan2Node, ArcTanNode, ArccosineHNode, ArcsineHNode, ArctangentHNode, type AssetAnimationData, type AssetAnimationTrack, type AssetFixedGeometryCacheAnimationTrack, type AssetGeometryCacheAnimationTrack, type AssetGeometryCacheFrame, AssetHierarchyNode, type AssetImageInfo, type AssetJointDynamicsChain, type AssetJointDynamicsCollider, type AssetJointDynamicsFlatPlane, type AssetJointDynamicsSpringBone, type AssetMToonMaterial, AssetManager, type AssetMaterial, type AssetMaterialClearcoat, type AssetMaterialCommon, type AssetMaterialIridescence, type AssetMaterialSheen, type AssetMaterialTransmission, type AssetMeshData, type AssetMorphTargetBinding, type AssetMorphTargetGroup, type AssetPBRMaterialCommon, type AssetPBRMaterialMR, type AssetPBRMaterialSG, type AssetPCAGeometryCacheAnimationTrack, type AssetPrimitiveInfo, type AssetRotationTrack, type AssetSamplerInfo, type AssetScaleTrack, AssetScene, type AssetSkeletalAnimationTrack, AssetSkeleton, type AssetSpringBone, type AssetSpringBoneCollider, type AssetSpringBoneColliderGroup, type AssetSpringBoneColliderShape, type AssetSpringBoneJoint, type AssetSubMeshData, type AssetTextureInfo, type AssetTranslationTrack, type AssetUnlitMaterial, type AssetVertexBufferInfo, type AvatarBindMode, type AvatarBodyRegionTarget, type AvatarBodyRegions, type AvatarEquipOptions, type AvatarFitMode, type AvatarJointMap, AvatarOutfitInstance, type AvatarOutfitSource, type AvatarOutfitValidation, type AvatarSlotId, type AvatarSlotOptions, AvatarWardrobe, type AvatarWardrobeOptions, BUILTIN_ASSET_TEST_CUBEMAP, BUILTIN_ASSET_TEXTURE_SHEEN_LUT, BaseCameraController, type BaseFetchOptions, BaseGraphNode, BaseLight, BaseSprite, BaseTextureNode, type BatchDrawable, BatchGroup, BillboardMatrixNode, type BlendMode, BlinnMaterial, type BlitType, Blitter, Bloom, type BluePrintEditorState, type BluePrintUniformTexture, type BluePrintUniformValue, type BlueprintDAG, type BoneNode, BoundingBox, type BoundingVolume, type BoxCreationOptions, BoxFilterBlitter, BoxFrameShape, BoxShape, CCDSolver, type CachedBindGroup, Camera, type CameraHistoryData, CameraNearFarNode, type CameraOITMode, CameraPositionNode, CameraVectorNode, type CapsuleCollider, type CapsuleCreationOptions, CapsuleShape, CeilNode, ClampNode, ClipmapTerrain, ClipmapTerrainMaterial, ColliderForce, type ColliderR, type ColliderRW, type CollisionResult, ColorAdjust, type ColoredEdge, type ColoredLineEdge, type ColoredQuadraticEdge, CompAddNode, CompComparisonNode, CompDivNode, CompMulNode, CompSubNode, type ComparisonMode, type CompiledRenderGraph, Compositor, type CompositorBuildLayerOptions, type CompositorBuildLayerResult, ConstantBVec2Node, ConstantBVec3Node, ConstantBVec4Node, ConstantBooleanNode, ConstantScalarNode, ConstantTexture2DArrayNode, ConstantTexture2DNode, ConstantTextureCubeNode, ConstantVec2Node, ConstantVec3Node, ConstantVec4Node, type Constraint, type ConstraintBuildOptions, ConstraintType, type ControllerConfig, type ControllerConfigUpdate, CopyBlitter, type CopyHumanoidAnimationOptions, CosHNode, CosNode, CrossProductNode, CubemapSHProjector, CullVisitor, type CylinderCreationOptions, CylinderShape, DDXNode, DDYNode, Degrees2RadiansNode, DepthPass, DevicePoolAllocator, DirectionalLight, DistanceNode, DotProductNode, DracoMeshDecoder, type DrawContext, type Drawable, type DrawableInstanceInfo, DualDepthPeelingOIT, EPSILON, type EdgeColor, type EditorMode, ElapsedTimeNode, type EmitterBehavior, type EmitterShape, Engine, EnvConstantAmbient, EnvHemisphericAmbient, type EnvLightType, EnvLightWrapper, EnvShIBL, Environment, EnvironmentLighting, EqualNode, Exp2Node, ExpNode, type ExtractMixinReturnType, type ExtractMixinType, FABRIKSolver, FBMWaveGenerator, FFTWaveGenerator, FPSCameraController, type FPSCameraControllerOptions, FWidthNode, FXAA, FaceForwardNode, type FixedGeometryCacheFrame, type FixedGeometryCacheState, FixedGeometryCacheTrack, type FlatPlane, FloorNode, FmaNode, type FogType, FontAsset, type FontAssetFetchOptions, type FontAssetMSDFAtlasSettings, type FontMetrics, type ForwardPlusOptions, FractNode, FrameResources, FunctionCallNode, FunctionInputNode, FunctionOutputNode, GPUClothSystem, type GPUClothSystemOptions, type GPUClothWrapBindingData, type GPUClothWrapBindingTarget, GaussianBlurBlitter, GenericMathNode, type GeometryCacheFrame, type GeometryCacheMeshBinding, type GeometryCacheState, GerstnerWaveGenerator, type GlyphContour, type GlyphData, type GlyphPoint, type GrabberR, type GrabberRW, GraphNode, type GraphNodeInput, type GraphNodeOutput, type GraphStructure, type GrassInstanceInfo, GrassLayer, GrassMaterial, GrassRenderer, Grayscale, HEIGHT_FOG_BIT, Hash1Node, Hash2Node, Hash3Node, HistoryResourceManager, type Host, HumanoidBodyRig, HumanoidHandRig, type HumanoidJointMapping, type HumanoidRetargetAxisLocks, type HumanoidRootMotionMode, type HumanoidRootMotionScaleMode, type HumanoidSkeletalAnimationMaskOptions, type HumanoidSkeletalAnimationMaskPreset, type IAttachedScript, type IBaseEvent, type IControllerKeyboardEvent, type IControllerKeydownEvent, type IControllerKeypressEvent, type IControllerKeyupEvent, type IControllerMouseEvent, type IControllerPointerCancelEvent, type IControllerPointerDownEvent, type IControllerPointerMoveEvent, type IControllerPointerUpEvent, type IControllerWheelEvent, type IGraphNode, IKAngleConstraint, IKChain, IKConstraint, type IKJoint, IKModifier, IKSolver, type IMixinAlbedoColor, type IMixinBlinnPhong, type IMixinFoliage, type IMixinLambert, type IMixinLight, type IMixinPBRBluePrint, type IMixinPBRCommon, type IMixinPBRMetallicRoughness, type IMixinPBRSpecularGlossiness, type IMixinVertexColor, type IModKey, type IRUniformTexture, type IRUniformValue, type IRenderHook, type IRenderable, type InputEventHandler, InputManager, InstanceBindGroupAllocator, type InstanceData, InstanceIndexNode, type InstanceUniformType, type InterChainConstraint, InvProjMatrixNode, InvSqrtNode, InvViewProjMatrixNode, type JointChainConfig, type JointDynamicSystemConfig, type JointDynamicsColliderHandle, type JointDynamicsColliderSnapshot, type JointDynamicsFlatPlaneHandle, type JointDynamicsFlatPlaneSnapshot, type JointDynamicsGrabberHandle, type JointDynamicsGrabberSnapshot, JointDynamicsModifier, JointDynamicsSystem, JointDynamicsSystemController, type JointNameMatcher, LIGHT_TYPE_DIRECTIONAL, LIGHT_TYPE_NONE, LIGHT_TYPE_POINT, LIGHT_TYPE_RECT, LIGHT_TYPE_SPOT, LambertMaterial, LengthNode, type LineCollisionResult, Log2Node, type LogMode, LogNode, LogicallyAndNode, LogicallyOrNode, MAX_CLUSTERED_LIGHTS, MAX_GERSTNER_WAVE_COUNT, MAX_MORPH_ATTRIBUTES, MAX_MORPH_TARGETS, MAX_SHADOW_MASK_LIGHTS, MAX_TERRAIN_MIPMAP_LEVELS, MORPH_ATTRIBUTE_VECTOR_COUNT, MORPH_TARGET_COLOR, MORPH_TARGET_NORMAL, MORPH_TARGET_POSITION, MORPH_TARGET_TANGENT, MORPH_TARGET_TEX0, MORPH_TARGET_TEX1, MORPH_TARGET_TEX2, MORPH_TARGET_TEX3, MORPH_WEIGHTS_VECTOR_COUNT, type MSDFBitmap, type MSDFOptions, type MSDFShape, MSDFText, MSDFTextAtlasManager, MSDFTextSprite, MToonMaterial, type MToonOutlineWidthMode, MakeVectorNode, Material, MaterialBlueprintIR, type MaterialBlueprintIRBehaviors, type MaterialTextureInfo, MaterialVaryingFlags, MaxNode, Mesh$1 as Mesh, MeshMaterial, type MeshUpdateCallback, type Metadata$1 as Metadata, MinNode, MixNode, ModNode, type ModelFetchOptions, type ModelInfo, type ModelLoader, type MorphBoundingInfo, type MorphData, type MorphInfo, type MorphState, MorphTargetGroupTrack, MorphTargetTrack, MultiChainSpringSystem, type MultiChainSpringSystemOptions, type NamedJointsSkeletalAnimationMaskOptions, NamedObject, type NearestPointsResult, type NodeConnection, NodeEulerRotationTrack, type NodeIterateFunc, NodeRotationTrack, NodeScaleTrack, NodeTranslationTrack, NormalizeNode, NotEqualNode, type OIT, Octree, OctreeNode, OctreeNodeChunk, OctreePlacement, OrbitCameraController, type OrbitCameraControllerOptions, OrthoCamera, PBRBlockNode, PBRBluePrintMaterial, type PBRBlueprintOutputName, PBRMetallicRoughnessMaterial, type PBRReflectionMode, PBRSpecularGlossinessMaterial, type PCAGeometryCacheState, PCAGeometryCacheTrack, type PCAGeometryCacheTrackData, type PairAdjustment, PannerNode, ParticleMaterial, ParticleSystem, PerlinNoise2DNode, PerspectiveCamera, type PhysicsCurves, type PickResult, type PickTarget, PixelNormalNode, PixelWorldPositionNode, type PlaneCollider, type PlaneCreationOptions, PlaneShape, type PlayAnimationOptions, type PointInit, PointLight, type PointR, type PointRW, type PointTransform, type PostEffectHistoryRead, PostEffectLayer, type PostEffectOutput, type PostEffectSetupContext, PowNode, Primitive, ProjectionMatrixNode, type PropEdit, type PropertyAccessor, type PropertyAccessorOptions, type PropertySceneNodeOptions, type PropertyToType, PropertyTrack, type PropertyType, type PropertyValue, PunctualLight, QUEUE_OPAQUE, QUEUE_TRANSPARENT, RENDER_PASS_TYPE_DEPTH, RENDER_PASS_TYPE_LIGHT, RENDER_PASS_TYPE_OBJECT_COLOR, RENDER_PASS_TYPE_SHADOWMAP, RGBlackboard, type RGExecuteContext, type RGExecuteFn, type RGFramebufferDesc, RGHandle, RGHistoryResources, type RGPassBuilder, type RGProfileResult, type RGProfileScopeResult, type RGProfileScopeType, type RGProfilingOptions, type RGResolvedSize, type RGResourceLifetime, type RGSizeMode, RGSubpass, type RGTextureAllocator, type RGTextureDesc, Radians2DegreesNode, RaycastVisitor, RectLight, ReflectNode, RefractNode, type RenderFunc, RenderGraph, RenderGraphExecutor, type RenderGraphExecutorOptions, type RenderItemList, type RenderItemListBundle, type RenderItemListInfo, RenderPass, type RenderPath, RenderQueue, type RenderQueueItem, type RenderQueueRef, RenderTarget, type ResolutionTransform, ResolveVertexNormalNode, ResolveVertexPositionNode, ResolveVertexTangentNode, ResourceManager, RotateAboutAxisNode, RuntimeScript, type RuntimeScriptArrayDeclaration, type RuntimeScriptArrayElementDeclaration, type RuntimeScriptConfig, type RuntimeScriptObjectDeclaration, type RuntimeScriptObjectFieldDeclaration, type RuntimeScriptPropertyDeclaration, type RuntimeScriptPropertyInfo, type RuntimeScriptPropertyOptions, type RuntimeScriptPropertyType, type RuntimeScriptValueDeclaration, type RuntimeScriptValueType, SAO, type SSSDebugView, type SSSQualityPreset, type SSSResolvedSettings, type SamplerType, SaturateNode, type SaveOptions, Scene, type SceneMorphTargetBinding, type SceneMorphTargetGroup, SceneNode, type SceneNodeVisible, ScreenAdapter, type ScreenConfig, ScreenRenderTarget, type ScreenScaleMode, ScriptAttachment, type ScriptAttachmentConfig, ScriptRegistry, ScriptingSystem, type ScriptingSystemOptions, SelectionNode, type SerializableClass, type SerializedMorphTargetBinding, type SerializedMorphTargetGroup, ShaderHelper, ShadowMapPass, ShadowMapper, type ShadowMode, type ShadowQualityPreset, ShadowRegion, Shape, type ShapeCreationOptions, type ShapeOptionType, type ShapeType, SharedModel, SignNode, SimplexNoise2DNode, type SimulationParams, SinHNode, SinNode, type SkeletalAnimationMaskCommonOptions, type SkeletalAnimationMaskOptions, type SkeletalAnimationMaskRootMotionMode, type SkeletalAnimationMaskUnsupportedTrackMode, Skeleton, type SkeletonBindPose, SkeletonModifier, SkeletonRig, type SkeletonRigOptions, SkinBinding, SkinMaterial, SkinSSS, type SkinnedBoundingBox, SkyEnvTextureNode, SkyRenderer, type SkyType, SmoothStepNode, type SphereCollider, type SphereCreationOptions, SphereShape, SpotLight, SpringChain, type SpringCollider, type SpringConstraint, SpringModifier, type SpringParticle, SpringSystem, type SpringSystemOptions, Sprite, SpriteBlockNode, SpriteBlueprintMaterial, SpriteMaterial, SqrtNode, StandardSpriteMaterial, StepNode, type StopAnimationOptions, SubsurfaceProfile, type SubsurfaceProfilePreset, type SurfaceCheckResult, SwizzleNode, TanHNode, TanNode, type TerrainDebugMode, type TetrahedronCreationOptions, TetrahedronFrameShape, TetrahedronShape, TextSprite, type TextureFetchOptions, type TextureMixinInstanceTypes, type TextureMixinTypes, type TextureProp, type TexturePropUniforms, TextureSampleGrad, TextureSampleNode, type ToMixedTextureType, Tonemap, type TorusCreationOptions, TorusShape, type TransformAccess, TransformNode, type TwistConstraint, TwoBoneIKSolver, UnlitMaterial, VertexBinormalNode, VertexBlockNode, VertexColorNode, VertexIndexNode, VertexNormalNode, VertexOutputNode, VertexPositionNode, VertexTangentNode, VertexUVNode, ViewMatrixNode, ViewProjMatrixNode, type Visitor, Water, type WaveGenerator, WeightedBlendedOIT, applyAngleLimits, applyMaterialMixins, applyResult, applyRuntimeScriptConfig, buildConstraints, buildForwardPlusGraph, buildMSDFShape, buildSurfaceFaces, checkSurfaceCollision, collisionDetection, collisionDetectionCapsule, collisionDetectionSphere, computeMaxDepth, computeNearestPoints, createCapsuleCollider, createGPUClothWrapBindingData, createGeometryCacheState, createPlaneCollider, createSphereCollider, createSpringConstraint, createSpringParticle, createTransformAccess, decode2HalfFromRGBA, decodeFloatFromRGBA, decodeNormalizedFloatFromRGBA, decodeRGBM, defineProps, encode2HalfToRGBA, encodeFloatToRGBA, encodeNormalizedFloatToRGBA, encodeRGBM, ensureGeometryCacheMeshBinding, executeForwardPlusGraph, fetchSampler, gammaToLinear, generateMSDF, getApp, getDevice, getEngine, getInput, getRuntimeScriptProperties, getSamplerOptions, gradient, hash11, hash12, hash13, hash21, hash22, hash23, hash31, hash32, hash33, interleavedGradientNoise, isGPUClothSupported, linearToGamma, mixGeometryCacheBoundingBox, mixinAlbedoColor, mixinBlinnPhong, mixinFoliage, mixinLambert, mixinLight, mixinPBRBluePrint, mixinPBRCommon, mixinPBRMetallicRoughness, mixinPBRSpecularGlossness, mixinTextureProps, mixinVertexColor, noise3D, normalizeRuntimeScriptConfig, normalizeScriptAttachmentConfig, normalizeScriptAttachments, panoramaToCubemap, perlinNoise2D, perlinNoise3D, prefilterCubemap, pushInCollisionDetection, pushInFromCapsule, pushInFromCollider, pushInFromSphere, pushoutFromCapsule, pushoutFromCollider, pushoutFromSphere, resolveCapsuleCollision, resolvePlaneCollision, resolveSphereCollision, restoreGeometryCacheMeshBinding, scriptProp, simulate, smoothNoise3D, sortRootPointsByProximity, temporalResolve, tryGetApp, updateColliderFromNode, valueNoise, whiteNoise, worleyFBM, worleyNoise };