@gnsx/three 0.184.6 → 0.184.8

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.
@@ -9867,6 +9867,32 @@ class RendererReferenceNode extends ReferenceBaseNode {
9867
9867
  */
9868
9868
  const rendererReference = ( name, type, renderer = null ) => new RendererReferenceNode( name, type, renderer );
9869
9869
 
9870
+ // WITH_GENESYS
9871
+ /**
9872
+ * Clears strong links from a {@link RendererReferenceNode} to a disposed renderer.
9873
+ * Module-level nodes (e.g. `toneMappingExposure`) set `.reference` each frame via
9874
+ * `updateReference()` and are not cleared by {@link Renderer#dispose} otherwise.
9875
+ *
9876
+ * @param {RendererReferenceNode} node - The reference node to detach.
9877
+ * @param {Renderer} renderer - The renderer being disposed.
9878
+ */
9879
+ function detachRendererReference( node, renderer ) {
9880
+
9881
+ if ( node.reference === renderer ) {
9882
+
9883
+ node.reference = null;
9884
+
9885
+ }
9886
+
9887
+ if ( node.renderer === renderer ) {
9888
+
9889
+ node.renderer = null;
9890
+
9891
+ }
9892
+
9893
+ }
9894
+ // !WITH_GENESYS
9895
+
9870
9896
  /**
9871
9897
  * This node represents a tone mapping operation.
9872
9898
  *
@@ -21694,7 +21720,10 @@ class NodeMaterial extends Material {
21694
21720
 
21695
21721
  if ( materialLightsNode.length > 0 ) {
21696
21722
 
21697
- lightsN = builder.renderer.lighting.createNode( [ ...lightsN.getLights(), ...materialLightsNode ] );
21723
+ // WITH_GENESYS
21724
+ lightsN = builder.renderer.lighting.createMaterialNode( lightsN, materialLightsNode );
21725
+ // !WITH_GENESYS
21726
+ // lightsN = builder.renderer.lighting.createNode( [ ...lightsN.getLights(), ...materialLightsNode ] );
21698
21727
 
21699
21728
  }
21700
21729
 
@@ -30381,6 +30410,23 @@ class RenderObjects {
30381
30410
  */
30382
30411
  this.chainMaps = {};
30383
30412
 
30413
+ // WITH_GENESYS
30414
+ /**
30415
+ * Strongly tracks every render object created through {@link createRenderObject}
30416
+ * so {@link dispose} can iterate them. ChainMap is `WeakMap`-backed and not
30417
+ * iterable, so without this set the dispose listeners installed by
30418
+ * `RenderObject` on shared materials and geometries (e.g. PMREM, `QuadGeometry`)
30419
+ * would leak when the renderer is torn down while those singletons live on.
30420
+ *
30421
+ * Entries are removed in the same `onDispose` callback that cleans the chain
30422
+ * map entry, so steady-state behavior is unchanged.
30423
+ *
30424
+ * @private
30425
+ * @type {Set<RenderObject>}
30426
+ */
30427
+ this._renderObjects = new Set();
30428
+ // !WITH_GENESYS
30429
+
30384
30430
  }
30385
30431
 
30386
30432
  /**
@@ -30481,6 +30527,20 @@ class RenderObjects {
30481
30527
  */
30482
30528
  dispose() {
30483
30529
 
30530
+ // WITH_GENESYS
30531
+ // Snapshot first: `RenderObject.dispose()` fires `onDispose` which
30532
+ // mutates `_renderObjects` (and the chain map). Iterating the live set
30533
+ // would skip entries.
30534
+ const renderObjects = Array.from( this._renderObjects );
30535
+ this._renderObjects.clear();
30536
+
30537
+ for ( const renderObject of renderObjects ) {
30538
+
30539
+ renderObject.dispose();
30540
+
30541
+ }
30542
+
30543
+ // !WITH_GENESYS
30484
30544
  this.chainMaps = {};
30485
30545
 
30486
30546
  }
@@ -30507,6 +30567,10 @@ class RenderObjects {
30507
30567
 
30508
30568
  const renderObject = new RenderObject( nodes, geometries, renderer, object, material, scene, camera, lightsNode, renderContext, clippingContext );
30509
30569
 
30570
+ // WITH_GENESYS
30571
+ this._renderObjects.add( renderObject );
30572
+ // !WITH_GENESYS
30573
+
30510
30574
  renderObject.onDispose = () => {
30511
30575
 
30512
30576
  this.pipelines.delete( renderObject );
@@ -30515,6 +30579,10 @@ class RenderObjects {
30515
30579
 
30516
30580
  chainMap.delete( renderObject.getChainArray() );
30517
30581
 
30582
+ // WITH_GENESYS
30583
+ this._renderObjects.delete( renderObject );
30584
+ // !WITH_GENESYS
30585
+
30518
30586
  };
30519
30587
 
30520
30588
  return renderObject;
@@ -33600,6 +33668,30 @@ class Textures extends DataMap {
33600
33668
  */
33601
33669
  this._htmlTextures = new Set();
33602
33670
 
33671
+ // WITH_GENESYS
33672
+ /**
33673
+ * Strongly tracks every texture that has had a `'dispose'` listener
33674
+ * installed by {@link updateTexture}. `DataMap` is `WeakMap`-backed and
33675
+ * not iterable; without this set the listener (whose closure references
33676
+ * `Textures` → `renderer`) would leak when {@link dispose} is called
33677
+ * while shared textures live on.
33678
+ *
33679
+ * @private
33680
+ * @type {Set<Texture>}
33681
+ */
33682
+ this._textures = new Set();
33683
+
33684
+ /**
33685
+ * Strongly tracks every render target that has had a `'dispose'` listener
33686
+ * installed by {@link updateRenderTarget}. Same rationale as
33687
+ * {@link _textures}.
33688
+ *
33689
+ * @private
33690
+ * @type {Set<RenderTarget>}
33691
+ */
33692
+ this._renderTargets = new Set();
33693
+ // !WITH_GENESYS
33694
+
33603
33695
  }
33604
33696
 
33605
33697
  /**
@@ -33726,6 +33818,10 @@ class Textures extends DataMap {
33726
33818
 
33727
33819
  renderTarget.addEventListener( 'dispose', renderTargetData.onDispose );
33728
33820
 
33821
+ // WITH_GENESYS
33822
+ this._renderTargets.add( renderTarget );
33823
+ // !WITH_GENESYS
33824
+
33729
33825
  }
33730
33826
 
33731
33827
  }
@@ -33946,6 +34042,10 @@ class Textures extends DataMap {
33946
34042
 
33947
34043
  texture.addEventListener( 'dispose', textureData.onDispose );
33948
34044
 
34045
+ // WITH_GENESYS
34046
+ this._textures.add( texture );
34047
+ // !WITH_GENESYS
34048
+
33949
34049
  }
33950
34050
 
33951
34051
  //
@@ -34114,6 +34214,10 @@ class Textures extends DataMap {
34114
34214
  this.delete( renderTarget );
34115
34215
  this.backend.delete( renderTarget );
34116
34216
 
34217
+ // WITH_GENESYS
34218
+ this._renderTargets.delete( renderTarget );
34219
+ // !WITH_GENESYS
34220
+
34117
34221
  this.info.memory.renderTargets --;
34118
34222
 
34119
34223
  }
@@ -34163,12 +34267,54 @@ class Textures extends DataMap {
34163
34267
 
34164
34268
  this.delete( texture );
34165
34269
 
34270
+ // WITH_GENESYS
34271
+ this._textures.delete( texture );
34272
+ // !WITH_GENESYS
34273
+
34166
34274
  this.info.destroyTexture( texture );
34167
34275
 
34168
34276
  }
34169
34277
 
34170
34278
  }
34171
34279
 
34280
+ // WITH_GENESYS
34281
+ /**
34282
+ * Frees internal resources. Destroys every tracked render target and
34283
+ * texture so the `'dispose'` listeners installed by {@link updateTexture}
34284
+ * and {@link updateRenderTarget} are removed; without this, listeners on
34285
+ * shared textures (PMREM, environment maps, etc.) would retain this
34286
+ * `Textures` instance (and its renderer) across renderer teardown.
34287
+ *
34288
+ * @override
34289
+ */
34290
+ dispose() {
34291
+
34292
+ // Snapshot first: `_destroy*` mutates the sets.
34293
+ const renderTargets = Array.from( this._renderTargets );
34294
+ this._renderTargets.clear();
34295
+
34296
+ for ( const renderTarget of renderTargets ) {
34297
+
34298
+ this._destroyRenderTarget( renderTarget );
34299
+
34300
+ }
34301
+
34302
+ const textures = Array.from( this._textures );
34303
+ this._textures.clear();
34304
+
34305
+ for ( const texture of textures ) {
34306
+
34307
+ this._destroyTexture( texture );
34308
+
34309
+ }
34310
+
34311
+ this._htmlTextures.clear();
34312
+
34313
+ super.dispose();
34314
+
34315
+ }
34316
+ // !WITH_GENESYS
34317
+
34172
34318
  }
34173
34319
 
34174
34320
  /**
@@ -43349,6 +43495,112 @@ class LightsNode extends Node {
43349
43495
 
43350
43496
  }
43351
43497
 
43498
+ // WITH_GENESYS
43499
+ /**
43500
+ * A lights node that composes a live scene lights node with material-local
43501
+ * lighting nodes like environment, AO and light map lighting.
43502
+ *
43503
+ * @augments LightsNode
43504
+ */
43505
+ class MaterialLightsNode extends LightsNode {
43506
+
43507
+ static get type() {
43508
+
43509
+ return 'MaterialLightsNode';
43510
+
43511
+ }
43512
+
43513
+ /**
43514
+ * Constructs a new material lights node.
43515
+ *
43516
+ * @param {LightsNode} lightsNode - The live scene lights node.
43517
+ * @param {Array<LightingNode>} materialLights - Material-local lighting nodes.
43518
+ */
43519
+ constructor( lightsNode, materialLights = [] ) {
43520
+
43521
+ super();
43522
+
43523
+ this.lightsNode = lightsNode;
43524
+ this.materialLights = materialLights;
43525
+ this.updateType = lightsNode.getUpdateType();
43526
+ this.updateBeforeType = lightsNode.getUpdateBeforeType();
43527
+ this.updateAfterType = lightsNode.getUpdateAfterType();
43528
+
43529
+ }
43530
+
43531
+ customCacheKey() {
43532
+
43533
+ const hash = [ this.lightsNode.getCacheKey( true ) ];
43534
+
43535
+ for ( const lightNode of this.materialLights ) {
43536
+
43537
+ hash.push( lightNode.getCacheKey( true ) );
43538
+
43539
+ }
43540
+
43541
+ return hashArray( hash );
43542
+
43543
+ }
43544
+
43545
+ setupLights( builder, materialLights ) {
43546
+
43547
+ this.lightsNode.setupLights( builder, this.lightsNode.getLightNodes( builder ) );
43548
+
43549
+ for ( const lightNode of materialLights ) {
43550
+
43551
+ lightNode.build( builder );
43552
+
43553
+ }
43554
+
43555
+ }
43556
+
43557
+ update( frame ) {
43558
+
43559
+ if ( this.lightsNode.update ) this.lightsNode.update( frame );
43560
+
43561
+ }
43562
+
43563
+ updateBefore( frame ) {
43564
+
43565
+ if ( this.lightsNode.updateBefore ) this.lightsNode.updateBefore( frame );
43566
+
43567
+ }
43568
+
43569
+ updateAfter( frame ) {
43570
+
43571
+ if ( this.lightsNode.updateAfter ) this.lightsNode.updateAfter( frame );
43572
+
43573
+ }
43574
+
43575
+ dispose() {
43576
+
43577
+ super.dispose();
43578
+
43579
+ this.lightsNode = null;
43580
+ this.materialLights = null;
43581
+
43582
+ }
43583
+
43584
+ getLightNodes() {
43585
+
43586
+ return this.materialLights;
43587
+
43588
+ }
43589
+
43590
+ getLights() {
43591
+
43592
+ return this.lightsNode.getLights();
43593
+
43594
+ }
43595
+
43596
+ get hasLights() {
43597
+
43598
+ return this.lightsNode.getScope().hasLights || this.materialLights.length > 0;
43599
+
43600
+ }
43601
+
43602
+ }
43603
+
43352
43604
  /**
43353
43605
  * TSL function for creating an instance of `LightsNode` and configuring
43354
43606
  * it with the given array of lights.
@@ -47429,6 +47681,7 @@ var TSL = /*#__PURE__*/Object.freeze({
47429
47681
  INFINITY: INFINITY,
47430
47682
  If: If,
47431
47683
  Loop: Loop,
47684
+ MaterialLightsNode: MaterialLightsNode,
47432
47685
  NodeAccess: NodeAccess,
47433
47686
  NodeShaderStage: NodeShaderStage,
47434
47687
  NodeType: NodeType,
@@ -47579,6 +47832,7 @@ var TSL = /*#__PURE__*/Object.freeze({
47579
47832
  densityFogFactor: densityFogFactor,
47580
47833
  depth: depth,
47581
47834
  depthPass: depthPass,
47835
+ detachRendererReference: detachRendererReference,
47582
47836
  determinant: determinant,
47583
47837
  difference: difference,
47584
47838
  diffuseColor: diffuseColor,
@@ -55690,6 +55944,22 @@ class Lighting {
55690
55944
 
55691
55945
  }
55692
55946
 
55947
+ // WITH_GENESYS
55948
+ /**
55949
+ * Creates a lights node that composes live scene lighting with material-local
55950
+ * lighting nodes such as environment, AO and light map lighting.
55951
+ *
55952
+ * @param {LightsNode} lightsNode - The live scene lights node.
55953
+ * @param {Array<LightingNode>} materialLights - Material-local lighting nodes.
55954
+ * @return {MaterialLightsNode} The material lights node.
55955
+ */
55956
+ createMaterialNode( lightsNode, materialLights = [] ) {
55957
+
55958
+ return new MaterialLightsNode( lightsNode, materialLights );
55959
+
55960
+ }
55961
+ // !WITH_GENESYS
55962
+
55693
55963
  /**
55694
55964
  * Returns a lights node for the given scene and camera.
55695
55965
  *
@@ -60296,8 +60566,20 @@ class Renderer {
60296
60566
 
60297
60567
  } );
60298
60568
 
60569
+ // WITH_GENESYS
60570
+ // Drop the strong reference to the active `RenderContext` so module-level
60571
+ // `WeakMap<RenderContext, …>` caches can release entries once
60572
+ // `_renderContexts.dispose()` has cleared its dictionary.
60573
+ this._currentRenderContext = null;
60574
+ // !WITH_GENESYS
60575
+
60299
60576
  }
60300
60577
 
60578
+ // WITH_GENESYS
60579
+ // Module-level TSL `toneMappingExposure` retains the last renderer in `.reference`.
60580
+ detachRendererReference( toneMappingExposure, this );
60581
+ // !WITH_GENESYS
60582
+
60301
60583
  this.setRenderTarget( null );
60302
60584
  this.setAnimationLoop( null );
60303
60585
 
@@ -83966,4 +84248,4 @@ class ClippingGroup extends Group {
83966
84248
 
83967
84249
  }
83968
84250
 
83969
- export { ACESFilmicToneMapping, AONode, AddEquation, AddOperation, AdditiveBlending, AgXToneMapping, AlphaFormat, AlwaysCompare, AlwaysDepth, AlwaysStencilFunc, AmbientLight, AmbientLightNode, AnalyticLightNode, ArrayCamera, ArrayElementNode, ArrayNode, AssignNode, AtomicFunctionNode, AttributeNode, BackSide, BarrierNode, BasicEnvironmentNode, BasicLightMapNode, BasicNodeLibrary, BasicShadowMap, BatchNode, BitcastNode, BitcountNode, BlendMode, BoxGeometry, BufferAttribute, BufferAttributeNode, BufferGeometry, BufferNode, BuiltinNode, BumpMapNode, BundleGroup, BypassNode, ByteType, CanvasTarget, CineonToneMapping, ClampToEdgeWrapping, ClippingGroup, ClippingNode, CodeNode, Color, ColorManagement, ColorSpaceNode, Compatibility, ComputeBuiltinNode, ComputeNode, ConditionalNode, ConstNode, ContextNode, ConvertNode, CubeCamera, CubeDepthTexture, CubeMapNode, CubeReflectionMapping, CubeRefractionMapping, CubeRenderTarget, CubeTexture, CubeTextureNode, CubeUVReflectionMapping, CullFaceBack, CullFaceFront, CullFaceNone, CustomBlending, CylinderGeometry, DataArrayTexture, DataTexture, DebugNode, DecrementStencilOp, DecrementWrapStencilOp, DepthFormat, DepthStencilFormat, DepthTexture, DirectionalLight, DirectionalLightNode, DoubleSide, DstAlphaFactor, DstColorFactor, DynamicDrawUsage, EnvironmentNode, EqualCompare, EqualDepth, EqualStencilFunc, EquirectangularReflectionMapping, EquirectangularRefractionMapping, EventDispatcher, EventNode, ExpressionNode, FileLoader, FlipNode, Float16BufferAttribute, Float32BufferAttribute, FloatType, FramebufferTexture, FrontFacingNode, FrontSide, Frustum, FrustumArray, FunctionCallNode, FunctionNode, FunctionOverloadingNode, GLSLNodeBuilder, GLSLNodeParser, GreaterCompare, GreaterDepth, GreaterEqualCompare, GreaterEqualDepth, GreaterEqualStencilFunc, GreaterStencilFunc, Group, HalfFloatType, HemisphereLight, HemisphereLightNode, IESSpotLight, IESSpotLightNode, IncrementStencilOp, IncrementWrapStencilOp, IndexNode, IndirectStorageBufferAttribute, InputNode, InspectorBase, InspectorNode, InstanceNode, InstancedBufferAttribute, InstancedInterleavedBuffer, InstancedMeshNode, IntType, InterleavedBuffer, InterleavedBufferAttribute, InvertStencilOp, IrradianceNode, IsolateNode, JoinNode, KeepStencilOp, LessCompare, LessDepth, LessEqualCompare, LessEqualDepth, LessEqualStencilFunc, LessStencilFunc, LightProbe, LightProbeNode, Lighting, LightingContextNode, LightingModel, LightingNode, LightsNode, Line2NodeMaterial, LineBasicMaterial, LineBasicNodeMaterial, LineDashedMaterial, LineDashedNodeMaterial, LinearFilter, LinearMipMapLinearFilter, LinearMipmapLinearFilter, LinearMipmapNearestFilter, LinearSRGBColorSpace, LinearToneMapping, LinearTransfer, Loader, LoopNode, MRTNode, Material, MaterialBlending, MaterialLoader, MaterialNode, MaterialReferenceNode, MathNode, MathUtils, Matrix2, Matrix3, Matrix4, MaxEquation, MaxMipLevelNode, MemberNode, Mesh, MeshBasicMaterial, MeshBasicNodeMaterial, MeshLambertMaterial, MeshLambertNodeMaterial, MeshMatcapMaterial, MeshMatcapNodeMaterial, MeshNormalMaterial, MeshNormalNodeMaterial, MeshPhongMaterial, MeshPhongNodeMaterial, MeshPhysicalMaterial, MeshPhysicalNodeMaterial, MeshSSSNodeMaterial, MeshStandardMaterial, MeshStandardNodeMaterial, MeshToonMaterial, MeshToonNodeMaterial, MinEquation, MirroredRepeatWrapping, MixOperation, ModelNode, MorphNode, MultiplyBlending, MultiplyOperation, NearestFilter, NearestMipmapLinearFilter, NearestMipmapNearestFilter, NeutralToneMapping, NeverCompare, NeverDepth, NeverStencilFunc, NoBlending, NoColorSpace, NoNormalPacking, NoToneMapping, Node, NodeAccess, NodeAttribute, NodeBuilder, NodeCache, NodeCode, NodeError, NodeFrame, NodeFunctionInput, NodeLoader, NodeMaterial, NodeMaterialLoader, NodeMaterialObserver, NodeObjectLoader, NodeShaderStage, NodeType, NodeUniform, NodeUpdateType, NodeUtils, NodeVar, NodeVarying, NormalBlending, NormalGAPacking, NormalMapNode, NormalRGPacking, NotEqualCompare, NotEqualDepth, NotEqualStencilFunc, Object3D, Object3DNode, ObjectLoader, ObjectSpaceNormalMap, OneFactor, OneMinusDstAlphaFactor, OneMinusDstColorFactor, OneMinusSrcAlphaFactor, OneMinusSrcColorFactor, OperatorNode, OrthographicCamera, OutputStructNode, PCFShadowMap, PCFSoftShadowMap, PMREMGenerator, PMREMNode, PackFloatNode, ParameterNode, PassNode, PerspectiveCamera, PhongLightingModel, PhysicalLightingModel, Plane, PlaneGeometry, PointLight, PointLightNode, PointShadowNode, PointUVNode, PointsMaterial, PointsNodeMaterial, PostProcessing, ProjectorLight, ProjectorLightNode, PropertyNode, QuadMesh, Quaternion, R11_EAC_Format, RED_GREEN_RGTC2_Format, RED_RGTC1_Format, REVISION, RG11_EAC_Format, RGBAFormat, RGBAIntegerFormat, RGBA_ASTC_10x10_Format, RGBA_ASTC_10x5_Format, RGBA_ASTC_10x6_Format, RGBA_ASTC_10x8_Format, RGBA_ASTC_12x10_Format, RGBA_ASTC_12x12_Format, RGBA_ASTC_4x4_Format, RGBA_ASTC_5x4_Format, RGBA_ASTC_5x5_Format, RGBA_ASTC_6x5_Format, RGBA_ASTC_6x6_Format, RGBA_ASTC_8x5_Format, RGBA_ASTC_8x6_Format, RGBA_ASTC_8x8_Format, RGBA_BPTC_Format, RGBA_ETC2_EAC_Format, RGBA_PVRTC_2BPPV1_Format, RGBA_PVRTC_4BPPV1_Format, RGBA_S3TC_DXT1_Format, RGBA_S3TC_DXT3_Format, RGBA_S3TC_DXT5_Format, RGBFormat, RGBIntegerFormat, RGB_ETC1_Format, RGB_ETC2_Format, RGB_PVRTC_2BPPV1_Format, RGB_PVRTC_4BPPV1_Format, RGB_S3TC_DXT1_Format, RGFormat, RGIntegerFormat, RTTNode, RangeNode, ReadbackBuffer, RectAreaLight, RectAreaLightNode, RedFormat, RedIntegerFormat, ReferenceBaseNode, ReferenceNode, ReflectorNode, ReinhardToneMapping, RenderOutputNode, RenderPipeline, RenderTarget, RendererReferenceNode, RendererUtils, RepeatWrapping, ReplaceStencilOp, ReverseSubtractEquation, RotateNode, SIGNED_R11_EAC_Format, SIGNED_RED_GREEN_RGTC2_Format, SIGNED_RED_RGTC1_Format, SIGNED_RG11_EAC_Format, SRGBColorSpace, SRGBTransfer, SampleNode, Scene, ScreenNode, SetNode, ShadowBaseNode, ShadowMaterial, ShadowNode, ShadowNodeMaterial, ShortType, SkinningNode, Sphere, SphereGeometry, SplitNode, SpotLight, SpotLightNode, SpriteMaterial, SpriteNodeMaterial, SrcAlphaFactor, SrcAlphaSaturateFactor, SrcColorFactor, StackNode, StackTrace, StaticDrawUsage, Storage3DTexture, StorageArrayElementNode, StorageArrayTexture, StorageBufferAttribute, StorageBufferNode, StorageInstancedBufferAttribute, StorageTexture, StorageTextureNode, StructNode, StructTypeNode, SubBuildNode, SubgroupFunctionNode, SubtractEquation, SubtractiveBlending, TSL, TangentSpaceNormalMap, TempNode, Texture, Texture3DNode, TextureNode, TextureSizeNode, TimestampQuery, ToneMappingNode, ToonOutlinePassNode, UVMapping, Uint16BufferAttribute, Uint32BufferAttribute, UniformArrayNode, UniformGroupNode, UniformNode, UnpackFloatNode, UnsignedByteType, UnsignedInt101111Type, UnsignedInt248Type, UnsignedInt5999Type, UnsignedIntType, UnsignedShort4444Type, UnsignedShort5551Type, UnsignedShortType, UserDataNode, VSMShadowMap, VarNode, VaryingNode, Vector2, Vector3, Vector4, VelocityNode, VertexColorNode, ViewportDepthNode, ViewportDepthTextureNode, ViewportSharedTextureNode, ViewportTextureNode, VolumeNodeMaterial, WebGLBackend, WebGLCapabilities, WebGLCoordinateSystem, WebGPUBackend, WebGPUCoordinateSystem, WebGPURenderer, WebXRController, WorkgroupInfoNode, ZeroFactor, ZeroStencilOp, createCanvasElement, defaultBuildStages, defaultShaderStages, error, log$1 as log, shaderStages, vectorComponents, warn, warnOnce };
84251
+ export { ACESFilmicToneMapping, AONode, AddEquation, AddOperation, AdditiveBlending, AgXToneMapping, AlphaFormat, AlwaysCompare, AlwaysDepth, AlwaysStencilFunc, AmbientLight, AmbientLightNode, AnalyticLightNode, ArrayCamera, ArrayElementNode, ArrayNode, AssignNode, AtomicFunctionNode, AttributeNode, BackSide, BarrierNode, BasicEnvironmentNode, BasicLightMapNode, BasicNodeLibrary, BasicShadowMap, BatchNode, BitcastNode, BitcountNode, BlendMode, BoxGeometry, BufferAttribute, BufferAttributeNode, BufferGeometry, BufferNode, BuiltinNode, BumpMapNode, BundleGroup, BypassNode, ByteType, CanvasTarget, CineonToneMapping, ClampToEdgeWrapping, ClippingGroup, ClippingNode, CodeNode, Color, ColorManagement, ColorSpaceNode, Compatibility, ComputeBuiltinNode, ComputeNode, ConditionalNode, ConstNode, ContextNode, ConvertNode, CubeCamera, CubeDepthTexture, CubeMapNode, CubeReflectionMapping, CubeRefractionMapping, CubeRenderTarget, CubeTexture, CubeTextureNode, CubeUVReflectionMapping, CullFaceBack, CullFaceFront, CullFaceNone, CustomBlending, CylinderGeometry, DataArrayTexture, DataTexture, DebugNode, DecrementStencilOp, DecrementWrapStencilOp, DepthFormat, DepthStencilFormat, DepthTexture, DirectionalLight, DirectionalLightNode, DoubleSide, DstAlphaFactor, DstColorFactor, DynamicDrawUsage, EnvironmentNode, EqualCompare, EqualDepth, EqualStencilFunc, EquirectangularReflectionMapping, EquirectangularRefractionMapping, EventDispatcher, EventNode, ExpressionNode, FileLoader, FlipNode, Float16BufferAttribute, Float32BufferAttribute, FloatType, FramebufferTexture, FrontFacingNode, FrontSide, Frustum, FrustumArray, FunctionCallNode, FunctionNode, FunctionOverloadingNode, GLSLNodeBuilder, GLSLNodeParser, GreaterCompare, GreaterDepth, GreaterEqualCompare, GreaterEqualDepth, GreaterEqualStencilFunc, GreaterStencilFunc, Group, HalfFloatType, HemisphereLight, HemisphereLightNode, IESSpotLight, IESSpotLightNode, IncrementStencilOp, IncrementWrapStencilOp, IndexNode, IndirectStorageBufferAttribute, InputNode, InspectorBase, InspectorNode, InstanceNode, InstancedBufferAttribute, InstancedInterleavedBuffer, InstancedMeshNode, IntType, InterleavedBuffer, InterleavedBufferAttribute, InvertStencilOp, IrradianceNode, IsolateNode, JoinNode, KeepStencilOp, LessCompare, LessDepth, LessEqualCompare, LessEqualDepth, LessEqualStencilFunc, LessStencilFunc, LightProbe, LightProbeNode, Lighting, LightingContextNode, LightingModel, LightingNode, LightsNode, Line2NodeMaterial, LineBasicMaterial, LineBasicNodeMaterial, LineDashedMaterial, LineDashedNodeMaterial, LinearFilter, LinearMipMapLinearFilter, LinearMipmapLinearFilter, LinearMipmapNearestFilter, LinearSRGBColorSpace, LinearToneMapping, LinearTransfer, Loader, LoopNode, MRTNode, Material, MaterialBlending, MaterialLightsNode, MaterialLoader, MaterialNode, MaterialReferenceNode, MathNode, MathUtils, Matrix2, Matrix3, Matrix4, MaxEquation, MaxMipLevelNode, MemberNode, Mesh, MeshBasicMaterial, MeshBasicNodeMaterial, MeshLambertMaterial, MeshLambertNodeMaterial, MeshMatcapMaterial, MeshMatcapNodeMaterial, MeshNormalMaterial, MeshNormalNodeMaterial, MeshPhongMaterial, MeshPhongNodeMaterial, MeshPhysicalMaterial, MeshPhysicalNodeMaterial, MeshSSSNodeMaterial, MeshStandardMaterial, MeshStandardNodeMaterial, MeshToonMaterial, MeshToonNodeMaterial, MinEquation, MirroredRepeatWrapping, MixOperation, ModelNode, MorphNode, MultiplyBlending, MultiplyOperation, NearestFilter, NearestMipmapLinearFilter, NearestMipmapNearestFilter, NeutralToneMapping, NeverCompare, NeverDepth, NeverStencilFunc, NoBlending, NoColorSpace, NoNormalPacking, NoToneMapping, Node, NodeAccess, NodeAttribute, NodeBuilder, NodeCache, NodeCode, NodeError, NodeFrame, NodeFunctionInput, NodeLoader, NodeMaterial, NodeMaterialLoader, NodeMaterialObserver, NodeObjectLoader, NodeShaderStage, NodeType, NodeUniform, NodeUpdateType, NodeUtils, NodeVar, NodeVarying, NormalBlending, NormalGAPacking, NormalMapNode, NormalRGPacking, NotEqualCompare, NotEqualDepth, NotEqualStencilFunc, Object3D, Object3DNode, ObjectLoader, ObjectSpaceNormalMap, OneFactor, OneMinusDstAlphaFactor, OneMinusDstColorFactor, OneMinusSrcAlphaFactor, OneMinusSrcColorFactor, OperatorNode, OrthographicCamera, OutputStructNode, PCFShadowMap, PCFSoftShadowMap, PMREMGenerator, PMREMNode, PackFloatNode, ParameterNode, PassNode, PerspectiveCamera, PhongLightingModel, PhysicalLightingModel, Plane, PlaneGeometry, PointLight, PointLightNode, PointShadowNode, PointUVNode, PointsMaterial, PointsNodeMaterial, PostProcessing, ProjectorLight, ProjectorLightNode, PropertyNode, QuadMesh, Quaternion, R11_EAC_Format, RED_GREEN_RGTC2_Format, RED_RGTC1_Format, REVISION, RG11_EAC_Format, RGBAFormat, RGBAIntegerFormat, RGBA_ASTC_10x10_Format, RGBA_ASTC_10x5_Format, RGBA_ASTC_10x6_Format, RGBA_ASTC_10x8_Format, RGBA_ASTC_12x10_Format, RGBA_ASTC_12x12_Format, RGBA_ASTC_4x4_Format, RGBA_ASTC_5x4_Format, RGBA_ASTC_5x5_Format, RGBA_ASTC_6x5_Format, RGBA_ASTC_6x6_Format, RGBA_ASTC_8x5_Format, RGBA_ASTC_8x6_Format, RGBA_ASTC_8x8_Format, RGBA_BPTC_Format, RGBA_ETC2_EAC_Format, RGBA_PVRTC_2BPPV1_Format, RGBA_PVRTC_4BPPV1_Format, RGBA_S3TC_DXT1_Format, RGBA_S3TC_DXT3_Format, RGBA_S3TC_DXT5_Format, RGBFormat, RGBIntegerFormat, RGB_ETC1_Format, RGB_ETC2_Format, RGB_PVRTC_2BPPV1_Format, RGB_PVRTC_4BPPV1_Format, RGB_S3TC_DXT1_Format, RGFormat, RGIntegerFormat, RTTNode, RangeNode, ReadbackBuffer, RectAreaLight, RectAreaLightNode, RedFormat, RedIntegerFormat, ReferenceBaseNode, ReferenceNode, ReflectorNode, ReinhardToneMapping, RenderOutputNode, RenderPipeline, RenderTarget, RendererReferenceNode, RendererUtils, RepeatWrapping, ReplaceStencilOp, ReverseSubtractEquation, RotateNode, SIGNED_R11_EAC_Format, SIGNED_RED_GREEN_RGTC2_Format, SIGNED_RED_RGTC1_Format, SIGNED_RG11_EAC_Format, SRGBColorSpace, SRGBTransfer, SampleNode, Scene, ScreenNode, SetNode, ShadowBaseNode, ShadowMaterial, ShadowNode, ShadowNodeMaterial, ShortType, SkinningNode, Sphere, SphereGeometry, SplitNode, SpotLight, SpotLightNode, SpriteMaterial, SpriteNodeMaterial, SrcAlphaFactor, SrcAlphaSaturateFactor, SrcColorFactor, StackNode, StackTrace, StaticDrawUsage, Storage3DTexture, StorageArrayElementNode, StorageArrayTexture, StorageBufferAttribute, StorageBufferNode, StorageInstancedBufferAttribute, StorageTexture, StorageTextureNode, StructNode, StructTypeNode, SubBuildNode, SubgroupFunctionNode, SubtractEquation, SubtractiveBlending, TSL, TangentSpaceNormalMap, TempNode, Texture, Texture3DNode, TextureNode, TextureSizeNode, TimestampQuery, ToneMappingNode, ToonOutlinePassNode, UVMapping, Uint16BufferAttribute, Uint32BufferAttribute, UniformArrayNode, UniformGroupNode, UniformNode, UnpackFloatNode, UnsignedByteType, UnsignedInt101111Type, UnsignedInt248Type, UnsignedInt5999Type, UnsignedIntType, UnsignedShort4444Type, UnsignedShort5551Type, UnsignedShortType, UserDataNode, VSMShadowMap, VarNode, VaryingNode, Vector2, Vector3, Vector4, VelocityNode, VertexColorNode, ViewportDepthNode, ViewportDepthTextureNode, ViewportSharedTextureNode, ViewportTextureNode, VolumeNodeMaterial, WebGLBackend, WebGLCapabilities, WebGLCoordinateSystem, WebGPUBackend, WebGPUCoordinateSystem, WebGPURenderer, WebXRController, WorkgroupInfoNode, ZeroFactor, ZeroStencilOp, createCanvasElement, defaultBuildStages, defaultShaderStages, error, log$1 as log, shaderStages, vectorComponents, warn, warnOnce };