@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,15 +1,13 @@
1
- import {
2
- BufferAttribute,
3
- BufferGeometry,
4
- Camera,
5
- InterleavedBuffer,
6
- InterleavedBufferAttribute,
7
- Material,
8
- Object3D,
9
- Scene,
10
- } from "three";
11
- import LightsNode from "../../nodes/lighting/LightsNode.js";
12
- import Binding from "./Binding.js";
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { BufferAttribute } from "../../core/BufferAttribute.js";
3
+ import { BufferGeometry } from "../../core/BufferGeometry.js";
4
+ import { InterleavedBuffer } from "../../core/InterleavedBuffer.js";
5
+ import { InterleavedBufferAttribute } from "../../core/InterleavedBufferAttribute.js";
6
+ import { Object3D } from "../../core/Object3D.js";
7
+ import { Material } from "../../materials/Material.js";
8
+ import { LightsNode } from "../../nodes/Nodes.js";
9
+ import { Scene } from "../../scenes/Scene.js";
10
+ import BindGroup from "./BindGroup.js";
13
11
  import ClippingContext from "./ClippingContext.js";
14
12
  import Geometries from "./Geometries.js";
15
13
  import NodeBuilderState from "./nodes/NodeBuilderState.js";
@@ -42,7 +40,7 @@ export default class RenderObject {
42
40
  initialNodesCacheKey: string;
43
41
  initialCacheKey: string;
44
42
  _nodeBuilderState: NodeBuilderState | null;
45
- _bindings: Binding[] | null;
43
+ _bindings: BindGroup[] | null;
46
44
  onDispose: (() => void) | null;
47
45
  readonly isRenderObject: true;
48
46
  onMaterialDispose: () => void;
@@ -60,14 +58,19 @@ export default class RenderObject {
60
58
  updateClipping(parent: ClippingContext): void;
61
59
  get clippingNeedsUpdate(): boolean;
62
60
  getNodeBuilderState(): NodeBuilderState;
63
- getBindings(): Binding[];
61
+ getBindings(): BindGroup[];
64
62
  getIndex(): BufferAttribute | null;
65
- getChainArray(): readonly [Object3D<import("three").Object3DEventMap>, Material, RenderContext, LightsNode];
63
+ getChainArray(): readonly [
64
+ Object3D<import("../../core/Object3D.js").Object3DEventMap>,
65
+ Material,
66
+ RenderContext,
67
+ LightsNode,
68
+ ];
66
69
  getAttributes(): (InterleavedBufferAttribute | BufferAttribute)[];
67
70
  getVertexBuffers(): (InterleavedBuffer | BufferAttribute)[] | null;
68
71
  getMaterialCacheKey(): string;
69
72
  get needsUpdate(): boolean;
70
- getNodesCacheKey(): string;
73
+ getDynamicCacheKey(): string;
71
74
  getCacheKey(): string;
72
75
  dispose(): void;
73
76
  }
@@ -1,5 +1,8 @@
1
- import { Camera, Material, Object3D, Scene } from "three";
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { Object3D } from "../../core/Object3D.js";
3
+ import { Material } from "../../materials/Material.js";
2
4
  import LightsNode from "../../nodes/lighting/LightsNode.js";
5
+ import { Scene } from "../../scenes/Scene.js";
3
6
  import Bindings from "./Bindings.js";
4
7
  import ChainMap from "./ChainMap.js";
5
8
  import Geometries from "./Geometries.js";
@@ -39,7 +42,7 @@ declare class RenderObjects {
39
42
  getChainMap(
40
43
  passId?: string,
41
44
  ): ChainMap<
42
- readonly [Object3D<import("three").Object3DEventMap>, Material, RenderContext, LightsNode],
45
+ readonly [Object3D<import("../../core/Object3D.js").Object3DEventMap>, Material, RenderContext, LightsNode],
43
46
  RenderObject
44
47
  >;
45
48
  dispose(): void;
@@ -1,27 +1,19 @@
1
- /// <reference types="webxr" />
2
- import {
3
- Box2,
4
- BufferAttribute,
5
- BufferGeometry,
6
- Camera,
7
- Color,
8
- ColorSpace,
9
- FramebufferTexture,
10
- GeometryGroup,
11
- Material,
12
- Object3D,
13
- Plane,
14
- RenderTarget,
15
- Scene,
16
- ShadowMapType,
17
- Texture,
18
- ToneMapping,
19
- Vector2,
20
- Vector4,
21
- } from "three";
22
- import Node from "../../nodes/core/Node.js";
23
- import ComputeNode from "../../nodes/gpgpu/ComputeNode.js";
24
- import LightsNode from "../../nodes/lighting/LightsNode.js";
1
+ import { Camera } from "../../cameras/Camera.js";
2
+ import { ColorSpace, ShadowMapType, ToneMapping } from "../../constants.js";
3
+ import { BufferAttribute } from "../../core/BufferAttribute.js";
4
+ import { BufferGeometry, GeometryGroup } from "../../core/BufferGeometry.js";
5
+ import { Object3D } from "../../core/Object3D.js";
6
+ import { RenderTarget } from "../../core/RenderTarget.js";
7
+ import { Material } from "../../materials/Material.js";
8
+ import { Box2 } from "../../math/Box2.js";
9
+ import { Color } from "../../math/Color.js";
10
+ import { Plane } from "../../math/Plane.js";
11
+ import { Vector2 } from "../../math/Vector2.js";
12
+ import { Vector4 } from "../../math/Vector4.js";
13
+ import { ComputeNode, LightsNode, MRTNode } from "../../nodes/Nodes.js";
14
+ import { Scene } from "../../scenes/Scene.js";
15
+ import { FramebufferTexture } from "../../textures/FramebufferTexture.js";
16
+ import { Texture } from "../../textures/Texture.js";
25
17
  import Animation from "./Animation.js";
26
18
  import Attributes from "./Attributes.js";
27
19
  import Backend from "./Backend.js";
@@ -32,6 +24,7 @@ import Geometries from "./Geometries.js";
32
24
  import Info from "./Info.js";
33
25
  import Nodes from "./nodes/Nodes.js";
34
26
  import Pipelines from "./Pipelines.js";
27
+ import QuadMesh from "./QuadMesh.js";
35
28
  import RenderBundle from "./RenderBundle.js";
36
29
  import RenderBundles from "./RenderBundles.js";
37
30
  import RenderContext from "./RenderContext.js";
@@ -43,11 +36,14 @@ import Textures from "./Textures.js";
43
36
  export interface RendererParameters {
44
37
  logarithmicDepthBuffer?: boolean | undefined;
45
38
  alpha?: boolean | undefined;
39
+ antialias?: boolean | undefined;
40
+ samples?: number | undefined;
46
41
  }
47
42
  declare class Renderer {
48
43
  readonly isRenderer: true;
49
44
  domElement: HTMLCanvasElement;
50
45
  backend: Backend;
46
+ samples: number;
51
47
  autoClear: boolean;
52
48
  autoClearColor: boolean;
53
49
  autoClearDepth: boolean;
@@ -62,7 +58,6 @@ declare class Renderer {
62
58
  stencil: boolean;
63
59
  clippingPlanes: readonly Plane[];
64
60
  info: Info;
65
- toneMappingNode: Node | null;
66
61
  _pixelRatio: number;
67
62
  _width: number;
68
63
  _height: number;
@@ -81,6 +76,7 @@ declare class Renderer {
81
76
  _renderContexts: RenderContexts | null;
82
77
  _textures: Textures | null;
83
78
  _background: Background | null;
79
+ _quad: QuadMesh;
84
80
  _currentRenderContext: RenderContext | null;
85
81
  _opaqueSort: ((a: RenderItem, b: RenderItem) => number) | null;
86
82
  _transparentSort: ((a: RenderItem, b: RenderItem) => number) | null;
@@ -91,6 +87,7 @@ declare class Renderer {
91
87
  _renderTarget: RenderTarget | null;
92
88
  _activeCubeFace: number;
93
89
  _activeMipmapLevel: number;
90
+ _mrt: MRTNode | null;
94
91
  _renderObjectFunction:
95
92
  | ((
96
93
  object: Object3D,
@@ -126,6 +123,8 @@ declare class Renderer {
126
123
  _initialized: boolean;
127
124
  _initPromise: Promise<void> | null;
128
125
  _compilationPromises: Promise<void>[] | null;
126
+ transparent: boolean;
127
+ opaque: boolean;
129
128
  shadowMap: {
130
129
  enabled: boolean;
131
130
  type: ShadowMapType | null;
@@ -133,12 +132,25 @@ declare class Renderer {
133
132
  xr: {
134
133
  enabled: boolean;
135
134
  };
135
+ debug: {
136
+ checkShaderErrors: boolean;
137
+ onShaderError:
138
+ | ((
139
+ gl: WebGL2RenderingContext,
140
+ programGPU: WebGLProgram,
141
+ glVertexShader: WebGLShader,
142
+ glFragmentShader: WebGLShader,
143
+ ) => void)
144
+ | null;
145
+ };
136
146
  localClippingEnabled?: boolean | undefined;
137
147
  constructor(backend: Backend, parameters?: RendererParameters);
138
148
  init(): Promise<void>;
139
- get coordinateSystem(): import("three").CoordinateSystem;
149
+ get coordinateSystem(): import("../../constants.js").CoordinateSystem;
140
150
  compileAsync(scene: Scene, camera: Camera, targetScene?: Scene | null): Promise<void>;
141
151
  renderAsync(scene: Scene, camera: Camera): Promise<void>;
152
+ setMRT(mrt: MRTNode | null): this;
153
+ getMRT(): MRTNode | null;
142
154
  _renderBundle(bundle: Bundle, sceneRef: Scene, lightsNode: LightsNode): void;
143
155
  render(scene: Scene, camera: Camera): Promise<void> | undefined;
144
156
  _getFrameBufferTarget(): RenderTarget<Texture> | null;
@@ -201,10 +213,10 @@ declare class Renderer {
201
213
  ): void;
202
214
  getRenderObjectFunction():
203
215
  | ((
204
- object: Object3D<import("three").Object3DEventMap>,
216
+ object: Object3D,
205
217
  scene: Scene,
206
218
  camera: Camera,
207
- geometry: BufferGeometry<import("three").NormalBufferAttributes>,
219
+ geometry: BufferGeometry,
208
220
  material: Material,
209
221
  group: GeometryGroup,
210
222
  lightsNode: LightsNode,
@@ -228,7 +240,7 @@ declare class Renderer {
228
240
  width: number,
229
241
  height: number,
230
242
  index?: number,
231
- ): Promise<import("three").TypedArray>;
243
+ ): Promise<import("../../core/BufferAttribute.js").TypedArray>;
232
244
  _projectObject(object: Object3D, camera: Camera, groupOrder: number, renderList: RenderList): void;
233
245
  _renderBundles(bundles: Bundle[], sceneRef: Scene, lightsNode: LightsNode): void;
234
246
  _renderObjects(renderList: RenderItem[], camera: Camera, scene: Scene, lightsNode: LightsNode): void;
@@ -0,0 +1,27 @@
1
+ import { Texture } from "../../textures/Texture.js";
2
+ import Binding from "./Binding.js";
3
+
4
+ declare class SampledTexture extends Binding {
5
+ id: number;
6
+ texture: Texture | null;
7
+ version: number;
8
+ store: boolean;
9
+ readonly isSampledTexture: true;
10
+ constructor(name: string, texture: Texture | null);
11
+ get needsBindingsUpdate(): boolean;
12
+ update(): boolean;
13
+ }
14
+
15
+ declare class SampledArrayTexture extends SampledTexture {
16
+ readonly isSampledArrayTexture: true;
17
+ }
18
+
19
+ declare class Sampled3DTexture extends SampledTexture {
20
+ readonly isSampled3DTexture: true;
21
+ }
22
+
23
+ declare class SampledCubeTexture extends SampledTexture {
24
+ readonly isSampledCubeTexture: true;
25
+ }
26
+
27
+ export { Sampled3DTexture, SampledArrayTexture, SampledCubeTexture, SampledTexture };
@@ -0,0 +1,11 @@
1
+ import TextureNode from "../../nodes/accessors/TextureNode.js";
2
+ import Binding from "./Binding.js";
3
+
4
+ declare class Sampler extends Binding {
5
+ texture: TextureNode | null;
6
+ version: number;
7
+ readonly isSampler: true;
8
+ constructor(name: string, texture: TextureNode | null);
9
+ }
10
+
11
+ export default Sampler;
@@ -1,4 +1,4 @@
1
- import { BufferAttribute, TypedArray } from "three";
1
+ import { BufferAttribute, TypedArray } from "../../core/BufferAttribute.js";
2
2
 
3
3
  export default class StorageBufferAttribute extends BufferAttribute {
4
4
  readonly isStorageBufferAttribute: true;
@@ -1,4 +1,5 @@
1
- import { InstancedBufferAttribute, TypedArray } from "three";
1
+ import { TypedArray } from "../../core/BufferAttribute.js";
2
+ import { InstancedBufferAttribute } from "../../core/InstancedBufferAttribute.js";
2
3
 
3
4
  export default class StorageInstancedBufferAttribute extends InstancedBufferAttribute {
4
5
  readonly isStorageInstancedBufferAttribute: true;
@@ -1,4 +1,4 @@
1
- import { Texture } from "three";
1
+ import { Texture } from "../../textures/Texture.js";
2
2
 
3
3
  export default class StorageTexture extends Texture {
4
4
  constructor(width?: number, height?: number);
@@ -1,4 +1,7 @@
1
- import { DepthTexture, RenderTarget, Texture, Vector3 } from "three";
1
+ import { RenderTarget } from "../../core/RenderTarget.js";
2
+ import { Vector3 } from "../../math/Vector3.js";
3
+ import { DepthTexture } from "../../textures/DepthTexture.js";
4
+ import { Texture } from "../../textures/Texture.js";
2
5
  import Backend from "./Backend.js";
3
6
  import DataMap from "./DataMap.js";
4
7
  import Info from "./Info.js";
@@ -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
  declare class Uniform<TValue> {
3
8
  name: string;
4
9
  value: TValue;
@@ -9,8 +14,8 @@ declare class Uniform<TValue> {
9
14
  setValue(value: TValue): void;
10
15
  getValue(): TValue;
11
16
  }
12
- declare class FloatUniform extends Uniform<number> {
13
- readonly isFloatUniform: true;
17
+ declare class NumberUniform extends Uniform<number> {
18
+ readonly isNumberUniform: true;
14
19
  constructor(name: string, value?: number);
15
20
  }
16
21
  declare class Vector2Uniform extends Uniform<Vector2> {
@@ -37,4 +42,4 @@ declare class Matrix4Uniform extends Uniform<Matrix4> {
37
42
  readonly isMatrix4Uniform: true;
38
43
  constructor(name: string, value?: Matrix4);
39
44
  }
40
- export { ColorUniform, FloatUniform, Matrix3Uniform, Matrix4Uniform, Vector2Uniform, Vector3Uniform, Vector4Uniform };
45
+ export { ColorUniform, Matrix3Uniform, Matrix4Uniform, NumberUniform, Vector2Uniform, Vector3Uniform, Vector4Uniform };
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  ColorNodeUniform,
3
- FloatNodeUniform,
4
3
  Matrix3NodeUniform,
5
4
  Matrix4NodeUniform,
6
5
  NodeUniformGPU,
6
+ NumberNodeUniform,
7
7
  Vector2NodeUniform,
8
8
  Vector3NodeUniform,
9
9
  Vector4NodeUniform,
@@ -11,15 +11,17 @@ import {
11
11
  import UniformBuffer from "./UniformBuffer.js";
12
12
  declare class UniformsGroup extends UniformBuffer {
13
13
  readonly isUniformsGroup: true;
14
+ _values: number[] | null;
14
15
  uniforms: NodeUniformGPU[];
15
16
  constructor(name?: string);
16
17
  addUniform(uniform: NodeUniformGPU): this;
17
18
  removeUniform(uniform: NodeUniformGPU): this;
19
+ get values(): number[];
18
20
  get buffer(): Float32Array;
19
21
  get byteLength(): number;
20
22
  update(): boolean;
21
23
  updateByType(uniform: NodeUniformGPU): boolean | undefined;
22
- updateNumber(uniform: FloatNodeUniform): boolean;
24
+ updateNumber(uniform: NumberNodeUniform): boolean;
23
25
  updateVector2(uniform: Vector2NodeUniform): boolean;
24
26
  updateVector3(uniform: Vector3NodeUniform): boolean;
25
27
  updateVector4(uniform: Vector4NodeUniform): boolean;
@@ -1,4 +1,5 @@
1
- import { RenderTarget, Scene } from "three";
1
+ import { RenderTarget } from "../../../core/RenderTarget.js";
2
+ import { Scene } from "../../../scenes/Scene.js";
2
3
  import Renderer from "../Renderer.js";
3
4
 
4
5
  export default class PMREMGenerator {
@@ -1,26 +1,30 @@
1
1
  import Node from "../../../nodes/core/Node.js";
2
2
  import NodeAttribute from "../../../nodes/core/NodeAttribute.js";
3
- import Binding from "../Binding.js";
3
+ import BindGroup from "../BindGroup.js";
4
4
  declare class NodeBuilderState {
5
5
  vertexShader: string | null;
6
6
  fragmentShader: string | null;
7
7
  computeShader: string | null;
8
8
  transforms: never[];
9
9
  nodeAttributes: NodeAttribute[];
10
- bindings: Binding[];
10
+ bindings: BindGroup[];
11
11
  updateNodes: Node[];
12
12
  updateBeforeNodes: Node[];
13
+ updateAfterNodes: Node[];
14
+ instanceBindGroups: boolean;
13
15
  usedTimes: number;
14
16
  constructor(
15
17
  vertexShader: string | null,
16
18
  fragmentShader: string | null,
17
19
  computeShader: string | null,
18
20
  nodeAttributes: NodeAttribute[],
19
- bindings: Binding[],
21
+ bindings: BindGroup[],
20
22
  updateNodes: Node[],
21
23
  updateBeforeNodes: Node[],
24
+ updateAfterNodes: Node[],
25
+ instanceBindGroups?: boolean,
22
26
  transforms?: never[],
23
27
  );
24
- createBindings(): Binding[];
28
+ createBindings(): BindGroup[];
25
29
  }
26
30
  export default NodeBuilderState;
@@ -0,0 +1,29 @@
1
+ import TextureNode from "../../../nodes/accessors/TextureNode.js";
2
+ import UniformGroupNode from "../../../nodes/core/UniformGroupNode.js";
3
+ import { SampledTexture } from "../SampledTexture.js";
4
+
5
+ type GPUStorageTextureAccess = "read-only" | "read-write" | "write-only";
6
+
7
+ declare class NodeSampledTexture extends SampledTexture {
8
+ textureNode: TextureNode | undefined;
9
+ groupNode: UniformGroupNode;
10
+ access: "read-write" | "read-only" | "write-only";
11
+ constructor(
12
+ name: string,
13
+ textureNode: TextureNode | undefined,
14
+ groupNode: UniformGroupNode,
15
+ access: GPUStorageTextureAccess | null,
16
+ );
17
+ get needsBindingsUpdate(): boolean;
18
+ update(): boolean;
19
+ }
20
+
21
+ declare class NodeSampledCubeTexture extends NodeSampledTexture {
22
+ readonly isSampledCubeTexture: true;
23
+ }
24
+
25
+ declare class NodeSampledTexture3D extends NodeSampledTexture {
26
+ readonly isSampledTexture3D = true;
27
+ }
28
+
29
+ export { NodeSampledCubeTexture, NodeSampledTexture, NodeSampledTexture3D };
@@ -0,0 +1,12 @@
1
+ import TextureNode from "../../../nodes/accessors/TextureNode.js";
2
+ import UniformGroupNode from "../../../nodes/core/UniformGroupNode.js";
3
+ import Sampler from "../Sampler.js";
4
+
5
+ declare class NodeSampler extends Sampler {
6
+ textureNode: TextureNode | undefined;
7
+ groupNode: UniformGroupNode;
8
+ constructor(name: string, textureNode: TextureNode | undefined, groupNode: UniformGroupNode);
9
+ update(): void;
10
+ }
11
+
12
+ export default NodeSampler;
@@ -1,15 +1,20 @@
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 NodeUniform from "../../../nodes/core/NodeUniform.js";
3
8
  import {
4
9
  ColorUniform,
5
- FloatUniform,
6
10
  Matrix3Uniform,
7
11
  Matrix4Uniform,
12
+ NumberUniform,
8
13
  Vector2Uniform,
9
14
  Vector3Uniform,
10
15
  Vector4Uniform,
11
16
  } from "../Uniform.js";
12
- declare class FloatNodeUniform extends FloatUniform {
17
+ declare class NumberNodeUniform extends NumberUniform {
13
18
  nodeUniform: NodeUniform<number>;
14
19
  constructor(nodeUniform: NodeUniform<number>);
15
20
  getValue(): number;
@@ -46,15 +51,15 @@ declare class Matrix4NodeUniform extends Matrix4Uniform {
46
51
  }
47
52
  export {
48
53
  ColorNodeUniform,
49
- FloatNodeUniform,
50
54
  Matrix3NodeUniform,
51
55
  Matrix4NodeUniform,
56
+ NumberNodeUniform,
52
57
  Vector2NodeUniform,
53
58
  Vector3NodeUniform,
54
59
  Vector4NodeUniform,
55
60
  };
56
61
  export type NodeUniformGPU =
57
- | FloatNodeUniform
62
+ | NumberNodeUniform
58
63
  | Vector2NodeUniform
59
64
  | Vector3NodeUniform
60
65
  | Vector4NodeUniform
@@ -1,12 +1,10 @@
1
- import UniformGroupNode from "../../../nodes/core/UniformGroupNode.js";
2
- import UniformNode from "../../../nodes/core/UniformNode.js";
1
+ import { UniformGroupNode, UniformNode } from "../../../nodes/Nodes.js";
3
2
  import UniformsGroup from "../UniformsGroup.js";
4
3
  declare class NodeUniformsGroup extends UniformsGroup {
5
4
  id: number;
6
5
  groupNode: UniformGroupNode;
7
6
  readonly isNodeUniformsGroup: true;
8
7
  constructor(name: string, groupNode: UniformGroupNode);
9
- get shared(): boolean;
10
8
  getNodes(): UniformNode<unknown>[];
11
9
  }
12
10
  export default NodeUniformsGroup;
@@ -1,10 +1,21 @@
1
- import { Camera, Color, CubeTexture, FogBase, Material, Object3D, Scene, Texture } from "three";
2
- import Node from "../../../nodes/core/Node.js";
3
- import NodeBuilder from "../../../nodes/core/NodeBuilder.js";
4
- import UniformGroupNode from "../../../nodes/core/UniformGroupNode.js";
5
- import ComputeNode from "../../../nodes/gpgpu/ComputeNode.js";
6
- import LightsNode from "../../../nodes/lighting/LightsNode.js";
7
- import { NodeFrame, ShaderNodeObject } from "../../../nodes/Nodes.js";
1
+ import { Camera } from "../../../cameras/Camera.js";
2
+ import { Object3D } from "../../../core/Object3D.js";
3
+ import { Material } from "../../../materials/Material.js";
4
+ import { Color } from "../../../math/Color.js";
5
+ import {
6
+ ComputeNode,
7
+ LightsNode,
8
+ Node,
9
+ NodeBuilder,
10
+ NodeFrame,
11
+ ShaderNodeObject,
12
+ UniformGroupNode,
13
+ } from "../../../nodes/Nodes.js";
14
+ import { Fog } from "../../../scenes/Fog.js";
15
+ import { FogExp2 } from "../../../scenes/FogExp2.js";
16
+ import { Scene } from "../../../scenes/Scene.js";
17
+ import { CubeTexture } from "../../../textures/CubeTexture.js";
18
+ import { Texture } from "../../../textures/Texture.js";
8
19
  import Backend from "../Backend.js";
9
20
  import ChainMap from "../ChainMap.js";
10
21
  import DataMap from "../DataMap.js";
@@ -25,7 +36,7 @@ interface ComputeNodeData {
25
36
  interface SceneData {
26
37
  background?: Color | Texture | CubeTexture | undefined;
27
38
  backgroundNode?: Node | undefined;
28
- fog?: FogBase | undefined;
39
+ fog?: Fog | FogExp2 | undefined;
29
40
  fogNode?: Node | undefined;
30
41
  environment?: Texture | undefined;
31
42
  environmentNode?: Node | undefined;
@@ -85,8 +96,11 @@ declare class Nodes extends DataMap<{
85
96
  material?: Material | null,
86
97
  ): NodeFrame;
87
98
  getNodeFrameForRender(renderObject: RenderObject): NodeFrame;
99
+ getOutputCacheKey(): string;
100
+ hasOutputChange(outputTarget: Texture): boolean;
88
101
  getOutputNode(outputTexture: Texture): ShaderNodeObject<Node>;
89
102
  updateBefore(renderObject: RenderObject): void;
103
+ updateAfter(renderObject: RenderObject): void;
90
104
  updateForCompute(computeNode: ComputeNode): void;
91
105
  updateForRender(renderObject: RenderObject): void;
92
106
  dispose(): void;
@@ -6,7 +6,7 @@ export interface ShaderLibShader {
6
6
  fragmentShader: string;
7
7
  }
8
8
 
9
- export let ShaderLib: {
9
+ declare const ShaderLib: {
10
10
  [name: string]: ShaderLibShader;
11
11
  basic: ShaderLibShader;
12
12
  lambert: ShaderLibShader;
@@ -25,3 +25,5 @@ export let ShaderLib: {
25
25
  shadow: ShaderLibShader;
26
26
  physical: ShaderLibShader;
27
27
  };
28
+
29
+ export { ShaderLib };
@@ -89,6 +89,7 @@ export const UniformsLib: {
89
89
  directionalLightShadows: {
90
90
  value: unknown[];
91
91
  properties: {
92
+ shadowIntensity: number;
92
93
  shadowBias: {};
93
94
  shadowNormalBias: {};
94
95
  shadowRadius: {};
@@ -112,6 +113,7 @@ export const UniformsLib: {
112
113
  spotLightShadows: {
113
114
  value: unknown[];
114
115
  properties: {
116
+ shadowIntensity: number;
115
117
  shadowBias: {};
116
118
  shadowNormalBias: {};
117
119
  shadowRadius: {};
@@ -133,6 +135,7 @@ export const UniformsLib: {
133
135
  pointLightShadows: {
134
136
  value: unknown[];
135
137
  properties: {
138
+ shadowIntensity: number;
136
139
  shadowBias: {};
137
140
  shadowNormalBias: {};
138
141
  shadowRadius: {};
@@ -6,6 +6,9 @@ export function mergeUniforms(uniforms: Array<{ [uniform: string]: IUniform }>):
6
6
 
7
7
  export function cloneUniformsGroups(src: UniformsGroup[]): UniformsGroup[];
8
8
 
9
- export namespace UniformsUtils {
10
- export { cloneUniforms as clone, mergeUniforms as merge };
11
- }
9
+ declare const UniformsUtils: {
10
+ clone: typeof cloneUniforms;
11
+ merge: typeof mergeUniforms;
12
+ };
13
+
14
+ export { UniformsUtils };
@@ -1,4 +1,4 @@
1
- import { CoordinateSystem } from "three";
1
+ import { CoordinateSystem } from "../../constants.js";
2
2
  import Backend, { BackendParameters } from "../common/Backend.js";
3
3
 
4
4
  export interface WebGLBackendParameters extends BackendParameters {
@@ -1,4 +1,4 @@
1
- import { CoordinateSystem } from "three";
1
+ import { CoordinateSystem } from "../../constants.js";
2
2
  import Backend, { BackendParameters } from "../common/Backend.js";
3
3
 
4
4
  export interface WebGPUBackendParameters extends BackendParameters {