@types/three 0.165.0 → 0.167.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 (330) hide show
  1. three/README.md +1 -1
  2. three/build/three.webgpu.d.ts +1 -0
  3. three/build/three.webgpu.min.d.ts +1 -0
  4. three/examples/jsm/Addons.d.ts +1 -1
  5. three/examples/jsm/animation/MMDPhysics.d.ts +4 -4
  6. three/examples/jsm/csm/CSM.d.ts +3 -4
  7. three/examples/jsm/csm/CSMFrustum.d.ts +1 -1
  8. three/examples/jsm/exporters/GLTFExporter.d.ts +6 -0
  9. three/examples/jsm/geometries/TeapotGeometry.d.ts +24 -0
  10. three/examples/jsm/helpers/ViewHelper.d.ts +8 -6
  11. three/examples/jsm/lights/RectAreaLightTexturesLib.d.ts +7 -0
  12. three/examples/jsm/lights/RectAreaLightUniformsLib.d.ts +4 -2
  13. three/examples/jsm/lines/LineMaterial.d.ts +2 -4
  14. three/examples/jsm/lines/webgpu/Line2.d.ts +14 -0
  15. three/examples/jsm/lines/webgpu/LineSegments2.d.ts +15 -0
  16. three/examples/jsm/loaders/DDSLoader.d.ts +8 -2
  17. three/examples/jsm/loaders/GLTFLoader.d.ts +3 -1
  18. three/examples/jsm/loaders/KTX2Loader.d.ts +1 -2
  19. three/examples/jsm/loaders/KTXLoader.d.ts +8 -2
  20. three/examples/jsm/loaders/LUTImageLoader.d.ts +18 -0
  21. three/examples/jsm/loaders/MaterialXLoader.d.ts +1 -2
  22. three/examples/jsm/loaders/PVRLoader.d.ts +2 -2
  23. three/examples/jsm/loaders/UltraHDRLoader.d.ts +21 -0
  24. three/package.json +6 -5
  25. three/src/Three.WebGPU.d.ts +184 -0
  26. three/src/Three.d.ts +26 -91
  27. three/src/animation/AnimationClip.d.ts +12 -4
  28. three/src/animation/AnimationUtils.d.ts +32 -7
  29. three/src/animation/KeyframeTrack.d.ts +9 -1
  30. three/src/animation/PropertyBinding.d.ts +12 -12
  31. three/src/cameras/OrthographicCamera.d.ts +27 -0
  32. three/src/cameras/PerspectiveCamera.d.ts +31 -0
  33. three/src/constants.d.ts +13 -1
  34. three/src/core/BufferAttribute.d.ts +11 -6
  35. three/src/core/BufferGeometry.d.ts +26 -3
  36. three/src/core/InterleavedBufferAttribute.d.ts +3 -3
  37. three/src/core/Object3D.d.ts +51 -6
  38. three/src/extras/DataUtils.d.ts +9 -2
  39. three/src/extras/ImageUtils.d.ts +6 -7
  40. three/src/extras/ShapeUtils.d.ts +5 -8
  41. three/src/extras/TextureUtils.d.ts +42 -0
  42. three/src/extras/core/Curve.d.ts +8 -2
  43. three/src/extras/core/CurvePath.d.ts +9 -1
  44. three/src/extras/core/Path.d.ts +9 -2
  45. three/src/extras/core/Shape.d.ts +9 -1
  46. three/src/lights/Light.d.ts +19 -2
  47. three/src/lights/LightShadow.d.ts +18 -2
  48. three/src/lights/webgpu/IESSpotLight.d.ts +6 -0
  49. three/src/loaders/Cache.d.ts +13 -8
  50. three/src/materials/Material.d.ts +185 -14
  51. three/src/materials/ShaderMaterial.d.ts +49 -2
  52. three/src/math/ColorManagement.d.ts +3 -0
  53. three/src/math/Euler.d.ts +4 -2
  54. three/src/math/Matrix2.d.ts +53 -0
  55. three/src/math/Matrix3.d.ts +67 -115
  56. three/src/math/Matrix4.d.ts +48 -100
  57. three/src/math/Quaternion.d.ts +5 -3
  58. three/src/math/Vector2.d.ts +1 -1
  59. three/src/math/Vector4.d.ts +6 -0
  60. three/{examples/jsm → src}/nodes/Nodes.d.ts +37 -7
  61. three/{examples/jsm → src}/nodes/accessors/BatchNode.d.ts +1 -1
  62. three/{examples/jsm → src}/nodes/accessors/BufferAttributeNode.d.ts +5 -1
  63. three/{examples/jsm → src}/nodes/accessors/CameraNode.d.ts +3 -1
  64. three/{examples/jsm → src}/nodes/accessors/CubeTextureNode.d.ts +11 -3
  65. three/{examples/jsm → src}/nodes/accessors/InstanceNode.d.ts +1 -1
  66. three/{examples/jsm → src}/nodes/accessors/MaterialNode.d.ts +11 -2
  67. three/{examples/jsm → src}/nodes/accessors/MaterialReferenceNode.d.ts +1 -1
  68. three/{examples/jsm → src}/nodes/accessors/ModelNode.d.ts +1 -1
  69. three/{examples/jsm → src}/nodes/accessors/NormalNode.d.ts +3 -3
  70. three/{examples/jsm → src}/nodes/accessors/Object3DNode.d.ts +1 -1
  71. three/{examples/jsm → src}/nodes/accessors/ReflectVectorNode.d.ts +3 -0
  72. three/{examples/jsm → src}/nodes/accessors/SkinningNode.d.ts +1 -1
  73. three/{examples/jsm → src}/nodes/accessors/StorageBufferNode.d.ts +7 -0
  74. three/src/nodes/accessors/StorageTextureNode.d.ts +40 -0
  75. three/{examples/jsm → src}/nodes/accessors/Texture3DNode.d.ts +3 -2
  76. three/{examples/jsm → src}/nodes/accessors/TextureNode.d.ts +9 -2
  77. three/{examples/jsm → src}/nodes/core/CacheNode.d.ts +4 -5
  78. three/{examples/jsm → src}/nodes/core/IndexNode.d.ts +3 -1
  79. three/{examples/jsm → src}/nodes/core/LightingModel.d.ts +12 -3
  80. three/src/nodes/core/MRTNode.d.ts +19 -0
  81. three/{examples/jsm → src}/nodes/core/Node.d.ts +6 -10
  82. three/{examples/jsm → src}/nodes/core/NodeBuilder.d.ts +13 -3
  83. three/{examples/jsm → src}/nodes/core/NodeCache.d.ts +13 -4
  84. three/{examples/jsm → src}/nodes/core/NodeFrame.d.ts +5 -2
  85. three/{examples/jsm → src}/nodes/core/NodeFunction.d.ts +2 -2
  86. three/{examples/jsm → src}/nodes/core/NodeUniform.d.ts +1 -1
  87. three/{examples/jsm → src}/nodes/core/NodeUtils.d.ts +6 -1
  88. three/{examples/jsm → src}/nodes/core/PropertyNode.d.ts +1 -0
  89. three/{examples/jsm → src}/nodes/core/UniformNode.d.ts +2 -0
  90. three/{examples/jsm → src}/nodes/core/VarNode.d.ts +2 -0
  91. three/{examples/jsm → src}/nodes/display/AnamorphicNode.d.ts +1 -1
  92. three/src/nodes/display/BloomNode.d.ts +35 -0
  93. three/{examples/jsm → src}/nodes/display/ColorAdjustmentNode.d.ts +0 -1
  94. three/{examples/jsm → src}/nodes/display/ColorSpaceNode.d.ts +1 -1
  95. three/src/nodes/display/DenoiseNode.d.ts +38 -0
  96. three/src/nodes/display/DepthOfFieldNode.d.ts +30 -0
  97. three/src/nodes/display/DotScreenNode.d.ts +27 -0
  98. three/src/nodes/display/FXAANode.d.ts +19 -0
  99. three/src/nodes/display/FilmNode.d.ts +25 -0
  100. three/src/nodes/display/GTAONode.d.ts +46 -0
  101. three/{examples/jsm → src}/nodes/display/GaussianBlurNode.d.ts +8 -5
  102. three/src/nodes/display/Lut3DNode.d.ts +30 -0
  103. three/{examples/jsm → src}/nodes/display/NormalMapNode.d.ts +1 -2
  104. three/src/nodes/display/PassNode.d.ts +62 -0
  105. three/src/nodes/display/PixelationPassNode.d.ts +67 -0
  106. three/src/nodes/display/RGBShiftNode.d.ts +24 -0
  107. three/src/nodes/display/RenderOutputNode.d.ts +28 -0
  108. three/src/nodes/display/SobelOperatorNode.d.ts +17 -0
  109. three/{examples/jsm → src}/nodes/display/ToneMappingNode.d.ts +1 -1
  110. three/src/nodes/display/TransitionNode.d.ts +41 -0
  111. three/{examples/jsm → src}/nodes/display/ViewportDepthNode.d.ts +4 -6
  112. three/{examples/jsm → src}/nodes/display/ViewportTextureNode.d.ts +1 -1
  113. three/src/nodes/functions/BSDF/LTC.d.ts +9 -0
  114. three/{examples/jsm → src}/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +1 -1
  115. three/src/nodes/functions/BasicLightingModel.d.ts +7 -0
  116. three/src/nodes/functions/PhongLightingModel.d.ts +7 -0
  117. three/{examples/jsm → src}/nodes/geometry/RangeNode.d.ts +4 -1
  118. three/{examples/jsm → src}/nodes/lighting/AnalyticLightNode.d.ts +1 -1
  119. three/src/nodes/lighting/BasicEnvironmentNode.d.ts +10 -0
  120. three/src/nodes/lighting/BasicLightMapNode.d.ts +8 -0
  121. three/{examples/jsm → src}/nodes/lighting/HemisphereLightNode.d.ts +1 -1
  122. three/{examples/jsm → src}/nodes/lighting/LightingNode.d.ts +2 -0
  123. three/{examples/jsm → src}/nodes/lighting/LightsNode.d.ts +1 -1
  124. three/{examples/jsm → src}/nodes/lighting/PointLightNode.d.ts +1 -1
  125. three/src/nodes/lighting/RectAreaLightNode.d.ts +21 -0
  126. three/{examples/jsm → src}/nodes/lighting/SpotLightNode.d.ts +1 -1
  127. three/{examples/jsm → src}/nodes/loaders/NodeLoader.d.ts +3 -1
  128. three/{examples/jsm → src}/nodes/loaders/NodeMaterialLoader.d.ts +1 -1
  129. three/{examples/jsm → src}/nodes/loaders/NodeObjectLoader.d.ts +3 -1
  130. three/src/nodes/materials/Line2NodeMaterial.d.ts +53 -0
  131. three/{examples/jsm → src}/nodes/materials/LineBasicNodeMaterial.d.ts +3 -1
  132. three/{examples/jsm → src}/nodes/materials/Materials.d.ts +2 -1
  133. three/{examples/jsm → src}/nodes/materials/MeshBasicNodeMaterial.d.ts +5 -1
  134. three/{examples/jsm → src}/nodes/materials/MeshMatcapNodeMaterial.d.ts +5 -1
  135. three/{examples/jsm → src}/nodes/materials/MeshNormalNodeMaterial.d.ts +4 -1
  136. three/{examples/jsm → src}/nodes/materials/MeshPhongNodeMaterial.d.ts +8 -4
  137. three/{examples/jsm → src}/nodes/materials/MeshPhysicalNodeMaterial.d.ts +21 -20
  138. three/src/nodes/materials/MeshSSSNodeMaterial.d.ts +16 -0
  139. three/{examples/jsm → src}/nodes/materials/MeshStandardNodeMaterial.d.ts +9 -5
  140. three/{examples/jsm → src}/nodes/materials/MeshToonNodeMaterial.d.ts +5 -1
  141. three/{examples/jsm → src}/nodes/materials/NodeMaterial.d.ts +54 -49
  142. three/{examples/jsm → src}/nodes/materials/PointsNodeMaterial.d.ts +3 -1
  143. three/{examples/jsm → src}/nodes/materials/ShadowNodeMaterial.d.ts +2 -1
  144. three/{examples/jsm → src}/nodes/materials/SpriteNodeMaterial.d.ts +5 -4
  145. three/{examples/jsm → src}/nodes/materialx/lib/mx_hsv.d.ts +1 -0
  146. three/src/nodes/materialx/lib/mx_noise.d.ts +359 -0
  147. three/{examples/jsm → src}/nodes/math/MathNode.d.ts +9 -1
  148. three/{examples/jsm → src}/nodes/pmrem/PMREMNode.d.ts +1 -1
  149. three/{examples/jsm → src}/nodes/utils/DiscardNode.d.ts +1 -0
  150. three/{examples/jsm → src}/nodes/utils/MaxMipLevelNode.d.ts +3 -3
  151. three/src/nodes/utils/PackingNode.d.ts +24 -0
  152. three/src/nodes/utils/RTTNode.d.ts +45 -0
  153. three/{examples/jsm → src}/nodes/utils/ReflectorNode.d.ts +3 -1
  154. three/src/objects/BatchedMesh.d.ts +58 -54
  155. three/src/objects/InstancedMesh.d.ts +15 -2
  156. three/src/objects/LOD.d.ts +17 -1
  157. three/src/objects/Mesh.d.ts +11 -1
  158. three/src/objects/Points.d.ts +0 -3
  159. three/src/objects/Skeleton.d.ts +10 -3
  160. three/src/objects/SkinnedMesh.d.ts +15 -3
  161. three/{examples/jsm → src}/renderers/common/Animation.d.ts +0 -1
  162. three/{examples/jsm → src}/renderers/common/Attributes.d.ts +4 -2
  163. three/{examples/jsm → src}/renderers/common/Backend.d.ts +1 -1
  164. three/{examples/jsm → src}/renderers/common/Background.d.ts +2 -1
  165. three/src/renderers/common/BindGroup.d.ts +9 -0
  166. three/{examples/jsm → src}/renderers/common/Bindings.d.ts +11 -14
  167. three/{examples/jsm → src}/renderers/common/ClippingContext.d.ts +6 -1
  168. three/{examples/jsm → src}/renderers/common/Color4.d.ts +1 -1
  169. three/{examples/jsm → src}/renderers/common/CubeRenderTarget.d.ts +4 -1
  170. three/{examples/jsm → src}/renderers/common/Geometries.d.ts +6 -3
  171. three/{examples/jsm → src}/renderers/common/Info.d.ts +7 -2
  172. three/{examples/jsm → src}/renderers/common/PostProcessing.d.ts +9 -1
  173. three/{examples/jsm/objects → src/renderers/common}/QuadMesh.d.ts +4 -2
  174. three/{examples/jsm → src}/renderers/common/RenderBundle.d.ts +2 -1
  175. three/{examples/jsm → src}/renderers/common/RenderBundles.d.ts +2 -1
  176. three/{examples/jsm → src}/renderers/common/RenderContext.d.ts +4 -1
  177. three/{examples/jsm → src}/renderers/common/RenderContexts.d.ts +3 -1
  178. three/{examples/jsm → src}/renderers/common/RenderList.d.ts +5 -1
  179. three/{examples/jsm → src}/renderers/common/RenderLists.d.ts +2 -1
  180. three/{examples/jsm → src}/renderers/common/RenderObject.d.ts +19 -16
  181. three/{examples/jsm → src}/renderers/common/RenderObjects.d.ts +5 -2
  182. three/{examples/jsm → src}/renderers/common/Renderer.d.ts +41 -29
  183. three/src/renderers/common/SampledTexture.d.ts +27 -0
  184. three/src/renderers/common/Sampler.d.ts +11 -0
  185. three/{examples/jsm → src}/renderers/common/StorageBufferAttribute.d.ts +1 -1
  186. three/{examples/jsm → src}/renderers/common/StorageInstancedBufferAttribute.d.ts +2 -1
  187. three/{examples/jsm → src}/renderers/common/StorageTexture.d.ts +1 -1
  188. three/{examples/jsm → src}/renderers/common/Textures.d.ts +4 -1
  189. three/{examples/jsm → src}/renderers/common/Uniform.d.ts +9 -4
  190. three/{examples/jsm → src}/renderers/common/UniformsGroup.d.ts +4 -2
  191. three/{examples/jsm → src}/renderers/common/extras/PMREMGenerator.d.ts +2 -1
  192. three/{examples/jsm → src}/renderers/common/nodes/NodeBuilderState.d.ts +8 -4
  193. three/src/renderers/common/nodes/NodeSampledTexture.d.ts +29 -0
  194. three/src/renderers/common/nodes/NodeSampler.d.ts +12 -0
  195. three/{examples/jsm → src}/renderers/common/nodes/NodeUniform.d.ts +10 -5
  196. three/{examples/jsm → src}/renderers/common/nodes/NodeUniformsGroup.d.ts +1 -3
  197. three/{examples/jsm → src}/renderers/common/nodes/Nodes.d.ts +22 -8
  198. three/src/renderers/shaders/ShaderLib.d.ts +3 -1
  199. three/src/renderers/shaders/UniformsLib.d.ts +3 -0
  200. three/src/renderers/shaders/UniformsUtils.d.ts +6 -3
  201. three/{examples/jsm/renderers/webgl → src/renderers/webgl-fallback}/WebGLBackend.d.ts +1 -1
  202. three/{examples/jsm → src}/renderers/webgpu/WebGPUBackend.d.ts +1 -1
  203. three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +125 -0
  204. three/src/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +6 -0
  205. three/src/renderers/webgpu/nodes/WGSLNodeParser.d.ts +6 -0
  206. three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +328 -0
  207. three/src/renderers/webxr/WebXRDepthSensing.d.ts +2 -0
  208. three/src/renderers/webxr/WebXRManager.d.ts +33 -23
  209. three/src/scenes/Fog.d.ts +7 -24
  210. three/src/scenes/FogExp2.d.ts +9 -3
  211. three/src/scenes/Scene.d.ts +21 -5
  212. three/src/textures/CompressedArrayTexture.d.ts +4 -4
  213. three/src/textures/CompressedTexture.d.ts +16 -8
  214. three/src/textures/Source.d.ts +15 -1
  215. three/src/textures/Texture.d.ts +40 -2
  216. three/examples/jsm/deprecated/Geometry.d.ts +0 -341
  217. three/examples/jsm/lights/IESSpotLight.d.ts +0 -5
  218. three/examples/jsm/nodes/display/PassNode.d.ts +0 -46
  219. three/examples/jsm/nodes/functions/PhongLightingModel.d.ts +0 -7
  220. three/examples/jsm/nodes/materials/MeshSSSNodeMaterial.d.ts +0 -17
  221. three/examples/jsm/nodes/materialx/lib/mx_noise.d.ts +0 -129
  222. three/examples/jsm/renderers/webgl/nodes/SlotNode.d.ts +0 -17
  223. three/examples/jsm/renderers/webgl/nodes/WebGLNodeBuilder.d.ts +0 -37
  224. three/examples/jsm/renderers/webgl/nodes/WebGLNodes.d.ts +0 -3
  225. /three/{examples/jsm → src}/nodes/accessors/AccessorsUtils.d.ts +0 -0
  226. /three/{examples/jsm → src}/nodes/accessors/BitangentNode.d.ts +0 -0
  227. /three/{examples/jsm → src}/nodes/accessors/BufferNode.d.ts +0 -0
  228. /three/{examples/jsm → src}/nodes/accessors/ClippingNode.d.ts +0 -0
  229. /three/{examples/jsm → src}/nodes/accessors/ModelViewProjectionNode.d.ts +0 -0
  230. /three/{examples/jsm → src}/nodes/accessors/PointUVNode.d.ts +0 -0
  231. /three/{examples/jsm → src}/nodes/accessors/PositionNode.d.ts +0 -0
  232. /three/{examples/jsm → src}/nodes/accessors/ReferenceNode.d.ts +0 -0
  233. /three/{examples/jsm → src}/nodes/accessors/RendererReferenceNode.d.ts +0 -0
  234. /three/{examples/jsm → src}/nodes/accessors/TangentNode.d.ts +0 -0
  235. /three/{examples/jsm → src}/nodes/accessors/TextureBicubicNode.d.ts +0 -0
  236. /three/{examples/jsm → src}/nodes/accessors/UVNode.d.ts +0 -0
  237. /three/{examples/jsm → src}/nodes/accessors/UniformsNode.d.ts +0 -0
  238. /three/{examples/jsm → src}/nodes/accessors/UserDataNode.d.ts +0 -0
  239. /three/{examples/jsm → src}/nodes/accessors/VertexColorNode.d.ts +0 -0
  240. /three/{examples/jsm → src}/nodes/code/CodeNode.d.ts +0 -0
  241. /three/{examples/jsm → src}/nodes/code/ExpressionNode.d.ts +0 -0
  242. /three/{examples/jsm → src}/nodes/code/FunctionCallNode.d.ts +0 -0
  243. /three/{examples/jsm → src}/nodes/code/FunctionNode.d.ts +0 -0
  244. /three/{examples/jsm → src}/nodes/core/AssignNode.d.ts +0 -0
  245. /three/{examples/jsm → src}/nodes/core/AttributeNode.d.ts +0 -0
  246. /three/{examples/jsm → src}/nodes/core/BypassNode.d.ts +0 -0
  247. /three/{examples/jsm → src}/nodes/core/ConstNode.d.ts +0 -0
  248. /three/{examples/jsm → src}/nodes/core/ContextNode.d.ts +0 -0
  249. /three/{examples/jsm → src}/nodes/core/InputNode.d.ts +0 -0
  250. /three/{examples/jsm → src}/nodes/core/NodeAttribute.d.ts +0 -0
  251. /three/{examples/jsm → src}/nodes/core/NodeCode.d.ts +0 -0
  252. /three/{examples/jsm → src}/nodes/core/NodeFunctionInput.d.ts +0 -0
  253. /three/{examples/jsm → src}/nodes/core/NodeKeywords.d.ts +0 -0
  254. /three/{examples/jsm → src}/nodes/core/NodeParser.d.ts +0 -0
  255. /three/{examples/jsm → src}/nodes/core/NodeVar.d.ts +0 -0
  256. /three/{examples/jsm → src}/nodes/core/NodeVarying.d.ts +0 -0
  257. /three/{examples/jsm → src}/nodes/core/OutputStructNode.d.ts +0 -0
  258. /three/{examples/jsm → src}/nodes/core/StackNode.d.ts +0 -0
  259. /three/{examples/jsm → src}/nodes/core/StructTypeNode.d.ts +0 -0
  260. /three/{examples/jsm → src}/nodes/core/TempNode.d.ts +0 -0
  261. /three/{examples/jsm → src}/nodes/core/UniformGroup.d.ts +0 -0
  262. /three/{examples/jsm → src}/nodes/core/UniformGroupNode.d.ts +0 -0
  263. /three/{examples/jsm → src}/nodes/core/VaryingNode.d.ts +0 -0
  264. /three/{examples/jsm → src}/nodes/core/constants.d.ts +0 -0
  265. /three/{examples/jsm → src}/nodes/display/AfterImageNode.d.ts +0 -0
  266. /three/{examples/jsm → src}/nodes/display/BlendModeNode.d.ts +0 -0
  267. /three/{examples/jsm → src}/nodes/display/FrontFacingNode.d.ts +0 -0
  268. /three/{examples/jsm → src}/nodes/display/PosterizeNode.d.ts +0 -0
  269. /three/{examples/jsm → src}/nodes/display/ViewportDepthTextureNode.d.ts +0 -0
  270. /three/{examples/jsm → src}/nodes/display/ViewportNode.d.ts +0 -0
  271. /three/{examples/jsm → src}/nodes/display/ViewportSharedTextureNode.d.ts +0 -0
  272. /three/{examples/jsm → src}/nodes/fog/FogExp2Node.d.ts +0 -0
  273. /three/{examples/jsm → src}/nodes/fog/FogNode.d.ts +0 -0
  274. /three/{examples/jsm → src}/nodes/fog/FogRangeNode.d.ts +0 -0
  275. /three/{examples/jsm → src}/nodes/functions/BSDF/BRDF_GGX.d.ts +0 -0
  276. /three/{examples/jsm → src}/nodes/functions/BSDF/BRDF_Lambert.d.ts +0 -0
  277. /three/{examples/jsm → src}/nodes/functions/BSDF/BRDF_Sheen.d.ts +0 -0
  278. /three/{examples/jsm → src}/nodes/functions/BSDF/DFGApprox.d.ts +0 -0
  279. /three/{examples/jsm → src}/nodes/functions/BSDF/D_GGX.d.ts +0 -0
  280. /three/{examples/jsm → src}/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +0 -0
  281. /three/{examples/jsm → src}/nodes/functions/BSDF/F_Schlick.d.ts +0 -0
  282. /three/{examples/jsm → src}/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +0 -0
  283. /three/{examples/jsm → src}/nodes/functions/PhysicalLightingModel.d.ts +0 -0
  284. /three/{examples/jsm → src}/nodes/functions/ShadowMaskModel.d.ts +0 -0
  285. /three/{examples/jsm → src}/nodes/functions/ToonLightingModel.d.ts +0 -0
  286. /three/{examples/jsm → src}/nodes/functions/material/getGeometryRoughness.d.ts +0 -0
  287. /three/{examples/jsm → src}/nodes/functions/material/getRoughness.d.ts +0 -0
  288. /three/{examples/jsm → src}/nodes/gpgpu/ComputeNode.d.ts +0 -0
  289. /three/{examples/jsm → src}/nodes/lighting/AONode.d.ts +0 -0
  290. /three/{examples/jsm → src}/nodes/lighting/EnvironmentNode.d.ts +0 -0
  291. /three/{examples/jsm → src}/nodes/lighting/IrradianceNode.d.ts +0 -0
  292. /three/{examples/jsm → src}/nodes/lighting/LightUtils.d.ts +0 -0
  293. /three/{examples/jsm → src}/nodes/lighting/LightingContextNode.d.ts +0 -0
  294. /three/{examples/jsm → src}/nodes/materials/VolumeNodeMaterial.d.ts +0 -0
  295. /three/{examples/jsm → src}/nodes/materialx/MaterialXNodes.d.ts +0 -0
  296. /three/{examples/jsm → src}/nodes/materialx/lib/mx_transform_color.d.ts +0 -0
  297. /three/{examples/jsm → src}/nodes/math/CondNode.d.ts +0 -0
  298. /three/{examples/jsm → src}/nodes/math/HashNode.d.ts +0 -0
  299. /three/{examples/jsm → src}/nodes/math/MathUtils.d.ts +0 -0
  300. /three/{examples/jsm → src}/nodes/math/OperatorNode.d.ts +0 -0
  301. /three/{examples/jsm → src}/nodes/math/TriNoise3D.d.ts +0 -0
  302. /three/{examples/jsm → src}/nodes/procedural/CheckerNode.d.ts +0 -0
  303. /three/{examples/jsm → src}/nodes/shadernode/ShaderNode.d.ts +0 -0
  304. /three/{examples/jsm → src}/nodes/utils/ArrayElementNode.d.ts +0 -0
  305. /three/{examples/jsm → src}/nodes/utils/ConvertNode.d.ts +0 -0
  306. /three/{examples/jsm → src}/nodes/utils/EquirectUVNode.d.ts +0 -0
  307. /three/{examples/jsm → src}/nodes/utils/JoinNode.d.ts +0 -0
  308. /three/{examples/jsm → src}/nodes/utils/MatcapUVNode.d.ts +0 -0
  309. /three/{examples/jsm → src}/nodes/utils/OscNode.d.ts +0 -0
  310. /three/{examples/jsm → src}/nodes/utils/RemapNode.d.ts +0 -0
  311. /three/{examples/jsm → src}/nodes/utils/RotateNode.d.ts +0 -0
  312. /three/{examples/jsm → src}/nodes/utils/RotateUVNode.d.ts +0 -0
  313. /three/{examples/jsm → src}/nodes/utils/SplitNode.d.ts +0 -0
  314. /three/{examples/jsm → src}/nodes/utils/SpriteSheetUVNode.d.ts +0 -0
  315. /three/{examples/jsm → src}/nodes/utils/StoargeArrayElementNode.d.ts +0 -0
  316. /three/{examples/jsm → src}/nodes/utils/TimerNode.d.ts +0 -0
  317. /three/{examples/jsm → src}/nodes/utils/TriplanarTexturesNode.d.ts +0 -0
  318. /three/{examples/jsm → src}/renderers/common/Binding.d.ts +0 -0
  319. /three/{examples/jsm → src}/renderers/common/Buffer.d.ts +0 -0
  320. /three/{examples/jsm → src}/renderers/common/BufferUtils.d.ts +0 -0
  321. /three/{examples/jsm → src}/renderers/common/ChainMap.d.ts +0 -0
  322. /three/{examples/jsm → src}/renderers/common/ComputePipeline.d.ts +0 -0
  323. /three/{examples/jsm → src}/renderers/common/Constants.d.ts +0 -0
  324. /three/{examples/jsm → src}/renderers/common/DataMap.d.ts +0 -0
  325. /three/{examples/jsm → src}/renderers/common/Pipeline.d.ts +0 -0
  326. /three/{examples/jsm → src}/renderers/common/Pipelines.d.ts +0 -0
  327. /three/{examples/jsm → src}/renderers/common/ProgrammableStage.d.ts +0 -0
  328. /three/{examples/jsm → src}/renderers/common/RenderPipeline.d.ts +0 -0
  329. /three/{examples/jsm → src}/renderers/common/UniformBuffer.d.ts +0 -0
  330. /three/{examples/jsm → src}/renderers/webgpu/WebGPURenderer.d.ts +0 -0
@@ -1,3 +1,6 @@
1
+ import { BufferAttribute, TypedArray } from "../../core/BufferAttribute.js";
2
+ import { InterleavedBuffer } from "../../core/InterleavedBuffer.js";
3
+ import BufferAttributeNode from "../accessors/BufferAttributeNode.js";
1
4
  import Node from "./Node.js";
2
5
  import NodeAttribute from "./NodeAttribute.js";
3
6
  import NodeCode from "./NodeCode.js";
@@ -33,11 +36,17 @@ interface NodeData {
33
36
  compute?: ShaderStageNodeData | undefined;
34
37
  any?: ShaderStageNodeData | undefined;
35
38
  }
39
+ interface BufferAttributeData {
40
+ node: BufferAttributeNode;
41
+ }
36
42
  declare class NodeCache {
37
43
  id: number;
38
- nodesData: WeakMap<Node, NodeData>;
39
- constructor();
40
- getNodeData(node: Node): NodeData | undefined;
41
- setNodeData(node: Node, data: NodeData): void;
44
+ nodesData: WeakMap<Node | TypedArray | InterleavedBuffer | BufferAttribute, NodeData | BufferAttributeData>;
45
+ parent: NodeCache | null;
46
+ constructor(parent?: NodeCache | null);
47
+ getData(node: Node): NodeData | undefined;
48
+ getData(node: TypedArray | InterleavedBuffer | BufferAttribute): BufferAttributeData | undefined;
49
+ setData(node: Node, data: NodeData): void;
50
+ setData(node: TypedArray | InterleavedBuffer | BufferAttribute, data: BufferAttributeData): void;
42
51
  }
43
52
  export default NodeCache;
@@ -1,5 +1,8 @@
1
- import { Camera, Material, Object3D, Renderer, Scene } from "three";
2
-
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Object3D } from "../../core/Object3D.js";
3
+ import { Material } from "../../materials/Material.js";
4
+ import Renderer from "../../renderers/common/Renderer.js";
5
+ import { Scene } from "../../scenes/Scene.js";
3
6
  import Node from "./Node.js";
4
7
 
5
8
  export default class NodeFrame {
@@ -5,9 +5,9 @@ export default abstract class NodeFunction {
5
5
  type: string;
6
6
  inputs: NodeFunctionInput[];
7
7
  name: string;
8
- presicion: string;
8
+ precision: string;
9
9
 
10
- constructor(type: string, inputs: NodeFunctionInput[], name?: string, presicion?: string);
10
+ constructor(type: string, inputs: NodeFunctionInput[], name?: string, precision?: string);
11
11
 
12
12
  abstract getCode(name?: string): string;
13
13
  }
@@ -5,7 +5,7 @@ declare class NodeUniform<TValue> {
5
5
  type: string | null;
6
6
  node: UniformNode<TValue>;
7
7
  needsUpdate: boolean | undefined;
8
- constructor(name: string, type: string | null, node: UniformNode<TValue>, needsUpdate?: undefined);
8
+ constructor(name: string, type: string | null, node: UniformNode<TValue>);
9
9
  get value(): TValue;
10
10
  set value(val: TValue);
11
11
  get id(): number;
@@ -1,4 +1,9 @@
1
- import { Color, Matrix3, Matrix4, Vector2, Vector3, Vector4 } from "three";
1
+ import { Color } from "../../math/Color.js";
2
+ import { Matrix3 } from "../../math/Matrix3.js";
3
+ import { Matrix4 } from "../../math/Matrix4.js";
4
+ import { Vector2 } from "../../math/Vector2.js";
5
+ import { Vector3 } from "../../math/Vector3.js";
6
+ import { Vector4 } from "../../math/Vector4.js";
2
7
  import Node from "./Node.js";
3
8
 
4
9
  export interface NodeChild {
@@ -14,6 +14,7 @@ export const property: (type?: string | null, name?: string | null) => ShaderNod
14
14
  export const varyingProperty: (type?: string | null, name?: string | null) => ShaderNodeObject<PropertyNode>;
15
15
 
16
16
  export const diffuseColor: ShaderNodeObject<PropertyNode>;
17
+ export const emissive: ShaderNodeObject<PropertyNode>;
17
18
  export const roughness: ShaderNodeObject<PropertyNode>;
18
19
  export const metalness: ShaderNodeObject<PropertyNode>;
19
20
  export const clearcoat: ShaderNodeObject<PropertyNode>;
@@ -6,8 +6,10 @@ import NodeFrame from "./NodeFrame.js";
6
6
  import UniformGroupNode from "./UniformGroupNode.js";
7
7
  declare class UniformNode<TValue> extends InputNode<TValue> {
8
8
  readonly isUniformNode: true;
9
+ name: string;
9
10
  groupNode: UniformGroupNode;
10
11
  constructor(value: TValue, nodeType?: string | null);
12
+ label(name: string): this;
11
13
  setGroup(group: UniformGroupNode): this;
12
14
  getGroup(): UniformGroupNode;
13
15
  getUniformHash(builder: NodeBuilder): string;
@@ -6,6 +6,8 @@ export default class VarNode extends Node {
6
6
  node: Node;
7
7
  name: string | null;
8
8
 
9
+ readonly isVarNode: true;
10
+
9
11
  constructor(node: Node, name?: string | null);
10
12
 
11
13
  op(op: OperatorNodeOp, ...params: Node[]): this;
@@ -1,4 +1,4 @@
1
- import { Vector2 } from "three";
1
+ import { Vector2 } from "../../math/Vector2.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
4
  import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
@@ -0,0 +1,35 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import Node from "../core/Node.js";
3
+ import TempNode from "../core/TempNode.js";
4
+ import UniformNode from "../core/UniformNode.js";
5
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
6
+
7
+ declare class BloomNode extends TempNode {
8
+ inputNode: Node;
9
+ strength: UniformNode<number>;
10
+ radius: UniformNode<number>;
11
+ threshold: UniformNode<number>;
12
+
13
+ smoothWidth: UniformNode<number>;
14
+
15
+ constructor(inputNode: Node, strength?: number, radius?: number, threshold?: number);
16
+
17
+ getTexture(): ShaderNodeObject<TextureNode>;
18
+
19
+ setSize(width: number, height: number): void;
20
+ }
21
+
22
+ export const bloom: (
23
+ node: NodeRepresentation,
24
+ strength?: number,
25
+ radius?: number,
26
+ threshold?: number,
27
+ ) => ShaderNodeObject<BloomNode>;
28
+
29
+ declare module "../shadernode/ShaderNode.js" {
30
+ interface NodeElements {
31
+ bloom: typeof bloom;
32
+ }
33
+ }
34
+
35
+ export default BloomNode;
@@ -33,7 +33,6 @@ export const hue: (
33
33
  adjustmentNode?: NodeRepresentation,
34
34
  ) => ShaderNodeObject<ColorAdjustmentNode>;
35
35
 
36
- export const lumaCoeffs: ShaderNodeObject<MathNode>;
37
36
  export const luminance: (a: NodeRepresentation, b: NodeRepresentation) => ShaderNodeObject<MathNode>;
38
37
 
39
38
  export const threshold: (color: NodeRepresentation, thershold: NodeRepresentation) => ShaderNodeObject<MathNode>;
@@ -1,4 +1,4 @@
1
- import { ColorSpace } from "three";
1
+ import { ColorSpace } from "../../constants.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
4
  import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
@@ -0,0 +1,38 @@
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Matrix4 } from "../../math/Matrix4.js";
3
+ import Node from "../core/Node.js";
4
+ import TempNode from "../core/TempNode.js";
5
+ import UniformNode from "../core/UniformNode.js";
6
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
7
+
8
+ declare class DenoiseNode extends TempNode {
9
+ textureNode: Node;
10
+ depthNode: Node;
11
+ normalNode: Node;
12
+ noiseNode: Node;
13
+
14
+ cameraProjectionMatrixInversion: UniformNode<Matrix4>;
15
+ lumaPhi: UniformNode<number>;
16
+ depthPhi: UniformNode<number>;
17
+ normalPhi: UniformNode<number>;
18
+ radius: UniformNode<number>;
19
+ index: UniformNode<number>;
20
+
21
+ constructor(textureNode: Node, depthNode: Node, normalNode: Node, noiseNode: Node, camera: Camera);
22
+ }
23
+
24
+ export const denoise: (
25
+ node: NodeRepresentation,
26
+ depthNode: NodeRepresentation,
27
+ normalNode: NodeRepresentation,
28
+ noiseNode: NodeRepresentation,
29
+ camera: Camera,
30
+ ) => ShaderNodeObject<DenoiseNode>;
31
+
32
+ declare module "../shadernode/ShaderNode.js" {
33
+ interface NodeElements {
34
+ denoise: typeof denoise;
35
+ }
36
+ }
37
+
38
+ export default DenoiseNode;
@@ -0,0 +1,30 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import Node from "../core/Node.js";
3
+ import TempNode from "../core/TempNode.js";
4
+ import UniformNode from "../core/UniformNode.js";
5
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
6
+
7
+ export default class DepthOfFieldNode extends TempNode {
8
+ textureNode: TextureNode;
9
+ viewZNode: Node;
10
+
11
+ focus: UniformNode<number>;
12
+ aperture: UniformNode<number>;
13
+ maxblur: UniformNode<number>;
14
+
15
+ constructor(textureNode: TextureNode, viewZNode: Node, focusNode: Node, apertureNode: Node, maxblurNode: Node);
16
+ }
17
+
18
+ export const dof: (
19
+ node: NodeRepresentation,
20
+ viewZNode: NodeRepresentation,
21
+ focus?: NodeRepresentation,
22
+ aperture?: NodeRepresentation,
23
+ maxblur?: NodeRepresentation,
24
+ ) => ShaderNodeObject<DepthOfFieldNode>;
25
+
26
+ declare module "../shadernode/ShaderNode.js" {
27
+ interface NodeElements {
28
+ dof: typeof dof;
29
+ }
30
+ }
@@ -0,0 +1,27 @@
1
+ import { Vector2 } from "../../math/Vector2.js";
2
+ import Node from "../core/Node.js";
3
+ import TempNode from "../core/TempNode.js";
4
+ import UniformNode from "../core/UniformNode.js";
5
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
6
+
7
+ export default class DotScreenNode extends TempNode {
8
+ inputNode: Node;
9
+ center: UniformNode<Vector2>;
10
+ angle: UniformNode<number>;
11
+ scale: UniformNode<number>;
12
+
13
+ constructor(inputNode: Node, center?: Vector2, angle?: number, scale?: number);
14
+ }
15
+
16
+ export const dotScreen: (
17
+ node: NodeRepresentation,
18
+ center?: Vector2,
19
+ angle?: number,
20
+ scale?: number,
21
+ ) => ShaderNodeObject<DotScreenNode>;
22
+
23
+ declare module "../shadernode/ShaderNode.js" {
24
+ interface NodeElements {
25
+ dotScreen: typeof dotScreen;
26
+ }
27
+ }
@@ -0,0 +1,19 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import TempNode from "../core/TempNode.js";
3
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
4
+
5
+ declare class FXAANode extends TempNode {
6
+ textureNode: TextureNode;
7
+
8
+ constructor(textureNode: TextureNode);
9
+ }
10
+
11
+ export const fxaa: (node: NodeRepresentation) => ShaderNodeObject<FXAANode>;
12
+
13
+ declare module "../shadernode/ShaderNode.js" {
14
+ interface NodeElements {
15
+ fxaa: typeof fxaa;
16
+ }
17
+ }
18
+
19
+ export default FXAANode;
@@ -0,0 +1,25 @@
1
+ import Node from "../core/Node.js";
2
+ import TempNode from "../core/TempNode.js";
3
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
4
+
5
+ declare class FilmNode extends TempNode {
6
+ inputNode: Node;
7
+ intensityNode: Node | null;
8
+ uvNode: Node | null;
9
+
10
+ constructor(inputNode: Node, intensityNode?: Node | null, uvNode?: Node | null);
11
+ }
12
+
13
+ export const film: (
14
+ inputNode: NodeRepresentation,
15
+ intensityNode?: NodeRepresentation | null,
16
+ uvNode?: NodeRepresentation | null,
17
+ ) => ShaderNodeObject<FilmNode>;
18
+
19
+ declare module "../shadernode/ShaderNode.js" {
20
+ interface NodeElements {
21
+ film: typeof film;
22
+ }
23
+ }
24
+
25
+ export default FilmNode;
@@ -0,0 +1,46 @@
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Matrix4 } from "../../math/Matrix4.js";
3
+ import { Vector2 } from "../../math/Vector2.js";
4
+ import TextureNode from "../accessors/TextureNode.js";
5
+ import Node from "../core/Node.js";
6
+ import TempNode from "../core/TempNode.js";
7
+ import UniformNode from "../core/UniformNode.js";
8
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
9
+
10
+ declare class GTAONode extends TempNode {
11
+ depthNode: Node;
12
+ normalNode: Node;
13
+
14
+ radius: ShaderNodeObject<UniformNode<number>>;
15
+ resolution: ShaderNodeObject<UniformNode<Vector2>>;
16
+ thickness: ShaderNodeObject<UniformNode<number>>;
17
+ distanceExponent: ShaderNodeObject<UniformNode<number>>;
18
+ distanceFallOff: ShaderNodeObject<UniformNode<number>>;
19
+ scale: ShaderNodeObject<UniformNode<number>>;
20
+ noiseNode: ShaderNodeObject<TextureNode>;
21
+
22
+ cameraProjectionMatrix: ShaderNodeObject<UniformNode<Matrix4>>;
23
+ cameraProjectionMatrixInverse: ShaderNodeObject<UniformNode<Matrix4>>;
24
+
25
+ SAMPLES: ShaderNodeObject<UniformNode<number>>;
26
+
27
+ constructor(depthNode: Node, normalNode: Node, camera: Camera);
28
+
29
+ getTextureNode(): ShaderNodeObject<TextureNode>;
30
+
31
+ setSize(width: number, height: number): void;
32
+ }
33
+
34
+ export const ao: (
35
+ depthNode: NodeRepresentation,
36
+ normalNode: NodeRepresentation,
37
+ camera: Camera,
38
+ ) => ShaderNodeObject<GTAONode>;
39
+
40
+ declare module "../shadernode/ShaderNode.js" {
41
+ interface NodeElements {
42
+ ao: typeof ao;
43
+ }
44
+ }
45
+
46
+ export default GTAONode;
@@ -1,4 +1,4 @@
1
- import { Vector2 } from "three";
1
+ import { Vector2 } from "../../math/Vector2.js";
2
2
  import TextureNode from "../accessors/TextureNode.js";
3
3
  import Node from "../core/Node.js";
4
4
  import TempNode from "../core/TempNode.js";
@@ -6,20 +6,23 @@ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.j
6
6
 
7
7
  export default class GaussianBlurNode extends TempNode {
8
8
  textureNode: TextureNode;
9
+ directionNode: Node | null;
9
10
  sigma: number;
10
11
 
11
- directionNode: Node;
12
-
13
12
  resolution: Vector2;
14
13
 
15
- constructor(textureNode: TextureNode, sigma?: number);
14
+ constructor(textureNode: TextureNode, directionNode?: Node | null, sigma?: number);
16
15
 
17
16
  setSize(width: number, height: number): void;
18
17
 
19
18
  getTextureNode(): TextureNode;
20
19
  }
21
20
 
22
- export const gaussianBlur: (node: NodeRepresentation, sigma?: number) => ShaderNodeObject<GaussianBlurNode>;
21
+ export const gaussianBlur: (
22
+ node: NodeRepresentation,
23
+ directionNode?: NodeRepresentation | null,
24
+ sigma?: number,
25
+ ) => ShaderNodeObject<GaussianBlurNode>;
23
26
 
24
27
  declare module "../shadernode/ShaderNode.js" {
25
28
  interface NodeElements {
@@ -0,0 +1,30 @@
1
+ import { Data3DTexture } from "../../textures/Data3DTexture.js";
2
+ import Texture3DNode from "../accessors/Texture3DNode.js";
3
+ import Node from "../core/Node.js";
4
+ import TempNode from "../core/TempNode.js";
5
+ import UniformNode from "../core/UniformNode.js";
6
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
7
+
8
+ declare class Lut3DNode extends TempNode {
9
+ inputNode: Node;
10
+ lutNode: Texture3DNode;
11
+ size: ShaderNodeObject<UniformNode<number>>;
12
+ intensityNode: UniformNode<number>;
13
+
14
+ constructor(inputNode: Node, lutNode: UniformNode<Data3DTexture>, size: number, intensityNode: UniformNode<number>);
15
+ }
16
+
17
+ export const lut3D: (
18
+ node: NodeRepresentation,
19
+ lut: NodeRepresentation,
20
+ size: number,
21
+ intensity: NodeRepresentation,
22
+ ) => ShaderNodeObject<Lut3DNode>;
23
+
24
+ declare module "../shadernode/ShaderNode.js" {
25
+ interface NodeElements {
26
+ lut3D: typeof lut3D;
27
+ }
28
+ }
29
+
30
+ export default Lut3DNode;
@@ -1,7 +1,6 @@
1
- import { NormalMapTypes } from "three";
1
+ import { NormalMapTypes } from "../../constants.js";
2
2
  import Node from "../core/Node.js";
3
3
  import TempNode from "../core/TempNode.js";
4
- import MathNode from "../math/MathNode.js";
5
4
  import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
6
5
 
7
6
  export default class NormalMapNode extends TempNode {
@@ -0,0 +1,62 @@
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { RenderTarget, RenderTargetOptions } from "../../core/RenderTarget.js";
3
+ import { Scene } from "../../scenes/Scene.js";
4
+ import { Texture } from "../../textures/Texture.js";
5
+ import TextureNode from "../accessors/TextureNode.js";
6
+ import MRTNode from "../core/MRTNode.js";
7
+ import Node from "../core/Node.js";
8
+ import TempNode from "../core/TempNode.js";
9
+ import { ShaderNodeObject } from "../shadernode/ShaderNode.js";
10
+
11
+ declare class PassTextureNode extends TextureNode {
12
+ passNode: PassNode;
13
+
14
+ constructor(passNode: PassNode, texture: Texture);
15
+ }
16
+
17
+ declare class PassMultipleTextureNode extends PassTextureNode {
18
+ textureName: string;
19
+
20
+ constructor(passNode: PassNode, textureName: string);
21
+ }
22
+
23
+ declare class PassNode extends TempNode {
24
+ scope: PassNodeScope;
25
+ scene: Scene;
26
+ camera: Camera;
27
+
28
+ renderTarget: RenderTarget;
29
+
30
+ readonly isPassNode: true;
31
+
32
+ constructor(scope: PassNodeScope, scene: Scene, camera: Camera, options?: RenderTargetOptions);
33
+
34
+ setMRT(mrt: MRTNode | null): this;
35
+
36
+ getMRT(): MRTNode | null;
37
+
38
+ getTexture(name: string): Texture;
39
+
40
+ getTextureNode(name?: string): ShaderNodeObject<Node>;
41
+
42
+ getViewZNode(name?: string): ShaderNodeObject<Node>;
43
+
44
+ getLinearDepthNode(name?: string): ShaderNodeObject<Node>;
45
+
46
+ setSize(width: number, height: number): void;
47
+
48
+ setPixelRatio(pixelRatio: number): void;
49
+
50
+ dispose(): void;
51
+
52
+ static COLOR: "color";
53
+ static DEPTH: "depth";
54
+ }
55
+
56
+ export type PassNodeScope = typeof PassNode.COLOR | typeof PassNode.DEPTH;
57
+
58
+ export default PassNode;
59
+
60
+ export const pass: (scene: Scene, camera: Camera, options?: RenderTargetOptions) => ShaderNodeObject<PassNode>;
61
+ export const passTexture: (pass: PassNode, texture: Texture) => ShaderNodeObject<PassTextureNode>;
62
+ export const depthPass: (scene: Scene, camera: Camera) => ShaderNodeObject<PassNode>;
@@ -0,0 +1,67 @@
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Scene } from "../../scenes/Scene.js";
3
+ import Node from "../core/Node.js";
4
+ import TempNode from "../core/TempNode.js";
5
+ import UniformNode from "../core/UniformNode.js";
6
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
7
+ import PassNode from "./PassNode.js";
8
+
9
+ declare class PixelationNode extends TempNode {
10
+ textureNode: Node;
11
+ depthNode: Node;
12
+ normalNode: Node;
13
+
14
+ pixelSize: Node;
15
+ normalEdgeStrength: Node;
16
+ depthEdgeStrength: Node;
17
+
18
+ constructor(
19
+ textureNode: Node,
20
+ depthNode: Node,
21
+ normalNode: Node,
22
+ pixelSize: Node,
23
+ normalEdgeStrength: Node,
24
+ depthEdgeStrength: Node,
25
+ );
26
+ }
27
+
28
+ declare const pixelation: (
29
+ node: NodeRepresentation,
30
+ depthNode: NodeRepresentation,
31
+ normalNode: NodeRepresentation,
32
+ pixelSize?: number,
33
+ normalEdgeStrength?: number,
34
+ depthEdgeStrength?: number,
35
+ ) => ShaderNodeObject<PixelationNode>;
36
+
37
+ declare module "../shadernode/ShaderNode.js" {
38
+ interface NodeElements {
39
+ pixelation: typeof pixelation;
40
+ }
41
+ }
42
+
43
+ declare class PixelationPassNode extends PassNode {
44
+ pixelSize: UniformNode<number>;
45
+ normalEdgeStrength: UniformNode<number>;
46
+ depthEdgeStrength: UniformNode<number>;
47
+
48
+ readonly isPixelationPassNode: true;
49
+
50
+ constructor(
51
+ scene: Scene,
52
+ camera: Camera,
53
+ pixelSize: number,
54
+ normalEdgeStrength: number,
55
+ depthEdgeStrength: number,
56
+ );
57
+ }
58
+
59
+ export const pixelationPass: (
60
+ scene: Scene,
61
+ camera: Camera,
62
+ pixelSize: UniformNode<number>,
63
+ normalEdgeStrength: UniformNode<number>,
64
+ depthEdgeStrength: UniformNode<number>,
65
+ ) => ShaderNodeObject<PixelationPassNode>;
66
+
67
+ export default PixelationPassNode;
@@ -0,0 +1,24 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import TempNode from "../core/TempNode.js";
3
+ import UniformNode from "../core/UniformNode.js";
4
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
5
+
6
+ export default class RGBShiftNode extends TempNode {
7
+ textureNode: TextureNode;
8
+ amount: UniformNode<number>;
9
+ angle: UniformNode<number>;
10
+
11
+ constructor(textureNode: TextureNode, amount?: number, angle?: number);
12
+
13
+ getTextureNode(): TextureNode;
14
+
15
+ setSize(width: number, height: number): void;
16
+ }
17
+
18
+ export const rgbShift: (node: NodeRepresentation, amount?: number, angle?: number) => ShaderNodeObject<RGBShiftNode>;
19
+
20
+ declare module "../shadernode/ShaderNode.js" {
21
+ interface NodeElements {
22
+ rgbShift: typeof rgbShift;
23
+ }
24
+ }
@@ -0,0 +1,28 @@
1
+ import { ColorSpace, ToneMapping } from "../../constants.js";
2
+ import Node from "../core/Node.js";
3
+ import TempNode from "../core/TempNode.js";
4
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
5
+
6
+ declare class RenderOutputNode extends TempNode {
7
+ colorNode: Node;
8
+ toneMapping: ToneMapping | null;
9
+ outputColorSpace: ColorSpace | null;
10
+
11
+ readonly isRenderOutput: true;
12
+
13
+ constructor(colorNode: Node, toneMapping?: ToneMapping | null, outputColorSpace?: ColorSpace | null);
14
+ }
15
+
16
+ export default RenderOutputNode;
17
+
18
+ export const renderOutput: (
19
+ color: NodeRepresentation,
20
+ toneMapping?: ToneMapping | null,
21
+ outputColorSpace?: ColorSpace | null,
22
+ ) => ShaderNodeObject<RenderOutputNode>;
23
+
24
+ declare module "../shadernode/ShaderNode.js" {
25
+ interface NodeElements {
26
+ renderOutput: typeof renderOutput;
27
+ }
28
+ }
@@ -0,0 +1,17 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import TempNode from "../core/TempNode.js";
3
+ import { NodeRepresentation, ShaderNodeObject } from "../shadernode/ShaderNode.js";
4
+
5
+ export default class SobelOperatorNode extends TempNode {
6
+ textureNode: TextureNode;
7
+
8
+ constructor(textureNode: TextureNode);
9
+ }
10
+
11
+ export const sobel: (node: NodeRepresentation) => ShaderNodeObject<SobelOperatorNode>;
12
+
13
+ declare module "../shadernode/ShaderNode.js" {
14
+ interface NodeElements {
15
+ sobel: typeof sobel;
16
+ }
17
+ }
@@ -1,4 +1,4 @@
1
- import { ToneMapping } from "three";
1
+ import { ToneMapping } from "../../constants.js";
2
2
  import RendererReferenceNode from "../accessors/RendererReferenceNode.js";
3
3
  import Node from "../core/Node.js";
4
4
  import TempNode from "../core/TempNode.js";