@types/three 0.167.2 → 0.169.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 (304) hide show
  1. three/README.md +2 -2
  2. three/build/three.webgpu.nodes.d.ts +1 -0
  3. three/build/three.webgpu.nodes.min.d.ts +1 -0
  4. three/examples/jsm/Addons.d.ts +1 -4
  5. three/examples/jsm/capabilities/WebGL.d.ts +11 -3
  6. three/examples/jsm/controls/ArcballControls.d.ts +111 -77
  7. three/examples/jsm/controls/DragControls.d.ts +43 -29
  8. three/examples/jsm/controls/FirstPersonControls.d.ts +82 -12
  9. three/examples/jsm/controls/FlyControls.d.ts +35 -11
  10. three/examples/jsm/controls/OrbitControls.d.ts +84 -137
  11. three/examples/jsm/controls/PointerLockControls.d.ts +68 -9
  12. three/examples/jsm/controls/TrackballControls.d.ts +110 -26
  13. three/examples/jsm/controls/TransformControls.d.ts +152 -25
  14. three/examples/jsm/effects/AnaglyphEffect.d.ts +11 -5
  15. three/examples/jsm/effects/ParallaxBarrierEffect.d.ts +7 -4
  16. three/examples/jsm/environments/RoomEnvironment.d.ts +2 -2
  17. three/examples/jsm/exporters/EXRExporter.d.ts +7 -2
  18. three/examples/jsm/exporters/KTX2Exporter.d.ts +3 -1
  19. three/examples/jsm/helpers/LightProbeHelper.d.ts +5 -3
  20. three/examples/jsm/helpers/LightProbeHelperGPU.d.ts +12 -0
  21. three/examples/jsm/lights/LightProbeGenerator.d.ts +5 -1
  22. three/examples/jsm/lines/Line2.d.ts +15 -1
  23. three/examples/jsm/lines/LineGeometry.d.ts +18 -1
  24. three/examples/jsm/lines/LineMaterial.d.ts +65 -12
  25. three/examples/jsm/lines/LineSegments2.d.ts +25 -2
  26. three/examples/jsm/lines/LineSegmentsGeometry.d.ts +46 -9
  27. three/examples/jsm/loaders/DRACOLoader.d.ts +6 -0
  28. three/examples/jsm/loaders/KTX2Loader.d.ts +4 -0
  29. three/examples/jsm/modifiers/CurveModifier.d.ts +7 -3
  30. three/examples/jsm/modifiers/CurveModifierGPU.d.ts +31 -0
  31. three/examples/jsm/objects/Lensflare.d.ts +13 -9
  32. three/examples/jsm/objects/LensflareMesh.d.ts +21 -0
  33. three/examples/jsm/objects/SkyMesh.d.ts +17 -0
  34. three/examples/jsm/objects/Water2.d.ts +2 -2
  35. three/examples/jsm/objects/Water2Mesh.d.ts +42 -0
  36. three/examples/jsm/objects/WaterMesh.d.ts +31 -0
  37. three/examples/jsm/postprocessing/OutlinePass.d.ts +1 -1
  38. three/examples/jsm/postprocessing/SSAARenderPass.d.ts +11 -2
  39. three/examples/jsm/utils/GeometryCompressionUtils.d.ts +20 -4
  40. three/examples/jsm/utils/ShadowMapViewer.d.ts +8 -6
  41. three/examples/jsm/utils/ShadowMapViewerGPU.d.ts +26 -0
  42. three/examples/jsm/utils/SkeletonUtils.d.ts +25 -5
  43. three/examples/jsm/utils/TextureUtilsGPU.d.ts +3 -0
  44. three/package.json +4 -3
  45. three/src/Three.WebGPU.Nodes.d.ts +201 -0
  46. three/src/Three.WebGPU.d.ts +7 -0
  47. three/src/Three.d.ts +1 -0
  48. three/src/audio/Audio.d.ts +4 -1
  49. three/src/core/BufferAttribute.d.ts +0 -15
  50. three/src/core/EventDispatcher.d.ts +0 -3
  51. three/src/core/InterleavedBuffer.d.ts +0 -12
  52. three/src/core/Object3D.d.ts +3 -1
  53. three/src/core/Raycaster.d.ts +2 -1
  54. three/src/extras/Controls.d.ts +54 -0
  55. three/src/loaders/MaterialLoader.d.ts +2 -0
  56. three/src/{nodes/loaders → loaders/nodes}/NodeLoader.d.ts +8 -3
  57. three/src/loaders/nodes/NodeMaterialLoader.d.ts +11 -0
  58. three/src/loaders/nodes/NodeObjectLoader.d.ts +22 -0
  59. three/src/materials/Material.d.ts +17 -13
  60. three/src/materials/nodes/InstancedPointsNodeMaterial.d.ts +33 -0
  61. three/src/{nodes/materials → materials/nodes}/Line2NodeMaterial.d.ts +2 -2
  62. three/src/{nodes/materials → materials/nodes}/LineBasicNodeMaterial.d.ts +1 -1
  63. three/src/materials/nodes/LineDashedNodeMaterial.d.ts +29 -0
  64. three/src/{nodes/materials → materials/nodes}/MeshBasicNodeMaterial.d.ts +1 -1
  65. three/src/materials/nodes/MeshLambertNodeMaterial.d.ts +49 -0
  66. three/src/{nodes/materials → materials/nodes}/MeshMatcapNodeMaterial.d.ts +2 -2
  67. three/src/{nodes/materials → materials/nodes}/MeshNormalNodeMaterial.d.ts +1 -1
  68. three/src/{nodes/materials → materials/nodes}/MeshPhongNodeMaterial.d.ts +2 -2
  69. three/src/{nodes/materials → materials/nodes}/MeshPhysicalNodeMaterial.d.ts +5 -2
  70. three/src/{nodes/materials → materials/nodes}/MeshSSSNodeMaterial.d.ts +2 -2
  71. three/src/{nodes/materials → materials/nodes}/MeshStandardNodeMaterial.d.ts +3 -3
  72. three/src/{nodes/materials → materials/nodes}/MeshToonNodeMaterial.d.ts +2 -2
  73. three/src/materials/nodes/NodeMaterial.d.ts +89 -0
  74. three/src/{nodes/materials/Materials.d.ts → materials/nodes/NodeMaterials.d.ts} +5 -2
  75. three/src/{nodes/materials → materials/nodes}/PointsNodeMaterial.d.ts +1 -2
  76. three/src/{nodes/materials → materials/nodes}/ShadowNodeMaterial.d.ts +1 -1
  77. three/src/{nodes/materials → materials/nodes}/SpriteNodeMaterial.d.ts +2 -2
  78. three/src/{nodes/materials → materials/nodes}/VolumeNodeMaterial.d.ts +1 -1
  79. three/src/materials/nodes/manager/NodeMaterialObserver.d.ts +81 -0
  80. three/src/math/Quaternion.d.ts +4 -3
  81. three/src/math/Triangle.d.ts +24 -0
  82. three/src/nodes/Nodes.d.ts +117 -362
  83. three/src/nodes/TSL.d.ts +175 -0
  84. three/src/nodes/accessors/AccessorsUtils.d.ts +1 -1
  85. three/src/nodes/accessors/BatchNode.d.ts +1 -2
  86. three/src/nodes/accessors/{BitangentNode.d.ts → Bitangent.d.ts} +1 -1
  87. three/src/nodes/accessors/BufferAttributeNode.d.ts +5 -4
  88. three/src/nodes/accessors/BufferNode.d.ts +1 -1
  89. three/src/nodes/accessors/{CameraNode.d.ts → Camera.d.ts} +1 -1
  90. three/src/nodes/accessors/ClippingNode.d.ts +1 -1
  91. three/src/nodes/accessors/CubeTextureNode.d.ts +1 -7
  92. three/src/nodes/accessors/InstanceNode.d.ts +1 -1
  93. three/src/nodes/accessors/MaterialNode.d.ts +3 -4
  94. three/src/nodes/accessors/MaterialProperties.d.ts +4 -0
  95. three/src/nodes/accessors/MaterialReferenceNode.d.ts +3 -1
  96. three/src/nodes/accessors/ModelNode.d.ts +8 -4
  97. three/src/nodes/accessors/ModelViewProjectionNode.d.ts +1 -1
  98. three/src/nodes/accessors/MorphNode.d.ts +15 -0
  99. three/src/nodes/accessors/Normal.d.ts +25 -0
  100. three/src/nodes/accessors/Object3DNode.d.ts +2 -6
  101. three/src/nodes/accessors/PointUVNode.d.ts +1 -1
  102. three/src/nodes/accessors/{PositionNode.d.ts → Position.d.ts} +2 -1
  103. three/src/nodes/accessors/ReferenceBaseNode.d.ts +27 -0
  104. three/src/nodes/accessors/ReferenceNode.d.ts +7 -5
  105. three/src/nodes/accessors/{ReflectVectorNode.d.ts → ReflectVector.d.ts} +1 -1
  106. three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -1
  107. three/src/nodes/accessors/SceneNode.d.ts +20 -0
  108. three/src/nodes/accessors/SkinningNode.d.ts +11 -1
  109. three/src/nodes/accessors/StorageBufferNode.d.ts +2 -2
  110. three/src/nodes/accessors/StorageTextureNode.d.ts +1 -1
  111. three/src/nodes/accessors/{TangentNode.d.ts → Tangent.d.ts} +1 -1
  112. three/src/nodes/accessors/Texture3DNode.d.ts +1 -1
  113. three/src/nodes/accessors/TextureBicubic.d.ts +4 -0
  114. three/src/nodes/accessors/TextureNode.d.ts +26 -7
  115. three/src/nodes/accessors/TextureSizeNode.d.ts +18 -0
  116. three/src/nodes/accessors/{UVNode.d.ts → UV.d.ts} +1 -1
  117. three/src/nodes/accessors/UniformArrayNode.d.ts +30 -0
  118. three/src/nodes/accessors/UserDataNode.d.ts +1 -1
  119. three/src/nodes/accessors/VelocityNode.d.ts +16 -0
  120. three/src/nodes/accessors/VertexColorNode.d.ts +1 -1
  121. three/src/nodes/code/CodeNode.d.ts +1 -1
  122. three/src/nodes/code/ExpressionNode.d.ts +1 -1
  123. three/src/nodes/code/FunctionCallNode.d.ts +2 -2
  124. three/src/nodes/code/FunctionNode.d.ts +5 -6
  125. three/src/nodes/code/ScriptableNode.d.ts +22 -0
  126. three/src/nodes/code/ScriptableValueNode.d.ts +10 -0
  127. three/src/nodes/core/AssignNode.d.ts +2 -2
  128. three/src/nodes/core/AttributeNode.d.ts +2 -5
  129. three/src/nodes/core/BypassNode.d.ts +2 -2
  130. three/src/nodes/core/CacheNode.d.ts +2 -2
  131. three/src/nodes/core/ContextNode.d.ts +10 -7
  132. three/src/nodes/core/IndexNode.d.ts +11 -3
  133. three/src/nodes/core/MRTNode.d.ts +7 -2
  134. three/src/nodes/core/Node.d.ts +4 -7
  135. three/src/nodes/core/NodeUtils.d.ts +5 -1
  136. three/src/nodes/core/OutputStructNode.d.ts +1 -1
  137. three/src/nodes/core/ParameterNode.d.ts +12 -0
  138. three/src/nodes/core/PropertyNode.d.ts +1 -1
  139. three/src/nodes/core/StackNode.d.ts +12 -2
  140. three/src/nodes/core/StructTypeNode.d.ts +1 -0
  141. three/src/nodes/core/UniformNode.d.ts +2 -1
  142. three/src/nodes/core/VarNode.d.ts +2 -10
  143. three/src/nodes/core/VaryingNode.d.ts +2 -2
  144. three/src/nodes/display/AfterImageNode.d.ts +1 -7
  145. three/src/nodes/display/AnaglyphPassNode.d.ts +14 -0
  146. three/src/nodes/display/AnamorphicNode.d.ts +1 -7
  147. three/src/nodes/display/BleachBypass.d.ts +4 -0
  148. three/src/nodes/display/BlendMode.d.ts +10 -0
  149. three/src/nodes/display/BloomNode.d.ts +1 -7
  150. three/src/nodes/display/BumpMapNode.d.ts +16 -0
  151. three/src/nodes/display/ColorAdjustment.d.ts +27 -0
  152. three/src/nodes/display/ColorSpaceFunctions.d.ts +6 -0
  153. three/src/nodes/display/ColorSpaceNode.d.ts +40 -21
  154. three/src/nodes/display/DenoiseNode.d.ts +3 -9
  155. three/src/nodes/display/DepthOfFieldNode.d.ts +4 -8
  156. three/src/nodes/display/DotScreenNode.d.ts +4 -8
  157. three/src/nodes/display/FXAANode.d.ts +3 -9
  158. three/src/nodes/display/FilmNode.d.ts +3 -9
  159. three/src/nodes/display/FrontFacingNode.d.ts +4 -2
  160. three/src/nodes/display/GTAONode.d.ts +3 -9
  161. three/src/nodes/display/GaussianBlurNode.d.ts +4 -8
  162. three/src/nodes/display/Lut3DNode.d.ts +3 -9
  163. three/src/nodes/display/MotionBlur.d.ts +8 -0
  164. three/src/nodes/display/NormalMapNode.d.ts +4 -8
  165. three/src/nodes/display/ParallaxBarrierPassNode.d.ts +14 -0
  166. three/src/nodes/display/PassNode.d.ts +11 -2
  167. three/src/nodes/display/PixelationPassNode.d.ts +1 -37
  168. three/src/nodes/display/PosterizeNode.d.ts +1 -7
  169. three/src/nodes/display/RGBShiftNode.d.ts +1 -7
  170. three/src/nodes/display/RenderOutputNode.d.ts +2 -2
  171. three/src/nodes/display/SSAAPassNode.d.ts +26 -0
  172. three/src/nodes/display/ScreenNode.d.ts +48 -0
  173. three/src/nodes/display/Sepia.d.ts +4 -0
  174. three/src/nodes/display/SobelOperatorNode.d.ts +4 -8
  175. three/src/nodes/display/StereoCompositePassNode.d.ts +17 -0
  176. three/src/nodes/display/StereoPassNode.d.ts +17 -0
  177. three/src/nodes/display/ToneMappingFunctions.d.ts +14 -0
  178. three/src/nodes/display/ToneMappingNode.d.ts +5 -6
  179. three/src/nodes/display/ToonOutlinePassNode.d.ts +24 -0
  180. three/src/nodes/display/TransitionNode.d.ts +3 -9
  181. three/src/nodes/display/ViewportDepthNode.d.ts +6 -2
  182. three/src/nodes/display/ViewportDepthTextureNode.d.ts +4 -2
  183. three/src/nodes/display/ViewportSharedTextureNode.d.ts +4 -8
  184. three/src/nodes/display/ViewportTextureNode.d.ts +4 -9
  185. three/src/nodes/fog/FogExp2Node.d.ts +4 -8
  186. three/src/nodes/fog/FogNode.d.ts +4 -8
  187. three/src/nodes/fog/FogRangeNode.d.ts +4 -8
  188. three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +1 -1
  189. three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +1 -1
  190. three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +1 -1
  191. three/src/nodes/functions/BSDF/DFGApprox.d.ts +1 -1
  192. three/src/nodes/functions/BSDF/D_GGX.d.ts +1 -1
  193. three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +1 -1
  194. three/src/nodes/functions/BSDF/F_Schlick.d.ts +1 -1
  195. three/src/nodes/functions/BSDF/Schlick_to_F0.d.ts +10 -0
  196. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +1 -1
  197. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +1 -1
  198. three/src/nodes/functions/ShadowMaskModel.d.ts +1 -1
  199. three/src/nodes/functions/material/getGeometryRoughness.d.ts +1 -1
  200. three/src/nodes/functions/material/getRoughness.d.ts +1 -1
  201. three/src/nodes/functions/material/getShIrradianceAt.d.ts +6 -0
  202. three/src/nodes/geometry/RangeNode.d.ts +1 -1
  203. three/src/nodes/gpgpu/ComputeNode.d.ts +2 -2
  204. three/src/nodes/lighting/AmbientLightNode.d.ts +8 -0
  205. three/src/nodes/lighting/DirectionalLightNode.d.ts +8 -0
  206. three/src/nodes/lighting/IESSpotLightNode.d.ts +5 -0
  207. three/src/nodes/lighting/LightNode.d.ts +18 -0
  208. three/src/nodes/lighting/LightProbeNode.d.ts +11 -0
  209. three/src/nodes/lighting/LightUtils.d.ts +3 -3
  210. three/src/nodes/lighting/LightingContextNode.d.ts +1 -7
  211. three/src/nodes/lighting/LightsNode.d.ts +9 -13
  212. three/src/nodes/materialx/MaterialXNodes.d.ts +1 -1
  213. three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -2
  214. three/src/nodes/materialx/lib/mx_noise.d.ts +1 -1
  215. three/src/nodes/materialx/lib/mx_transform_color.d.ts +1 -1
  216. three/src/nodes/math/ConditionalNode.d.ts +39 -0
  217. three/src/nodes/math/Hash.d.ts +4 -0
  218. three/src/nodes/math/MathNode.d.ts +2 -2
  219. three/src/nodes/math/MathUtils.d.ts +0 -10
  220. three/src/nodes/math/OperatorNode.d.ts +18 -4
  221. three/src/nodes/math/TriNoise3D.d.ts +1 -1
  222. three/src/nodes/parsers/GLSLNodeFunction.d.ts +9 -0
  223. three/src/nodes/parsers/GLSLNodeParser.d.ts +8 -0
  224. three/src/nodes/pmrem/PMREMNode.d.ts +4 -2
  225. three/src/nodes/pmrem/PMREMUtils.d.ts +28 -0
  226. three/src/nodes/procedural/Checker.d.ts +4 -0
  227. three/src/nodes/tsl/TSLBase.d.ts +21 -0
  228. three/src/nodes/{shadernode/ShaderNode.d.ts → tsl/TSLCore.d.ts} +23 -23
  229. three/src/nodes/utils/CubeMapNode.d.ts +13 -0
  230. three/src/nodes/utils/Discard.d.ts +11 -0
  231. three/src/nodes/utils/EquirectUVNode.d.ts +1 -1
  232. three/src/nodes/utils/FunctionOverloadingNode.d.ts +13 -0
  233. three/src/nodes/utils/LoopNode.d.ts +22 -0
  234. three/src/nodes/utils/MatcapUVNode.d.ts +1 -1
  235. three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -1
  236. three/src/nodes/utils/OscNode.d.ts +1 -1
  237. three/src/nodes/utils/Packing.d.ts +5 -0
  238. three/src/nodes/utils/RTTNode.d.ts +7 -7
  239. three/src/nodes/utils/ReflectorNode.d.ts +1 -1
  240. three/src/nodes/utils/RemapNode.d.ts +2 -2
  241. three/src/nodes/utils/RotateNode.d.ts +1 -7
  242. three/src/nodes/utils/SetNode.d.ts +11 -0
  243. three/src/nodes/utils/SplitNode.d.ts +1 -1
  244. three/src/nodes/utils/SpriteSheetUVNode.d.ts +1 -1
  245. three/src/nodes/utils/SpriteUtils.d.ts +6 -0
  246. three/src/nodes/utils/{StoargeArrayElementNode.d.ts → StorageArrayElementNode.d.ts} +1 -7
  247. three/src/nodes/utils/TimerNode.d.ts +1 -1
  248. three/src/nodes/utils/TriplanarTexturesNode.d.ts +1 -7
  249. three/src/nodes/utils/UVUtils.d.ts +14 -0
  250. three/src/nodes/utils/ViewportUtils.d.ts +4 -0
  251. three/src/objects/BatchedMesh.d.ts +33 -0
  252. three/src/objects/Group.d.ts +0 -6
  253. three/src/objects/LOD.d.ts +7 -0
  254. three/src/renderers/WebGLRenderer.d.ts +2 -12
  255. three/src/renderers/common/BindGroup.d.ts +8 -1
  256. three/src/renderers/common/Bindings.d.ts +2 -2
  257. three/src/renderers/common/BundleGroup.d.ts +10 -0
  258. three/src/renderers/common/ClippingContext.d.ts +1 -0
  259. three/src/renderers/common/QuadMesh.d.ts +2 -0
  260. three/src/renderers/common/RenderBundles.d.ts +3 -3
  261. three/src/renderers/common/RenderContext.d.ts +2 -0
  262. three/src/renderers/common/RenderContexts.d.ts +6 -4
  263. three/src/renderers/common/RenderList.d.ts +2 -1
  264. three/src/renderers/common/RenderObject.d.ts +19 -1
  265. three/src/renderers/common/RenderObjects.d.ts +1 -1
  266. three/src/renderers/common/Renderer.d.ts +24 -5
  267. three/src/renderers/common/SampledTexture.d.ts +7 -1
  268. three/src/renderers/common/Textures.d.ts +1 -0
  269. three/src/renderers/common/nodes/NodeBuilderState.d.ts +3 -2
  270. three/src/renderers/common/nodes/NodeLibrary.d.ts +56 -0
  271. three/src/renderers/common/nodes/NodeSampledTexture.d.ts +3 -3
  272. three/src/renderers/common/nodes/Nodes.d.ts +15 -9
  273. three/src/renderers/common/nodes/StandardNodeLibrary.d.ts +5 -0
  274. three/src/renderers/webgl/WebGLCapabilities.d.ts +13 -0
  275. three/src/renderers/webgl/WebGLPrograms.d.ts +1 -0
  276. three/src/renderers/webgl/WebGLProperties.d.ts +5 -4
  277. three/src/renderers/webgpu/WebGPUBackend.d.ts +6 -2
  278. three/src/renderers/webgpu/WebGPURenderer.Nodes.d.ts +12 -0
  279. three/src/renderers/webgpu/WebGPURenderer.d.ts +5 -1
  280. three/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +5 -0
  281. three/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +5 -0
  282. three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +2 -2
  283. three/src/renderers/webxr/WebXRManager.d.ts +0 -2
  284. three/examples/jsm/geometries/SDFGeometryGenerator.d.ts +0 -16
  285. three/examples/jsm/loaders/LogLuvLoader.d.ts +0 -19
  286. three/examples/jsm/loaders/TiltLoader.d.ts +0 -7
  287. three/examples/jsm/utils/GPUStatsPanel.d.ts +0 -12
  288. three/examples/jsm/utils/PackedPhongMaterial.d.ts +0 -10
  289. three/src/nodes/accessors/NormalNode.d.ts +0 -12
  290. three/src/nodes/accessors/TextureBicubicNode.d.ts +0 -18
  291. three/src/nodes/accessors/UniformsNode.d.ts +0 -23
  292. three/src/nodes/core/NodeKeywords.d.ts +0 -17
  293. three/src/nodes/display/BlendModeNode.d.ts +0 -47
  294. three/src/nodes/display/ColorAdjustmentNode.d.ts +0 -47
  295. three/src/nodes/display/ViewportNode.d.ts +0 -31
  296. three/src/nodes/loaders/NodeMaterialLoader.d.ts +0 -8
  297. three/src/nodes/loaders/NodeObjectLoader.d.ts +0 -10
  298. three/src/nodes/materials/NodeMaterial.d.ts +0 -124
  299. three/src/nodes/math/CondNode.d.ts +0 -22
  300. three/src/nodes/math/HashNode.d.ts +0 -16
  301. three/src/nodes/procedural/CheckerNode.d.ts +0 -15
  302. three/src/nodes/utils/DiscardNode.d.ts +0 -17
  303. three/src/nodes/utils/PackingNode.d.ts +0 -24
  304. three/src/nodes/utils/RotateUVNode.d.ts +0 -19
@@ -1,7 +1,7 @@
1
1
  import { Texture } from "../../textures/Texture.js";
2
2
  import Node from "../core/Node.js";
3
3
  import UniformNode from "../core/UniformNode.js";
4
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
4
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
5
5
 
6
6
  export default class TextureNode extends UniformNode<Texture> {
7
7
  readonly isTextureNode: true;
@@ -27,8 +27,26 @@ export default class TextureNode extends UniformNode<Texture> {
27
27
 
28
28
  getDefaultUV(): Node;
29
29
 
30
+ setSampler(value: boolean): this;
31
+
32
+ getSampler(): boolean;
33
+
34
+ uv(uvNode: NodeRepresentation): ShaderNodeObject<Node>;
35
+
36
+ blur(amountNode: NodeRepresentation): ShaderNodeObject<Node>;
37
+
38
+ level(levelNode: NodeRepresentation): ShaderNodeObject<Node>;
39
+
40
+ size(levelNode: NodeRepresentation): ShaderNodeObject<Node>;
41
+
42
+ bias(biasNode: NodeRepresentation): ShaderNodeObject<Node>;
43
+
44
+ compare(compareNode: NodeRepresentation): ShaderNodeObject<Node>;
45
+
30
46
  grad(gradeNodeX: NodeRepresentation, gradeNodeY: NodeRepresentation): ShaderNodeObject<Node>;
31
47
 
48
+ depth(depthNode: NodeRepresentation): ShaderNodeObject<Node>;
49
+
32
50
  clone(): this;
33
51
  }
34
52
 
@@ -38,10 +56,11 @@ export const texture: (
38
56
  levelNode?: NodeRepresentation,
39
57
  biasNode?: NodeRepresentation,
40
58
  ) => ShaderNodeObject<TextureNode>;
41
- export const sampler: (aTexture: Texture | TextureNode) => ShaderNodeObject<Node>;
59
+ export const textureLoad: (
60
+ value: Texture,
61
+ uvNode?: NodeRepresentation,
62
+ levelNode?: NodeRepresentation,
63
+ biasNode?: NodeRepresentation,
64
+ ) => ShaderNodeObject<TextureNode>;
42
65
 
43
- declare module "../shadernode/ShaderNode.js" {
44
- interface NodeElements {
45
- texture: typeof texture;
46
- }
47
- }
66
+ export const sampler: (aTexture: Texture | TextureNode) => ShaderNodeObject<Node>;
@@ -0,0 +1,18 @@
1
+ import Node from "../core/Node.js";
2
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ declare class TextureSizeNode extends Node {
5
+ readonly isTextureSizeNode: true;
6
+
7
+ textureNode: Node;
8
+ levelNode: Node | null;
9
+
10
+ constructor(textureNode: Node, levelNode?: Node | null);
11
+ }
12
+
13
+ export default TextureSizeNode;
14
+
15
+ export const textureSize: (
16
+ textureNode: NodeRepresentation,
17
+ levelNode?: NodeRepresentation | null,
18
+ ) => ShaderNodeObject<TextureSizeNode>;
@@ -1,4 +1,4 @@
1
1
  import AttributeNode from "../core/AttributeNode.js";
2
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
2
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
3
 
4
4
  export const uv: (index?: number) => ShaderNodeObject<AttributeNode>;
@@ -0,0 +1,30 @@
1
+ import Node from "../core/Node.js";
2
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
+ import ArrayElementNode from "../utils/ArrayElementNode.js";
4
+ import BufferNode from "./BufferNode.js";
5
+
6
+ declare class UniformArrayElementNode extends ArrayElementNode {
7
+ constructor(arrayBuffer: Node, indexNode: Node);
8
+ }
9
+
10
+ declare class UniformArrayNode extends BufferNode {
11
+ array: unknown[];
12
+ elementType: string | null;
13
+
14
+ readonly isArrayBufferNode: true;
15
+
16
+ constructor(value: unknown[], elementType?: string | null);
17
+
18
+ getElementLength(): number;
19
+
20
+ element(indexNode: number): ShaderNodeObject<UniformArrayElementNode>;
21
+ }
22
+
23
+ export default UniformArrayNode;
24
+
25
+ export const uniformArray: (values: unknown[], nodeType?: string | null) => ShaderNodeObject<UniformArrayNode>;
26
+
27
+ /**
28
+ * @deprecated uniforms() has been renamed to uniformArray().
29
+ */
30
+ export const uniforms: (values: unknown[], nodeType?: string | null) => ShaderNodeObject<UniformArrayNode>;
@@ -1,4 +1,4 @@
1
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import ReferenceNode from "./ReferenceNode.js";
3
3
 
4
4
  export type NodeUserData = Record<string, any>;
@@ -0,0 +1,16 @@
1
+ import { Matrix4 } from "../../math/Matrix4.js";
2
+ import TempNode from "../core/TempNode.js";
3
+ import UniformNode from "../core/UniformNode.js";
4
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
5
+
6
+ declare class VelocityNode extends TempNode {
7
+ previousModelWorldMatrix: UniformNode<Matrix4>;
8
+ previousProjectionMatrix: UniformNode<Matrix4>;
9
+ previousCameraViewMatrix: UniformNode<Matrix4>;
10
+
11
+ constructor();
12
+ }
13
+
14
+ export default VelocityNode;
15
+
16
+ export const velocity: ShaderNodeObject<VelocityNode>;
@@ -1,5 +1,5 @@
1
1
  import AttributeNode from "../core/AttributeNode.js";
2
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
2
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
3
 
4
4
  export default class VertexColorNode extends AttributeNode {
5
5
  readonly isVertexColorNode: true;
@@ -1,6 +1,6 @@
1
1
  import Node from "../core/Node.js";
2
2
  import NodeBuilder from "../core/NodeBuilder.js";
3
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
3
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
4
4
 
5
5
  export interface CodeNodeInclude {
6
6
  build(builder: NodeBuilder): void;
@@ -1,5 +1,5 @@
1
1
  import TempNode from "../core/TempNode.js";
2
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
2
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
3
 
4
4
  export default class ExpressionNode extends TempNode {
5
5
  snipped: string; /* sic */
@@ -1,6 +1,6 @@
1
1
  import Node from "../core/Node.js";
2
2
  import TempNode from "../core/TempNode.js";
3
- import { ProxiedObject, ShaderNodeObject } from "../shadernode/ShaderNode.js";
3
+ import { ProxiedObject, ShaderNodeObject } from "../tsl/TSLCore.js";
4
4
  import FunctionNode, { FunctionNodeArguments } from "./FunctionNode.js";
5
5
 
6
6
  export default class FunctionCallNode<P extends Node[] | { [name: string]: Node }> extends TempNode {
@@ -18,7 +18,7 @@ export const call: <P extends FunctionNodeArguments>(
18
18
  parameters?: ProxiedObject<P>,
19
19
  ) => ShaderNodeObject<FunctionCallNode<P>>;
20
20
 
21
- declare module "../shadernode/ShaderNode.js" {
21
+ declare module "../tsl/TSLCore.js" {
22
22
  interface NodeElements {
23
23
  call: typeof call;
24
24
  }
@@ -2,14 +2,13 @@ import Node from "../core/Node.js";
2
2
  import NodeBuilder from "../core/NodeBuilder.js";
3
3
  import NodeFunction from "../core/NodeFunction.js";
4
4
  import NodeFunctionInput from "../core/NodeFunctionInput.js";
5
- import { ProxiedObject, ProxiedTuple, ShaderNodeObject } from "../shadernode/ShaderNode.js";
5
+ import { ProxiedObject, ProxiedTuple, ShaderNodeObject } from "../tsl/TSLCore.js";
6
6
  import CodeNode, { CodeNodeInclude } from "./CodeNode.js";
7
7
  import FunctionCallNode from "./FunctionCallNode.js";
8
8
 
9
9
  export type FunctionNodeArguments = Node[] | { [name: string]: Node };
10
10
 
11
11
  export default class FunctionNode<P extends Node[] | { [name: string]: Node }> extends CodeNode {
12
- keywords: { [key: string]: Node };
13
12
  constructor(code?: string, includes?: CodeNodeInclude[], language?: string);
14
13
 
15
14
  getInputs(builder: NodeBuilder): NodeFunctionInput[];
@@ -17,7 +16,7 @@ export default class FunctionNode<P extends Node[] | { [name: string]: Node }> e
17
16
  call(parameters: P): FunctionCallNode<P>;
18
17
  }
19
18
 
20
- export type Fn<P extends FunctionNodeArguments> = P extends readonly [...unknown[]] ? ProxiedTuple<P>
19
+ type FnParameters<P extends FunctionNodeArguments> = P extends readonly [...unknown[]] ? ProxiedTuple<P>
21
20
  : readonly [ProxiedObject<P>];
22
21
 
23
22
  export const nativeFn: <P extends FunctionNodeArguments>(
@@ -25,15 +24,15 @@ export const nativeFn: <P extends FunctionNodeArguments>(
25
24
  includes?: CodeNodeInclude[],
26
25
  language?: string,
27
26
  // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
28
- ) => (...params: Fn<P>) => ShaderNodeObject<Node>;
27
+ ) => (...params: FnParameters<P>) => ShaderNodeObject<Node>;
29
28
 
30
29
  export const glslFn: <P extends FunctionNodeArguments>(
31
30
  code: string,
32
31
  includes?: CodeNodeInclude[],
33
32
  // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
34
- ) => (...params: Fn<P>) => ShaderNodeObject<Node>;
33
+ ) => (...params: FnParameters<P>) => ShaderNodeObject<Node>;
35
34
  export const wgslFn: <P extends FunctionNodeArguments>(
36
35
  code: string,
37
36
  includes?: CodeNodeInclude[],
38
37
  // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
39
- ) => (...params: Fn<P>) => ShaderNodeObject<Node>;
38
+ ) => (...params: FnParameters<P>) => ShaderNodeObject<Node>;
@@ -0,0 +1,22 @@
1
+ import Node from "../core/Node.js";
2
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ declare class Resources extends Map<string, unknown> {
5
+ get<TArgs extends unknown[]>(key: string, callback?: ((...args: TArgs) => void) | null, ...params: TArgs): unknown;
6
+ }
7
+
8
+ export const global: Resources;
9
+
10
+ declare class ScriptableNode extends Node {
11
+ codeNode: Node | null;
12
+ parameters: Record<string, unknown>;
13
+
14
+ constructor(codeNode?: Node | null, parameters?: Record<string, unknown>);
15
+ }
16
+
17
+ export default ScriptableNode;
18
+
19
+ export const scriptable: (
20
+ codeNode?: NodeRepresentation | null,
21
+ parameters?: Record<string, unknown>,
22
+ ) => ShaderNodeObject<ScriptableNode>;
@@ -0,0 +1,10 @@
1
+ import Node from "../core/Node.js";
2
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ declare class ScriptableValueNode extends Node {
5
+ constructor(value: unknown);
6
+ }
7
+
8
+ export default ScriptableValueNode;
9
+
10
+ export const scriptableValue: (value?: unknown) => ShaderNodeObject<ScriptableValueNode>;
@@ -1,4 +1,4 @@
1
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
  import NodeBuilder from "./NodeBuilder.js";
4
4
  import TempNode from "./TempNode.js";
@@ -11,7 +11,7 @@ export default class AssignNode extends TempNode {
11
11
 
12
12
  export const assign: (targetNode: NodeRepresentation, sourceNode: NodeRepresentation) => ShaderNodeObject<AssignNode>;
13
13
 
14
- declare module "../shadernode/ShaderNode.js" {
14
+ declare module "../tsl/TSLCore.js" {
15
15
  interface NodeElements {
16
16
  assign: typeof assign;
17
17
  }
@@ -1,11 +1,9 @@
1
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
  import NodeBuilder from "./NodeBuilder.js";
4
4
 
5
5
  export default class AttributeNode extends Node {
6
- defaultNode: Node | null;
7
-
8
- constructor(attributeName: string, nodeType?: string | null, defaultNode?: Node | null);
6
+ constructor(attributeName: string, nodeType?: string | null);
9
7
 
10
8
  setAttributeName(attributeName: string): this;
11
9
 
@@ -15,5 +13,4 @@ export default class AttributeNode extends Node {
15
13
  export const attribute: (
16
14
  name: string,
17
15
  nodeType?: string | null,
18
- defaultNode?: NodeRepresentation,
19
16
  ) => ShaderNodeObject<AttributeNode>;
@@ -1,4 +1,4 @@
1
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
 
4
4
  export default class BypassNode extends Node {
@@ -11,7 +11,7 @@ export default class BypassNode extends Node {
11
11
 
12
12
  export const bypass: (returnNode: NodeRepresentation, callNode: NodeRepresentation) => ShaderNodeObject<BypassNode>;
13
13
 
14
- declare module "../shadernode/ShaderNode.js" {
14
+ declare module "../tsl/TSLCore.js" {
15
15
  interface NodeElements {
16
16
  bypass: typeof bypass;
17
17
  }
@@ -1,4 +1,4 @@
1
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
  import NodeCache from "./NodeCache.js";
4
4
 
@@ -13,7 +13,7 @@ export default class CacheNode extends Node {
13
13
 
14
14
  export const cache: (node: Node, cache?: NodeCache) => ShaderNodeObject<CacheNode>;
15
15
 
16
- declare module "../shadernode/ShaderNode.js" {
16
+ declare module "../tsl/TSLCore.js" {
17
17
  interface NodeElements {
18
18
  cache: typeof cache;
19
19
  }
@@ -1,19 +1,22 @@
1
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
  import { NodeBuilderContext } from "./NodeBuilder.js";
4
4
 
5
- export default class ContextNode extends Node {
6
- isContextNode: true;
5
+ declare class ContextNode extends Node {
6
+ readonly isContextNode: true;
7
+
7
8
  node: Node;
8
- context: NodeBuilderContext;
9
+ value: NodeBuilderContext;
9
10
 
10
- constructor(node: Node, context: NodeBuilderContext);
11
+ constructor(node: Node, value?: NodeBuilderContext);
11
12
  }
12
13
 
13
- export const context: (node: NodeRepresentation, context: NodeBuilderContext) => ShaderNodeObject<ContextNode>;
14
+ export default ContextNode;
15
+
16
+ export const context: (node: NodeRepresentation, context?: NodeBuilderContext) => ShaderNodeObject<ContextNode>;
14
17
  export const label: (node: NodeRepresentation, label: string) => ShaderNodeObject<ContextNode>;
15
18
 
16
- declare module "../shadernode/ShaderNode.js" {
19
+ declare module "../tsl/TSLCore.js" {
17
20
  interface NodeElements {
18
21
  context: typeof context;
19
22
  label: typeof label;
@@ -1,9 +1,13 @@
1
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
 
4
- export type IndexNodeScope = typeof IndexNode.VERTEX | typeof IndexNode.INSTANCE | typeof IndexNode.DRAW;
4
+ export type IndexNodeScope =
5
+ | typeof IndexNode.VERTEX
6
+ | typeof IndexNode.INSTANCE
7
+ | typeof IndexNode.INVOCATION_LOCAL
8
+ | typeof IndexNode.DRAW;
5
9
 
6
- export default class IndexNode extends Node {
10
+ declare class IndexNode extends Node {
7
11
  scope: IndexNodeScope;
8
12
 
9
13
  readonly isInstanceNode: true;
@@ -12,9 +16,13 @@ export default class IndexNode extends Node {
12
16
 
13
17
  static VERTEX: "vertex";
14
18
  static INSTANCE: "instance";
19
+ static INVOCATION_LOCAL: "invocationLocal";
15
20
  static DRAW: "draw";
16
21
  }
17
22
 
23
+ export default IndexNode;
24
+
18
25
  export const vertexIndex: ShaderNodeObject<IndexNode>;
19
26
  export const instanceIndex: ShaderNodeObject<IndexNode>;
27
+ export const invocationLocalIndex: ShaderNodeObject<IndexNode>;
20
28
  export const drawIndex: ShaderNodeObject<IndexNode>;
@@ -1,7 +1,10 @@
1
+ import { Texture } from "../../textures/Texture.js";
1
2
  import { Node } from "../Nodes.js";
2
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
3
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
3
4
  import OutputStructNode from "./OutputStructNode.js";
4
5
 
6
+ export function getTextureIndex(textures: ReadonlyArray<Texture>, name: string): number;
7
+
5
8
  declare class MRTNode extends OutputStructNode {
6
9
  outputNodes: { [name: string]: Node };
7
10
 
@@ -9,7 +12,9 @@ declare class MRTNode extends OutputStructNode {
9
12
 
10
13
  constructor(outputNodes: { [name: string]: Node });
11
14
 
12
- getNode(name: string): Node;
15
+ has(name: string): boolean;
16
+
17
+ get(name: string): Node;
13
18
 
14
19
  merge(mrtNode: MRTNode): ShaderNodeObject<MRTNode>;
15
20
  }
@@ -60,13 +60,14 @@ interface NodeJSONOutputData {
60
60
  declare class Node extends EventDispatcher<{
61
61
  dispose: {};
62
62
  }> {
63
+ static get type(): string;
63
64
  nodeType: string | null;
64
65
  updateType: NodeUpdateType;
65
66
  updateBeforeType: NodeUpdateType;
66
67
  updateAfterType: NodeUpdateType;
67
68
  uuid: string;
68
69
  version: number;
69
- _cacheKey: string | null;
70
+ _cacheKey: number | null;
70
71
  _cacheKeyVersion: number;
71
72
  global: boolean;
72
73
  readonly isNode: true;
@@ -86,7 +87,8 @@ declare class Node extends EventDispatcher<{
86
87
  getChildren(): Generator<Node, void, unknown>;
87
88
  dispose(): void;
88
89
  traverse(callback: (node: Node) => void): void;
89
- getCacheKey(force?: boolean): string;
90
+ getCacheKey(force?: boolean): number;
91
+ getScope(): this;
90
92
  getHash(builder: NodeBuilder): string;
91
93
  getUpdateType(): NodeUpdateType;
92
94
  getUpdateBeforeType(): NodeUpdateType;
@@ -95,7 +97,6 @@ declare class Node extends EventDispatcher<{
95
97
  getNodeType(builder: NodeBuilder): string | null;
96
98
  getShared(builder: NodeBuilder): Node;
97
99
  setup(builder: NodeBuilder): unknown;
98
- increaseUsage(builder: NodeBuilder): number;
99
100
  analyze(builder: NodeBuilder): void;
100
101
  generate(builder: NodeBuilder, output?: string | null): string | null | undefined;
101
102
  updateBefore(frame: NodeFrame): void;
@@ -108,7 +109,3 @@ declare class Node extends EventDispatcher<{
108
109
  toJSON(meta?: NodeJSONMeta | string): NodeJSONOutputData;
109
110
  }
110
111
  export default Node;
111
- export declare function addNodeClass(type: string, nodeClass: {
112
- new(...args: any[]): Node;
113
- }): void;
114
- export declare function createNodeFromType(type: string): Node | undefined;
@@ -12,7 +12,11 @@ export interface NodeChild {
12
12
  childNode: Node;
13
13
  }
14
14
 
15
- export function getCacheKey(object: Node, force?: boolean): string;
15
+ export const hashString: (str: string) => number;
16
+ export const hashArray: (array: number[]) => number;
17
+ export const hash: (...params: number[]) => number;
18
+
19
+ export function getCacheKey(object: Node, force?: boolean): number;
16
20
  export function getNodeChildren(object: Node): Generator<NodeChild, void>;
17
21
  export function getValueType(value: unknown): string | null;
18
22
  export function getValueFromType(
@@ -1,4 +1,4 @@
1
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
 
4
4
  export default class OutputStructNode extends Node {
@@ -0,0 +1,12 @@
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
+ import PropertyNode from "./PropertyNode.js";
3
+
4
+ declare class ParameterNode extends PropertyNode {
5
+ readonly isParameterNode: true;
6
+
7
+ constructor(nodeType: string, name?: string | null);
8
+ }
9
+
10
+ export default ParameterNode;
11
+
12
+ export const parameter: (type: string, name?: string | null) => ShaderNodeObject<ParameterNode>;
@@ -1,4 +1,4 @@
1
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
 
4
4
  export default class PropertyNode extends Node {
@@ -9,9 +9,19 @@ export default class StackNode extends Node {
9
9
 
10
10
  add(node: Node): this;
11
11
 
12
- if(boolNode: Node, method: () => void): this;
12
+ If(boolNode: Node, method: () => void): this;
13
13
 
14
- elseIf(node: Node, method: () => void): this;
14
+ ElseIf(node: Node, method: () => void): this;
15
15
 
16
+ Else(node: Node, method: () => void): this;
17
+
18
+ /**
19
+ * @deprecated Use {@link StackNode#ElseIf Else()} instead.
20
+ */
21
+ elseif(node: Node, method: () => void): this;
22
+
23
+ /**
24
+ * @deprecated Use {@link StackNode#Else Else()} instead.
25
+ */
16
26
  else(node: Node, method: () => void): this;
17
27
  }
@@ -1,5 +1,6 @@
1
1
  import Node from "./Node.js";
2
2
  declare class StructTypeNode extends Node {
3
+ static get type(): string;
3
4
  types: string[];
4
5
  readonly isStructTypeNode: true;
5
6
  constructor(types: string[]);
@@ -5,6 +5,7 @@ import NodeBuilder from "./NodeBuilder.js";
5
5
  import NodeFrame from "./NodeFrame.js";
6
6
  import UniformGroupNode from "./UniformGroupNode.js";
7
7
  declare class UniformNode<TValue> extends InputNode<TValue> {
8
+ static get type(): string;
8
9
  readonly isUniformNode: true;
9
10
  name: string;
10
11
  groupNode: UniformGroupNode;
@@ -20,4 +21,4 @@ export default UniformNode;
20
21
  export declare const uniform: <TValue>(
21
22
  arg1: InputNode<TValue> | TValue,
22
23
  arg2?: Node | string,
23
- ) => import("../shadernode/ShaderNode.js").ShaderNodeObject<UniformNode<TValue>>;
24
+ ) => import("../tsl/TSLCore.js").ShaderNodeObject<UniformNode<TValue>>;
@@ -1,5 +1,4 @@
1
- import { OperatorNodeOp } from "../math/OperatorNode.js";
2
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
2
  import Node from "./Node.js";
4
3
 
5
4
  export default class VarNode extends Node {
@@ -9,18 +8,11 @@ export default class VarNode extends Node {
9
8
  readonly isVarNode: true;
10
9
 
11
10
  constructor(node: Node, name?: string | null);
12
-
13
- op(op: OperatorNodeOp, ...params: Node[]): this;
14
- assign(...params: Node[]): this;
15
- add(...params: Node[]): this;
16
- sub(...params: Node[]): this;
17
- mul(...params: Node[]): this;
18
- div(...params: Node[]): this;
19
11
  }
20
12
 
21
13
  export const temp: (node: NodeRepresentation, name?: string | null) => ShaderNodeObject<VarNode>;
22
14
 
23
- declare module "../shadernode/ShaderNode.js" {
15
+ declare module "../tsl/TSLCore.js" {
24
16
  interface NodeElements {
25
17
  temp: typeof temp;
26
18
  toVar: typeof temp;
@@ -1,4 +1,4 @@
1
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
1
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
2
2
  import Node from "./Node.js";
3
3
  import NodeBuilder from "./NodeBuilder.js";
4
4
  import NodeVarying from "./NodeVarying.js";
@@ -14,7 +14,7 @@ export default class VaryingNode extends Node {
14
14
 
15
15
  export const varying: (node: NodeRepresentation, name?: string) => ShaderNodeObject<VaryingNode>;
16
16
 
17
- declare module "../shadernode/ShaderNode.js" {
17
+ declare module "../tsl/TSLCore.js" {
18
18
  interface NodeElements {
19
19
  varying: typeof varying;
20
20
  }
@@ -2,7 +2,7 @@ import TextureNode from "../accessors/TextureNode.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
4
  import UniformNode from "../core/UniformNode.js";
5
- import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
5
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
6
6
 
7
7
  export default class AfterImageNode extends TempNode {
8
8
  textureNode: TextureNode;
@@ -17,9 +17,3 @@ export default class AfterImageNode extends TempNode {
17
17
  }
18
18
 
19
19
  export const afterImage: (node: Node, damp?: number) => ShaderNodeObject<AfterImageNode>;
20
-
21
- declare module "../shadernode/ShaderNode.js" {
22
- interface NodeElements {
23
- afterImage: typeof afterImage;
24
- }
25
- }
@@ -0,0 +1,14 @@
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Scene } from "../../scenes/Scene.js";
3
+ import { ShaderNodeObject } from "../tsl/TSLCore.js";
4
+ import StereoCompositePassNode from "./StereoCompositePassNode.js";
5
+
6
+ declare class AnaglyphPassNode extends StereoCompositePassNode {
7
+ readonly isAnaglyphPassNode: true;
8
+
9
+ constructor(scene: Scene, camera: Camera);
10
+ }
11
+
12
+ export default AnaglyphPassNode;
13
+
14
+ export const anaglyphPass: (scene: Scene, camera: Camera) => ShaderNodeObject<AnaglyphPassNode>;
@@ -1,7 +1,7 @@
1
1
  import { Vector2 } from "../../math/Vector2.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
- import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
4
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
5
5
 
6
6
  export default class AnamorphicNode extends TempNode {
7
7
  textureNode: Node;
@@ -23,9 +23,3 @@ export const anamorphic: (
23
23
  scale?: NodeRepresentation,
24
24
  samples?: NodeRepresentation,
25
25
  ) => ShaderNodeObject<AnamorphicNode>;
26
-
27
- declare module "../shadernode/ShaderNode.js" {
28
- interface NodeElements {
29
- anamorphic: typeof anamorphic;
30
- }
31
- }
@@ -0,0 +1,4 @@
1
+ import Node from "../core/Node.js";
2
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ export const bleach: (color: NodeRepresentation, opacity?: number) => ShaderNodeObject<Node>;