super-three 0.156.0 → 0.157.0

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 (220) hide show
  1. package/build/three.cjs +279 -224
  2. package/build/three.js +279 -224
  3. package/build/three.min.js +2 -2
  4. package/build/three.module.js +276 -223
  5. package/build/three.module.min.js +1 -1
  6. package/examples/jsm/capabilities/WebGL.js +17 -0
  7. package/examples/jsm/controls/DragControls.js +3 -2
  8. package/examples/jsm/csm/CSMShader.js +25 -21
  9. package/examples/jsm/exporters/EXRExporter.js +102 -24
  10. package/examples/jsm/exporters/GLTFExporter.js +1 -1
  11. package/examples/jsm/libs/rhino3dm/rhino3dm.js +8726 -4
  12. package/examples/jsm/libs/rhino3dm/rhino3dm.module.js +8737 -4
  13. package/examples/jsm/libs/rhino3dm/rhino3dm.wasm +0 -0
  14. package/examples/jsm/lights/LightProbeGenerator.js +37 -3
  15. package/examples/jsm/lines/LineMaterial.js +90 -156
  16. package/examples/jsm/loaders/3DMLoader.js +378 -104
  17. package/examples/jsm/loaders/GLTFLoader.js +1 -1
  18. package/examples/jsm/loaders/LDrawLoader.js +22 -16
  19. package/examples/jsm/loaders/RGBELoader.js +1 -1
  20. package/examples/jsm/loaders/USDZLoader.js +215 -12
  21. package/examples/jsm/materials/MeshGouraudMaterial.js +22 -18
  22. package/examples/jsm/nodes/Nodes.js +5 -1
  23. package/examples/jsm/nodes/accessors/BitangentNode.js +1 -1
  24. package/examples/jsm/nodes/accessors/BufferAttributeNode.js +2 -2
  25. package/examples/jsm/nodes/accessors/BufferNode.js +1 -1
  26. package/examples/jsm/nodes/accessors/CameraNode.js +1 -1
  27. package/examples/jsm/nodes/accessors/CubeTextureNode.js +2 -2
  28. package/examples/jsm/nodes/accessors/ExtendedMaterialNode.js +6 -5
  29. package/examples/jsm/nodes/accessors/InstanceNode.js +2 -2
  30. package/examples/jsm/nodes/accessors/LineMaterialNode.js +7 -9
  31. package/examples/jsm/nodes/accessors/MaterialNode.js +34 -46
  32. package/examples/jsm/nodes/accessors/MaterialReferenceNode.js +9 -9
  33. package/examples/jsm/nodes/accessors/ModelNode.js +1 -1
  34. package/examples/jsm/nodes/accessors/ModelViewProjectionNode.js +5 -4
  35. package/examples/jsm/nodes/accessors/MorphNode.js +4 -4
  36. package/examples/jsm/nodes/accessors/NormalNode.js +1 -1
  37. package/examples/jsm/nodes/accessors/Object3DNode.js +1 -1
  38. package/examples/jsm/nodes/accessors/PointUVNode.js +1 -1
  39. package/examples/jsm/nodes/accessors/PositionNode.js +1 -1
  40. package/examples/jsm/nodes/accessors/ReferenceNode.js +13 -7
  41. package/examples/jsm/nodes/accessors/ReflectVectorNode.js +2 -2
  42. package/examples/jsm/nodes/accessors/SceneNode.js +2 -2
  43. package/examples/jsm/nodes/accessors/SkinningNode.js +2 -2
  44. package/examples/jsm/nodes/accessors/StorageBufferNode.js +1 -1
  45. package/examples/jsm/nodes/accessors/TangentNode.js +1 -1
  46. package/examples/jsm/nodes/accessors/TextureBicubicNode.js +2 -2
  47. package/examples/jsm/nodes/accessors/TextureNode.js +12 -6
  48. package/examples/jsm/nodes/accessors/TextureSizeNode.js +2 -2
  49. package/examples/jsm/nodes/accessors/TextureStoreNode.js +1 -1
  50. package/examples/jsm/nodes/accessors/UVNode.js +1 -1
  51. package/examples/jsm/nodes/accessors/UserDataNode.js +2 -2
  52. package/examples/jsm/nodes/code/CodeNode.js +1 -1
  53. package/examples/jsm/nodes/code/ExpressionNode.js +1 -1
  54. package/examples/jsm/nodes/code/FunctionCallNode.js +1 -1
  55. package/examples/jsm/nodes/code/FunctionNode.js +18 -7
  56. package/examples/jsm/nodes/code/ScriptableNode.js +2 -2
  57. package/examples/jsm/nodes/code/ScriptableValueNode.js +2 -2
  58. package/examples/jsm/nodes/core/ArrayUniformNode.js +1 -1
  59. package/examples/jsm/nodes/core/AttributeNode.js +1 -1
  60. package/examples/jsm/nodes/core/BypassNode.js +1 -1
  61. package/examples/jsm/nodes/core/CacheNode.js +1 -1
  62. package/examples/jsm/nodes/core/ConstNode.js +1 -1
  63. package/examples/jsm/nodes/core/ContextNode.js +2 -2
  64. package/examples/jsm/nodes/core/IndexNode.js +1 -1
  65. package/examples/jsm/nodes/core/InputNode.js +1 -1
  66. package/examples/jsm/nodes/core/Node.js +28 -13
  67. package/examples/jsm/nodes/core/NodeBuilder.js +3 -17
  68. package/examples/jsm/nodes/core/NodeFrame.js +37 -14
  69. package/examples/jsm/nodes/core/OutputStructNode.js +8 -4
  70. package/examples/jsm/nodes/core/PropertyNode.js +3 -3
  71. package/examples/jsm/nodes/core/StackNode.js +1 -1
  72. package/examples/jsm/nodes/core/StructTypeNode.js +1 -1
  73. package/examples/jsm/nodes/core/TempNode.js +1 -1
  74. package/examples/jsm/nodes/core/UniformNode.js +3 -1
  75. package/examples/jsm/nodes/core/VarNode.js +1 -1
  76. package/examples/jsm/nodes/core/VaryingNode.js +1 -1
  77. package/examples/jsm/nodes/core/constants.js +1 -1
  78. package/examples/jsm/nodes/display/BlendModeNode.js +2 -2
  79. package/examples/jsm/nodes/display/BumpMapNode.js +2 -2
  80. package/examples/jsm/nodes/display/ColorAdjustmentNode.js +2 -2
  81. package/examples/jsm/nodes/display/ColorSpaceNode.js +2 -2
  82. package/examples/jsm/nodes/display/FrontFacingNode.js +1 -1
  83. package/examples/jsm/nodes/display/NormalMapNode.js +2 -2
  84. package/examples/jsm/nodes/display/PosterizeNode.js +2 -2
  85. package/examples/jsm/nodes/display/ToneMappingNode.js +2 -2
  86. package/examples/jsm/nodes/display/ViewportDepthNode.js +2 -2
  87. package/examples/jsm/nodes/display/ViewportDepthTextureNode.js +1 -1
  88. package/examples/jsm/nodes/display/ViewportNode.js +2 -2
  89. package/examples/jsm/nodes/display/ViewportSharedTextureNode.js +1 -1
  90. package/examples/jsm/nodes/display/ViewportTextureNode.js +1 -1
  91. package/examples/jsm/nodes/fog/FogExp2Node.js +2 -2
  92. package/examples/jsm/nodes/fog/FogNode.js +2 -2
  93. package/examples/jsm/nodes/fog/FogRangeNode.js +2 -2
  94. package/examples/jsm/nodes/geometry/RangeNode.js +2 -2
  95. package/examples/jsm/nodes/gpgpu/ComputeNode.js +1 -1
  96. package/examples/jsm/nodes/lighting/AONode.js +2 -2
  97. package/examples/jsm/nodes/lighting/AmbientLightNode.js +3 -3
  98. package/examples/jsm/nodes/lighting/AnalyticLightNode.js +4 -4
  99. package/examples/jsm/nodes/lighting/DirectionalLightNode.js +4 -4
  100. package/examples/jsm/nodes/lighting/EnvironmentNode.js +2 -2
  101. package/examples/jsm/nodes/lighting/HemisphereLightNode.js +3 -3
  102. package/examples/jsm/nodes/lighting/IESSpotLightNode.js +2 -2
  103. package/examples/jsm/nodes/lighting/LightNode.js +2 -2
  104. package/examples/jsm/nodes/lighting/LightingContextNode.js +3 -3
  105. package/examples/jsm/nodes/lighting/LightingNode.js +1 -1
  106. package/examples/jsm/nodes/lighting/LightsNode.js +4 -4
  107. package/examples/jsm/nodes/lighting/PointLightNode.js +3 -3
  108. package/examples/jsm/nodes/lighting/SpotLightNode.js +4 -4
  109. package/examples/jsm/nodes/materials/Line2NodeMaterial.js +449 -0
  110. package/examples/jsm/nodes/materials/LineBasicNodeMaterial.js +1 -1
  111. package/examples/jsm/nodes/materials/LineDashedNodeMaterial.js +2 -2
  112. package/examples/jsm/nodes/materials/Materials.js +1 -0
  113. package/examples/jsm/nodes/materials/MeshBasicNodeMaterial.js +1 -1
  114. package/examples/jsm/nodes/materials/MeshLambertNodeMaterial.js +2 -2
  115. package/examples/jsm/nodes/materials/MeshNormalNodeMaterial.js +2 -2
  116. package/examples/jsm/nodes/materials/MeshPhongNodeMaterial.js +3 -3
  117. package/examples/jsm/nodes/materials/MeshPhysicalNodeMaterial.js +6 -6
  118. package/examples/jsm/nodes/materials/MeshStandardNodeMaterial.js +3 -3
  119. package/examples/jsm/nodes/materials/NodeMaterial.js +27 -26
  120. package/examples/jsm/nodes/materials/PointsNodeMaterial.js +1 -1
  121. package/examples/jsm/nodes/materials/SpriteNodeMaterial.js +2 -2
  122. package/examples/jsm/nodes/math/CondNode.js +1 -1
  123. package/examples/jsm/nodes/math/HashNode.js +8 -9
  124. package/examples/jsm/nodes/math/MathNode.js +2 -2
  125. package/examples/jsm/nodes/math/OperatorNode.js +1 -1
  126. package/examples/jsm/nodes/procedural/CheckerNode.js +3 -3
  127. package/examples/jsm/nodes/shadernode/ShaderNode.js +81 -28
  128. package/examples/jsm/nodes/utils/ArrayElementNode.js +1 -1
  129. package/examples/jsm/nodes/utils/ConvertNode.js +1 -1
  130. package/examples/jsm/nodes/utils/DiscardNode.js +1 -1
  131. package/examples/jsm/nodes/utils/EquirectUVNode.js +2 -2
  132. package/examples/jsm/nodes/utils/JoinNode.js +1 -1
  133. package/examples/jsm/nodes/utils/LoopNode.js +11 -11
  134. package/examples/jsm/nodes/utils/MatcapUVNode.js +2 -2
  135. package/examples/jsm/nodes/utils/MaxMipLevelNode.js +1 -1
  136. package/examples/jsm/nodes/utils/OscNode.js +2 -2
  137. package/examples/jsm/nodes/utils/PackingNode.js +2 -2
  138. package/examples/jsm/nodes/utils/RemapNode.js +2 -2
  139. package/examples/jsm/nodes/utils/RotateUVNode.js +2 -2
  140. package/examples/jsm/nodes/utils/SetNode.js +62 -0
  141. package/examples/jsm/nodes/utils/SpecularMIPLevelNode.js +2 -2
  142. package/examples/jsm/nodes/utils/SplitNode.js +1 -1
  143. package/examples/jsm/nodes/utils/SpriteSheetUVNode.js +2 -2
  144. package/examples/jsm/nodes/utils/TimerNode.js +2 -2
  145. package/examples/jsm/nodes/utils/TriplanarTexturesNode.js +2 -2
  146. package/examples/jsm/objects/Sky.js +1 -3
  147. package/examples/jsm/postprocessing/OutputPass.js +3 -2
  148. package/examples/jsm/renderers/common/Background.js +2 -2
  149. package/examples/jsm/renderers/common/Bindings.js +3 -5
  150. package/examples/jsm/renderers/common/Pipelines.js +7 -7
  151. package/examples/jsm/renderers/common/RenderContext.js +3 -0
  152. package/examples/jsm/renderers/common/RenderObject.js +40 -16
  153. package/examples/jsm/renderers/common/RenderObjects.js +8 -14
  154. package/examples/jsm/renderers/common/Renderer.js +40 -13
  155. package/examples/jsm/renderers/common/SampledTexture.js +4 -2
  156. package/examples/jsm/renderers/common/StorageTexture.js +19 -0
  157. package/examples/jsm/renderers/common/Textures.js +14 -9
  158. package/examples/jsm/renderers/common/nodes/NodeBuilderState.js +35 -0
  159. package/examples/jsm/renderers/common/nodes/NodeSampledTexture.js +20 -10
  160. package/examples/jsm/renderers/common/nodes/NodeSampler.js +0 -6
  161. package/examples/jsm/renderers/common/nodes/Nodes.js +51 -24
  162. package/examples/jsm/renderers/webgl/WebGLBackend.js +100 -5
  163. package/examples/jsm/renderers/webgl/nodes/GLSLNodeBuilder.js +92 -6
  164. package/examples/jsm/renderers/webgl/utils/WebGLTextureUtils.js +13 -0
  165. package/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodeBuilder.js +3 -3
  166. package/examples/jsm/renderers/webgl-legacy/nodes/WebGLNodes.js +14 -2
  167. package/examples/jsm/renderers/webgpu/WebGPUBackend.js +5 -5
  168. package/examples/jsm/renderers/webgpu/nodes/WGSLNodeBuilder.js +6 -3
  169. package/examples/jsm/renderers/webgpu/utils/WebGPUPipelineUtils.js +5 -5
  170. package/examples/jsm/renderers/webgpu/utils/WebGPUTexturePassUtils.js +285 -0
  171. package/examples/jsm/renderers/webgpu/utils/WebGPUTextureUtils.js +197 -167
  172. package/examples/jsm/shaders/GammaCorrectionShader.js +1 -1
  173. package/examples/jsm/shaders/MMDToonShader.js +4 -4
  174. package/examples/jsm/shaders/OutputShader.js +2 -2
  175. package/examples/jsm/shaders/SubsurfaceScatteringShader.js +6 -6
  176. package/examples/jsm/utils/BufferGeometryUtils.js +6 -4
  177. package/package.json +1 -1
  178. package/src/Three.js +0 -2
  179. package/src/animation/AnimationUtils.js +3 -20
  180. package/src/animation/KeyframeTrack.js +8 -8
  181. package/src/cameras/Camera.js +1 -5
  182. package/src/cameras/CubeCamera.js +14 -8
  183. package/src/constants.js +7 -1
  184. package/src/core/RenderTarget.js +16 -7
  185. package/src/extras/core/CurvePath.js +4 -1
  186. package/src/loaders/MaterialLoader.js +1 -1
  187. package/src/loaders/ObjectLoader.js +6 -0
  188. package/src/materials/Material.js +8 -8
  189. package/src/math/Color.js +1 -5
  190. package/src/math/ColorManagement.js +82 -60
  191. package/src/objects/Sprite.js +2 -2
  192. package/src/renderers/WebGLRenderer.js +21 -2
  193. package/src/renderers/shaders/ShaderChunk/aomap_fragment.glsl.js +1 -1
  194. package/src/renderers/shaders/ShaderChunk/clearcoat_normal_fragment_begin.glsl.js +1 -1
  195. package/src/renderers/shaders/ShaderChunk/colorspace_pars_fragment.glsl.js +35 -2
  196. package/src/renderers/shaders/ShaderChunk/common.glsl.js +0 -9
  197. package/src/renderers/shaders/ShaderChunk/lights_fragment_begin.glsl.js +19 -15
  198. package/src/renderers/shaders/ShaderChunk/lights_fragment_end.glsl.js +2 -2
  199. package/src/renderers/shaders/ShaderChunk/lights_fragment_maps.glsl.js +4 -4
  200. package/src/renderers/shaders/ShaderChunk/lights_lambert_pars_fragment.glsl.js +3 -3
  201. package/src/renderers/shaders/ShaderChunk/lights_pars_begin.glsl.js +11 -6
  202. package/src/renderers/shaders/ShaderChunk/lights_phong_pars_fragment.glsl.js +4 -4
  203. package/src/renderers/shaders/ShaderChunk/lights_physical_fragment.glsl.js +1 -1
  204. package/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +16 -16
  205. package/src/renderers/shaders/ShaderChunk/lights_toon_pars_fragment.glsl.js +3 -3
  206. package/src/renderers/shaders/ShaderChunk/normal_fragment_begin.glsl.js +1 -1
  207. package/src/renderers/shaders/ShaderLib/meshphysical.glsl.js +1 -1
  208. package/src/renderers/shaders/UniformsUtils.js +2 -2
  209. package/src/renderers/webgl/WebGLBackground.js +4 -3
  210. package/src/renderers/webgl/WebGLLights.js +14 -3
  211. package/src/renderers/webgl/WebGLProgram.js +34 -5
  212. package/src/renderers/webgl/WebGLPrograms.js +6 -2
  213. package/src/renderers/webgl/WebGLTextures.js +17 -6
  214. package/src/renderers/webgl/WebGLUtils.js +21 -23
  215. package/src/scenes/Fog.js +1 -0
  216. package/src/scenes/FogExp2.js +1 -0
  217. package/src/textures/Source.js +2 -2
  218. package/examples/jsm/renderers/webgpu/utils/WebGPUTextureMipmapUtils.js +0 -163
  219. package/src/lights/AmbientLightProbe.js +0 -21
  220. package/src/lights/HemisphereLightProbe.js +0 -30
@@ -55,7 +55,7 @@ class ViewportNode extends Node {
55
55
 
56
56
  }
57
57
 
58
- construct( builder ) {
58
+ setup( builder ) {
59
59
 
60
60
  const scope = this.scope;
61
61
 
@@ -126,4 +126,4 @@ export const viewportBottomLeft = nodeImmutable( ViewportNode, ViewportNode.BOTT
126
126
  export const viewportTopRight = nodeImmutable( ViewportNode, ViewportNode.TOP_RIGHT );
127
127
  export const viewportBottomRight = nodeImmutable( ViewportNode, ViewportNode.BOTTOM_RIGHT );
128
128
 
129
- addNodeClass( ViewportNode );
129
+ addNodeClass( 'ViewportNode', ViewportNode );
@@ -28,4 +28,4 @@ export const viewportSharedTexture = nodeProxy( ViewportSharedTextureNode );
28
28
 
29
29
  addNodeElement( 'viewportSharedTexture', viewportSharedTexture );
30
30
 
31
- addNodeClass( ViewportSharedTextureNode );
31
+ addNodeClass( 'ViewportSharedTextureNode', ViewportSharedTextureNode );
@@ -72,4 +72,4 @@ export const viewportMipTexture = nodeProxy( ViewportTextureNode, null, null, {
72
72
  addNodeElement( 'viewportTexture', viewportTexture );
73
73
  addNodeElement( 'viewportMipTexture', viewportMipTexture );
74
74
 
75
- addNodeClass( ViewportTextureNode );
75
+ addNodeClass( 'ViewportTextureNode', ViewportTextureNode );
@@ -15,7 +15,7 @@ class FogExp2Node extends FogNode {
15
15
 
16
16
  }
17
17
 
18
- construct() {
18
+ setup() {
19
19
 
20
20
  const depthNode = positionView.z.negate();
21
21
  const densityNode = this.densityNode;
@@ -32,4 +32,4 @@ export const densityFog = nodeProxy( FogExp2Node );
32
32
 
33
33
  addNodeElement( 'densityFog', densityFog );
34
34
 
35
- addNodeClass( FogExp2Node );
35
+ addNodeClass( 'FogExp2Node', FogExp2Node );
@@ -20,7 +20,7 @@ class FogNode extends Node {
20
20
 
21
21
  }
22
22
 
23
- construct() {
23
+ setup() {
24
24
 
25
25
  return this.factorNode;
26
26
 
@@ -34,4 +34,4 @@ export const fog = nodeProxy( FogNode );
34
34
 
35
35
  addNodeElement( 'fog', fog );
36
36
 
37
- addNodeClass( FogNode );
37
+ addNodeClass( 'FogNode', FogNode );
@@ -17,7 +17,7 @@ class FogRangeNode extends FogNode {
17
17
 
18
18
  }
19
19
 
20
- construct() {
20
+ setup() {
21
21
 
22
22
  return smoothstep( this.nearNode, this.farNode, positionView.z.negate() );
23
23
 
@@ -31,4 +31,4 @@ export const rangeFog = nodeProxy( FogRangeNode );
31
31
 
32
32
  addNodeElement( 'rangeFog', rangeFog );
33
33
 
34
- addNodeClass( FogRangeNode );
34
+ addNodeClass( 'FogRangeNode', FogRangeNode );
@@ -36,7 +36,7 @@ class RangeNode extends Node {
36
36
 
37
37
  }
38
38
 
39
- construct( builder ) {
39
+ setup( builder ) {
40
40
 
41
41
  const object = builder.object;
42
42
 
@@ -101,4 +101,4 @@ export default RangeNode;
101
101
 
102
102
  export const range = nodeProxy( RangeNode );
103
103
 
104
- addNodeClass( RangeNode );
104
+ addNodeClass( 'RangeNode', RangeNode );
@@ -82,4 +82,4 @@ export const compute = ( node, count, workgroupSize ) => nodeObject( new Compute
82
82
 
83
83
  addNodeElement( 'compute', compute );
84
84
 
85
- addNodeClass( ComputeNode );
85
+ addNodeClass( 'ComputeNode', ComputeNode );
@@ -11,7 +11,7 @@ class AONode extends LightingNode {
11
11
 
12
12
  }
13
13
 
14
- construct( builder ) {
14
+ setup( builder ) {
15
15
 
16
16
  const aoIntensity = 1;
17
17
  const aoNode = this.aoNode.x.sub( 1.0 ).mul( aoIntensity ).add( 1.0 );
@@ -24,4 +24,4 @@ class AONode extends LightingNode {
24
24
 
25
25
  export default AONode;
26
26
 
27
- addNodeClass( AONode );
27
+ addNodeClass( 'AONode', AONode );
@@ -12,7 +12,7 @@ class AmbientLightNode extends AnalyticLightNode {
12
12
 
13
13
  }
14
14
 
15
- construct( { context } ) {
15
+ setup( { context } ) {
16
16
 
17
17
  context.irradiance.addAssign( this.colorNode );
18
18
 
@@ -22,6 +22,6 @@ class AmbientLightNode extends AnalyticLightNode {
22
22
 
23
23
  export default AmbientLightNode;
24
24
 
25
- addLightNode( AmbientLight, AmbientLightNode );
25
+ addNodeClass( 'AmbientLightNode', AmbientLightNode );
26
26
 
27
- addNodeClass( AmbientLightNode );
27
+ addLightNode( AmbientLight, AmbientLightNode );
@@ -37,7 +37,7 @@ class AnalyticLightNode extends LightingNode {
37
37
 
38
38
  }
39
39
 
40
- constructShadow( builder ) {
40
+ setupShadow( builder ) {
41
41
 
42
42
  let shadowNode = this.shadowNode;
43
43
 
@@ -136,9 +136,9 @@ class AnalyticLightNode extends LightingNode {
136
136
 
137
137
  }
138
138
 
139
- construct( builder ) {
139
+ setup( builder ) {
140
140
 
141
- if ( this.light.castShadow ) this.constructShadow( builder );
141
+ if ( this.light.castShadow ) this.setupShadow( builder );
142
142
 
143
143
  }
144
144
 
@@ -181,4 +181,4 @@ class AnalyticLightNode extends LightingNode {
181
181
 
182
182
  export default AnalyticLightNode;
183
183
 
184
- addNodeClass( AnalyticLightNode );
184
+ addNodeClass( 'AnalyticLightNode', AnalyticLightNode );
@@ -13,9 +13,9 @@ class DirectionalLightNode extends AnalyticLightNode {
13
13
 
14
14
  }
15
15
 
16
- construct( builder ) {
16
+ setup( builder ) {
17
17
 
18
- super.construct( builder );
18
+ super.setup( builder );
19
19
 
20
20
  const lightingModel = builder.context.lightingModel;
21
21
 
@@ -35,6 +35,6 @@ class DirectionalLightNode extends AnalyticLightNode {
35
35
 
36
36
  export default DirectionalLightNode;
37
37
 
38
- addLightNode( DirectionalLight, DirectionalLightNode );
38
+ addNodeClass( 'DirectionalLightNode', DirectionalLightNode );
39
39
 
40
- addNodeClass( DirectionalLightNode );
40
+ addLightNode( DirectionalLight, DirectionalLightNode );
@@ -24,7 +24,7 @@ class EnvironmentNode extends LightingNode {
24
24
 
25
25
  }
26
26
 
27
- construct( builder ) {
27
+ setup( builder ) {
28
28
 
29
29
  let envNode = this.envNode;
30
30
  const properties = builder.getNodeProperties( this );
@@ -188,4 +188,4 @@ const createIrradianceContext = ( normalWorldNode ) => {
188
188
 
189
189
  export default EnvironmentNode;
190
190
 
191
- addNodeClass( EnvironmentNode );
191
+ addNodeClass( 'EnvironmentNode', EnvironmentNode );
@@ -33,7 +33,7 @@ class HemisphereLightNode extends AnalyticLightNode {
33
33
 
34
34
  }
35
35
 
36
- construct( builder ) {
36
+ setup( builder ) {
37
37
 
38
38
  const { colorNode, groundColorNode, lightDirectionNode } = this;
39
39
 
@@ -50,6 +50,6 @@ class HemisphereLightNode extends AnalyticLightNode {
50
50
 
51
51
  export default HemisphereLightNode;
52
52
 
53
- addLightNode( HemisphereLight, HemisphereLightNode );
53
+ addNodeClass( 'HemisphereLightNode', HemisphereLightNode );
54
54
 
55
- addNodeClass( HemisphereLightNode );
55
+ addLightNode( HemisphereLight, HemisphereLightNode );
@@ -34,6 +34,6 @@ class IESSpotLightNode extends SpotLightNode {
34
34
 
35
35
  export default IESSpotLightNode;
36
36
 
37
- addLightNode( IESSpotLight, IESSpotLightNode );
37
+ addNodeClass( 'IESSpotLightNode', IESSpotLightNode );
38
38
 
39
- addNodeClass( IESSpotLightNode );
39
+ addLightNode( IESSpotLight, IESSpotLightNode );
@@ -14,7 +14,7 @@ class LightNode extends Node {
14
14
 
15
15
  }
16
16
 
17
- construct() {
17
+ setup() {
18
18
 
19
19
  const { scope, light } = this;
20
20
 
@@ -54,4 +54,4 @@ export default LightNode;
54
54
 
55
55
  export const lightTargetDirection = nodeProxy( LightNode, LightNode.TARGET_DIRECTION );
56
56
 
57
- addNodeClass( LightNode );
57
+ addNodeClass( 'LightNode', LightNode );
@@ -22,7 +22,7 @@ class LightingContextNode extends ContextNode {
22
22
 
23
23
  }
24
24
 
25
- construct( builder ) {
25
+ setup( builder ) {
26
26
 
27
27
  const { lightingModel, backdropNode, backdropAlphaNode } = this;
28
28
 
@@ -76,7 +76,7 @@ class LightingContextNode extends ContextNode {
76
76
 
77
77
  }
78
78
 
79
- return super.construct( builder );
79
+ return super.setup( builder );
80
80
 
81
81
  }
82
82
 
@@ -99,4 +99,4 @@ export const lightingContext = nodeProxy( LightingContextNode );
99
99
 
100
100
  addNodeElement( 'lightingContext', lightingContext );
101
101
 
102
- addNodeClass( LightingContextNode );
102
+ addNodeClass( 'LightingContextNode', LightingContextNode );
@@ -18,4 +18,4 @@ class LightingNode extends Node {
18
18
 
19
19
  export default LightingNode;
20
20
 
21
- addNodeClass( LightingNode );
21
+ addNodeClass( 'LightingNode', LightingNode );
@@ -28,7 +28,7 @@ class LightsNode extends Node {
28
28
 
29
29
  }
30
30
 
31
- construct( builder ) {
31
+ setup( builder ) {
32
32
 
33
33
  const lightNodes = this.lightNodes;
34
34
 
@@ -119,9 +119,9 @@ export const lightsWithoutWrap = nodeProxy( LightsNode );
119
119
 
120
120
  export function addLightNode( lightClass, lightNodeClass ) {
121
121
 
122
- if ( LightNodes.has( lightClass ) ) throw new Error( `Redefinition of light node ${ lightNodeClass.name }` );
123
- if ( typeof lightClass !== 'function' || ! lightClass.name ) throw new Error( `Light ${ lightClass.name } is not a class` );
124
- if ( typeof lightNodeClass !== 'function' || ! lightNodeClass.name ) throw new Error( `Light node ${ lightNodeClass.name } is not a class` );
122
+ if ( LightNodes.has( lightClass ) ) throw new Error( `Redefinition of light node ${ lightNodeClass.type }` );
123
+ if ( typeof lightClass !== 'function' ) throw new Error( `Light ${ lightClass.name } is not a class` );
124
+ if ( typeof lightNodeClass !== 'function' || ! lightNodeClass.type ) throw new Error( `Light node ${ lightNodeClass.type } is not a class` );
125
125
 
126
126
  LightNodes.set( lightClass, lightNodeClass );
127
127
 
@@ -30,7 +30,7 @@ class PointLightNode extends AnalyticLightNode {
30
30
 
31
31
  }
32
32
 
33
- construct( builder ) {
33
+ setup( builder ) {
34
34
 
35
35
  const { colorNode, cutoffDistanceNode, decayExponentNode, light } = this;
36
36
 
@@ -63,6 +63,6 @@ class PointLightNode extends AnalyticLightNode {
63
63
 
64
64
  export default PointLightNode;
65
65
 
66
- addLightNode( PointLight, PointLightNode );
66
+ addNodeClass( 'PointLightNode', PointLightNode );
67
67
 
68
- addNodeClass( PointLightNode );
68
+ addLightNode( PointLight, PointLightNode );
@@ -46,9 +46,9 @@ class SpotLightNode extends AnalyticLightNode {
46
46
 
47
47
  }
48
48
 
49
- construct( builder ) {
49
+ setup( builder ) {
50
50
 
51
- super.construct( builder );
51
+ super.setup( builder );
52
52
 
53
53
  const lightingModel = builder.context.lightingModel;
54
54
 
@@ -84,6 +84,6 @@ class SpotLightNode extends AnalyticLightNode {
84
84
 
85
85
  export default SpotLightNode;
86
86
 
87
- addLightNode( SpotLight, SpotLightNode );
87
+ addNodeClass( 'SpotLightNode', SpotLightNode );
88
88
 
89
- addNodeClass( SpotLightNode );
89
+ addLightNode( SpotLight, SpotLightNode );