@types/three 0.180.0 → 0.182.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 (313) hide show
  1. three/README.md +1 -1
  2. three/examples/jsm/controls/ArcballControls.d.ts +1 -1
  3. three/examples/jsm/controls/DragControls.d.ts +1 -1
  4. three/examples/jsm/controls/FirstPersonControls.d.ts +1 -1
  5. three/examples/jsm/controls/FlyControls.d.ts +1 -1
  6. three/examples/jsm/controls/OrbitControls.d.ts +1 -1
  7. three/examples/jsm/controls/PointerLockControls.d.ts +1 -1
  8. three/examples/jsm/controls/TrackballControls.d.ts +1 -1
  9. three/examples/jsm/controls/TransformControls.d.ts +1 -1
  10. three/examples/jsm/geometries/TextGeometry.d.ts +2 -0
  11. three/examples/jsm/gpgpu/BitonicSort.d.ts +21 -0
  12. three/examples/jsm/inspector/Inspector.d.ts +10 -0
  13. three/examples/jsm/inspector/RendererInspector.d.ts +4 -0
  14. three/examples/jsm/inspector/tabs/Parameters.d.ts +95 -0
  15. three/examples/jsm/inspector/ui/Tab.d.ts +3 -0
  16. three/examples/jsm/inspector/ui/Values.d.ts +80 -0
  17. three/examples/jsm/interactive/SelectionBox.d.ts +9 -9
  18. three/examples/jsm/lighting/TiledLighting.d.ts +1 -2
  19. three/examples/jsm/loaders/FontLoader.d.ts +1 -1
  20. three/examples/jsm/loaders/KTX2Loader.d.ts +3 -0
  21. three/examples/jsm/loaders/UltraHDRLoader.d.ts +7 -0
  22. three/examples/jsm/loaders/VOXLoader.d.ts +22 -5
  23. three/examples/jsm/math/Octree.d.ts +36 -14
  24. three/examples/jsm/objects/SkyMesh.d.ts +11 -7
  25. three/examples/jsm/objects/WaterMesh.d.ts +2 -2
  26. three/examples/jsm/physics/AmmoPhysics.d.ts +1 -1
  27. three/examples/jsm/postprocessing/OutputPass.d.ts +10 -6
  28. three/examples/jsm/postprocessing/RenderPass.d.ts +15 -10
  29. three/examples/jsm/renderers/CSS2DRenderer.d.ts +15 -10
  30. three/examples/jsm/transpiler/AST.d.ts +17 -0
  31. three/examples/jsm/transpiler/TSLEncoder.d.ts +2 -0
  32. three/examples/jsm/tsl/display/AfterImageNode.d.ts +4 -5
  33. three/examples/jsm/tsl/display/AnaglyphPassNode.d.ts +1 -2
  34. three/examples/jsm/tsl/display/AnamorphicNode.d.ts +1 -2
  35. three/examples/jsm/tsl/display/BleachBypass.d.ts +1 -2
  36. three/examples/jsm/tsl/display/BloomNode.d.ts +2 -3
  37. three/examples/jsm/tsl/display/ChromaticAberrationNode.d.ts +1 -2
  38. three/examples/jsm/tsl/display/DenoiseNode.d.ts +1 -2
  39. three/examples/jsm/tsl/display/DepthOfFieldNode.d.ts +1 -2
  40. three/examples/jsm/tsl/display/DotScreenNode.d.ts +1 -2
  41. three/examples/jsm/tsl/display/FXAANode.d.ts +1 -2
  42. three/examples/jsm/tsl/display/FilmNode.d.ts +1 -2
  43. three/examples/jsm/tsl/display/GTAONode.d.ts +11 -10
  44. three/examples/jsm/tsl/display/GaussianBlurNode.d.ts +2 -3
  45. three/examples/jsm/tsl/display/LensflareNode.d.ts +6 -7
  46. three/examples/jsm/tsl/display/Lut3DNode.d.ts +2 -3
  47. three/examples/jsm/tsl/display/MotionBlur.d.ts +1 -2
  48. three/examples/jsm/tsl/display/OutlineNode.d.ts +6 -7
  49. three/examples/jsm/tsl/display/ParallaxBarrierPassNode.d.ts +1 -2
  50. three/examples/jsm/tsl/display/PixelationPassNode.d.ts +1 -2
  51. three/examples/jsm/tsl/display/RGBShiftNode.d.ts +1 -2
  52. three/examples/jsm/tsl/display/SMAANode.d.ts +1 -2
  53. three/examples/jsm/tsl/display/SSAAPassNode.d.ts +1 -2
  54. three/examples/jsm/tsl/display/SSGINode.d.ts +30 -0
  55. three/examples/jsm/tsl/display/SSRNode.d.ts +12 -13
  56. three/examples/jsm/tsl/display/SSSNode.d.ts +20 -0
  57. three/examples/jsm/tsl/display/Sepia.d.ts +1 -2
  58. three/examples/jsm/tsl/display/SobelOperatorNode.d.ts +1 -2
  59. three/examples/jsm/tsl/display/StereoPassNode.d.ts +1 -2
  60. three/examples/jsm/tsl/display/TRAANode.d.ts +6 -2
  61. three/examples/jsm/tsl/display/TransitionNode.d.ts +1 -2
  62. three/examples/jsm/tsl/display/boxBlur.d.ts +1 -2
  63. three/examples/jsm/tsl/display/hashBlur.d.ts +1 -2
  64. three/examples/jsm/tsl/display/radialBlur.d.ts +12 -0
  65. three/examples/jsm/tsl/lighting/TiledLightsNode.d.ts +3 -4
  66. three/examples/jsm/tsl/math/Bayer.d.ts +1 -2
  67. three/examples/jsm/tsl/utils/Raymarching.d.ts +2 -3
  68. three/package.json +3 -3
  69. three/src/Three.Core.d.ts +1 -1
  70. three/src/Three.TSL.d.ts +21 -3
  71. three/src/Three.WebGPU.Nodes.d.ts +2 -0
  72. three/src/Three.WebGPU.d.ts +2 -0
  73. three/src/animation/AnimationMixer.d.ts +45 -3
  74. three/src/animation/AnimationUtils.d.ts +3 -8
  75. three/src/constants.d.ts +14 -0
  76. three/src/core/BufferGeometry.d.ts +3 -1
  77. three/src/extras/Controls.d.ts +3 -3
  78. three/src/lights/DirectionalLight.d.ts +10 -3
  79. three/src/lights/HemisphereLight.d.ts +8 -1
  80. three/src/lights/Light.d.ts +8 -12
  81. three/src/lights/LightProbe.d.ts +7 -3
  82. three/src/lights/PointLight.d.ts +12 -1
  83. three/src/lights/PointLightShadow.d.ts +1 -8
  84. three/src/lights/SpotLight.d.ts +17 -2
  85. three/src/loaders/ObjectLoader.d.ts +3 -3
  86. three/src/loaders/TextureLoader.d.ts +3 -3
  87. three/src/materials/Material.d.ts +3 -2
  88. three/src/materials/MeshLambertMaterial.d.ts +1 -1
  89. three/src/materials/MeshMatcapMaterial.d.ts +14 -0
  90. three/src/materials/MeshPhongMaterial.d.ts +1 -1
  91. three/src/materials/MeshPhysicalMaterial.d.ts +1 -1
  92. three/src/materials/MeshStandardMaterial.d.ts +7 -7
  93. three/src/materials/PointsMaterial.d.ts +1 -1
  94. three/src/materials/ShaderMaterial.d.ts +26 -11
  95. three/src/materials/nodes/MeshSSSNodeMaterial.d.ts +1 -1
  96. three/src/materials/nodes/NodeMaterial.d.ts +9 -3
  97. three/src/materials/nodes/VolumeNodeMaterial.d.ts +1 -2
  98. three/src/math/Vector3.d.ts +2 -2
  99. three/src/nodes/Nodes.d.ts +1 -1
  100. three/src/nodes/TSL.d.ts +5 -2
  101. three/src/nodes/accessors/AccessorsUtils.d.ts +4 -5
  102. three/src/nodes/accessors/Arrays.d.ts +2 -3
  103. three/src/nodes/accessors/BatchNode.d.ts +1 -2
  104. three/src/nodes/accessors/Bitangent.d.ts +4 -5
  105. three/src/nodes/accessors/BufferAttributeNode.d.ts +17 -17
  106. three/src/nodes/accessors/BufferNode.d.ts +2 -2
  107. three/src/nodes/accessors/BuiltinNode.d.ts +1 -2
  108. three/src/nodes/accessors/Camera.d.ts +10 -11
  109. three/src/nodes/accessors/ClippingNode.d.ts +3 -6
  110. three/src/nodes/accessors/CubeTextureNode.d.ts +8 -9
  111. three/src/nodes/accessors/InstanceNode.d.ts +8 -8
  112. three/src/nodes/accessors/InstancedMeshNode.d.ts +1 -2
  113. three/src/nodes/accessors/Lights.d.ts +6 -7
  114. three/src/nodes/accessors/MaterialNode.d.ts +38 -39
  115. three/src/nodes/accessors/MaterialProperties.d.ts +3 -4
  116. three/src/nodes/accessors/MaterialReferenceNode.d.ts +2 -2
  117. three/src/nodes/accessors/ModelNode.d.ts +12 -13
  118. three/src/nodes/accessors/ModelViewProjectionNode.d.ts +1 -2
  119. three/src/nodes/accessors/MorphNode.d.ts +1 -2
  120. three/src/nodes/accessors/Normal.d.ts +13 -14
  121. three/src/nodes/accessors/Object3DNode.d.ts +6 -7
  122. three/src/nodes/accessors/PointUVNode.d.ts +1 -2
  123. three/src/nodes/accessors/Position.d.ts +7 -8
  124. three/src/nodes/accessors/ReferenceBaseNode.d.ts +2 -3
  125. three/src/nodes/accessors/ReferenceNode.d.ts +2 -3
  126. three/src/nodes/accessors/ReflectVector.d.ts +4 -5
  127. three/src/nodes/accessors/RendererReferenceNode.d.ts +1 -2
  128. three/src/nodes/accessors/SceneNode.d.ts +3 -4
  129. three/src/nodes/accessors/SkinningNode.d.ts +5 -6
  130. three/src/nodes/accessors/StorageBufferNode.d.ts +5 -5
  131. three/src/nodes/accessors/StorageTextureNode.d.ts +7 -4
  132. three/src/nodes/accessors/Tangent.d.ts +4 -6
  133. three/src/nodes/accessors/TangentUtils.d.ts +2 -3
  134. three/src/nodes/accessors/Texture3DNode.d.ts +15 -4
  135. three/src/nodes/accessors/TextureBicubic.d.ts +2 -3
  136. three/src/nodes/accessors/TextureNode.d.ts +29 -24
  137. three/src/nodes/accessors/TextureSizeNode.d.ts +1 -2
  138. three/src/nodes/accessors/UV.d.ts +1 -2
  139. three/src/nodes/accessors/UniformArrayNode.d.ts +2 -3
  140. three/src/nodes/accessors/UserDataNode.d.ts +1 -2
  141. three/src/nodes/accessors/VelocityNode.d.ts +1 -2
  142. three/src/nodes/accessors/VertexColorNode.d.ts +1 -2
  143. three/src/nodes/code/CodeNode.d.ts +4 -5
  144. three/src/nodes/code/ExpressionNode.d.ts +1 -2
  145. three/src/nodes/code/FunctionCallNode.d.ts +6 -5
  146. three/src/nodes/code/FunctionNode.d.ts +4 -6
  147. three/src/nodes/code/ScriptableNode.d.ts +1 -2
  148. three/src/nodes/code/ScriptableValueNode.d.ts +1 -2
  149. three/src/nodes/core/ArrayNode.d.ts +6 -6
  150. three/src/nodes/core/AssignNode.d.ts +1 -8
  151. three/src/nodes/core/AttributeNode.d.ts +1 -2
  152. three/src/nodes/core/BypassNode.d.ts +5 -5
  153. three/src/nodes/core/ContextNode.d.ts +42 -14
  154. three/src/nodes/core/IndexNode.d.ts +10 -7
  155. three/src/nodes/core/InspectorNode.d.ts +16 -0
  156. three/src/nodes/core/IsolateNode.d.ts +36 -0
  157. three/src/nodes/core/MRTNode.d.ts +3 -4
  158. three/src/nodes/core/Node.d.ts +18 -2
  159. three/src/nodes/core/NodeUtils.d.ts +1 -11
  160. three/src/nodes/core/OutputStructNode.d.ts +1 -2
  161. three/src/nodes/core/ParameterNode.d.ts +1 -2
  162. three/src/nodes/core/PropertyNode.d.ts +32 -31
  163. three/src/nodes/core/StackNode.d.ts +1 -4
  164. three/src/nodes/core/StructNode.d.ts +3 -4
  165. three/src/nodes/core/SubBuildNode.d.ts +1 -2
  166. three/src/nodes/core/UniformNode.d.ts +3 -6
  167. three/src/nodes/core/VarNode.d.ts +12 -8
  168. three/src/nodes/core/VaryingNode.d.ts +12 -10
  169. three/src/nodes/display/BlendModes.d.ts +11 -12
  170. three/src/nodes/display/BumpMapNode.d.ts +1 -2
  171. three/src/nodes/display/ColorAdjustment.d.ts +7 -8
  172. three/src/nodes/display/ColorSpaceFunctions.d.ts +2 -3
  173. three/src/nodes/display/ColorSpaceNode.d.ts +19 -9
  174. three/src/nodes/display/FrontFacingNode.d.ts +3 -4
  175. three/src/nodes/display/NormalMapNode.d.ts +4 -3
  176. three/src/nodes/display/PassNode.d.ts +28 -11
  177. three/src/nodes/display/PosterizeNode.d.ts +1 -2
  178. three/src/nodes/display/RenderOutputNode.d.ts +11 -6
  179. three/src/nodes/display/ScreenNode.d.ts +9 -10
  180. three/src/nodes/display/ToneMappingFunctions.d.ts +6 -7
  181. three/src/nodes/display/ToneMappingNode.d.ts +9 -8
  182. three/src/nodes/display/ToonOutlinePassNode.d.ts +1 -2
  183. three/src/nodes/display/ViewportDepthNode.d.ts +3 -4
  184. three/src/nodes/display/ViewportDepthTextureNode.d.ts +1 -2
  185. three/src/nodes/display/ViewportSharedTextureNode.d.ts +1 -2
  186. three/src/nodes/display/ViewportTextureNode.d.ts +2 -3
  187. three/src/nodes/fog/Fog.d.ts +5 -6
  188. three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +4 -5
  189. three/src/nodes/functions/BSDF/BRDF_GGX_Multiscatter.d.ts +14 -0
  190. three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +1 -2
  191. three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +1 -2
  192. three/src/nodes/functions/BSDF/DFGLUT.d.ts +12 -0
  193. three/src/nodes/functions/BSDF/D_GGX.d.ts +1 -2
  194. three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +1 -2
  195. three/src/nodes/functions/BSDF/F_Schlick.d.ts +1 -2
  196. three/src/nodes/functions/BSDF/Schlick_to_F0.d.ts +1 -2
  197. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +1 -2
  198. three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +1 -2
  199. three/src/nodes/functions/PhysicalLightingModel.d.ts +8 -1
  200. three/src/nodes/functions/ShadowMaskModel.d.ts +1 -2
  201. three/src/nodes/functions/material/getAlphaHashThreshold.d.ts +1 -2
  202. three/src/nodes/functions/material/getGeometryRoughness.d.ts +1 -2
  203. three/src/nodes/functions/material/getParallaxCorrectNormal.d.ts +1 -2
  204. three/src/nodes/functions/material/getRoughness.d.ts +1 -2
  205. three/src/nodes/functions/material/getShIrradianceAt.d.ts +1 -2
  206. three/src/nodes/geometry/RangeNode.d.ts +1 -2
  207. three/src/nodes/gpgpu/AtomicFunctionNode.d.ts +10 -11
  208. three/src/nodes/gpgpu/BarrierNode.d.ts +3 -4
  209. three/src/nodes/gpgpu/ComputeBuiltinNode.d.ts +5 -6
  210. three/src/nodes/gpgpu/ComputeNode.d.ts +21 -13
  211. three/src/nodes/gpgpu/SubgroupFunctionNode.d.ts +25 -26
  212. three/src/nodes/gpgpu/WorkgroupInfoNode.d.ts +1 -2
  213. three/src/nodes/lighting/AnalyticLightNode.d.ts +3 -2
  214. three/src/nodes/lighting/LightUtils.d.ts +1 -2
  215. three/src/nodes/lighting/LightingContextNode.d.ts +1 -2
  216. three/src/nodes/lighting/LightsNode.d.ts +1 -2
  217. three/src/nodes/lighting/PointLightNode.d.ts +5 -6
  218. three/src/nodes/lighting/PointShadowNode.d.ts +12 -17
  219. three/src/nodes/lighting/ShadowBaseNode.d.ts +1 -2
  220. three/src/nodes/lighting/ShadowFilterNode.d.ts +6 -5
  221. three/src/nodes/lighting/ShadowNode.d.ts +1 -2
  222. three/src/nodes/lighting/SpotLightNode.d.ts +1 -2
  223. three/src/nodes/materialx/MaterialXNodes.d.ts +41 -42
  224. three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -3
  225. three/src/nodes/materialx/lib/mx_noise.d.ts +73 -74
  226. three/src/nodes/materialx/lib/mx_transform_color.d.ts +1 -2
  227. three/src/nodes/math/BitcastNode.d.ts +5 -6
  228. three/src/nodes/math/BitcountNode.d.ts +21 -0
  229. three/src/nodes/math/ConditionalNode.d.ts +11 -5
  230. three/src/nodes/math/Hash.d.ts +1 -2
  231. three/src/nodes/math/MathNode.d.ts +223 -77
  232. three/src/nodes/math/OperatorNode.d.ts +203 -59
  233. three/src/nodes/math/PackFloatNode.d.ts +19 -0
  234. three/src/nodes/math/TriNoise3D.d.ts +3 -4
  235. three/src/nodes/math/UnpackFloatNode.d.ts +18 -0
  236. three/src/nodes/pmrem/PMREMNode.d.ts +1 -2
  237. three/src/nodes/pmrem/PMREMUtils.d.ts +3 -4
  238. three/src/nodes/procedural/Checker.d.ts +1 -2
  239. three/src/nodes/shapes/Shapes.d.ts +1 -2
  240. three/src/nodes/tsl/TSLBase.d.ts +2 -1
  241. three/src/nodes/tsl/TSLCore.d.ts +235 -128
  242. three/src/nodes/utils/CubeMapNode.d.ts +1 -2
  243. three/src/nodes/utils/DebugNode.d.ts +9 -5
  244. three/src/nodes/utils/Discard.d.ts +6 -6
  245. three/src/nodes/utils/EquirectUV.d.ts +1 -2
  246. three/src/nodes/utils/EventNode.d.ts +8 -3
  247. three/src/nodes/utils/FunctionOverloadingNode.d.ts +1 -2
  248. three/src/nodes/utils/LoopNode.d.ts +7 -6
  249. three/src/nodes/utils/MatcapUV.d.ts +1 -2
  250. three/src/nodes/utils/MaxMipLevelNode.d.ts +1 -2
  251. three/src/nodes/utils/Oscillators.d.ts +4 -5
  252. three/src/nodes/utils/Packing.d.ts +3 -3
  253. three/src/nodes/utils/PostProcessingUtils.d.ts +7 -4
  254. three/src/nodes/utils/RTTNode.d.ts +2 -3
  255. three/src/nodes/utils/ReflectorNode.d.ts +2 -3
  256. three/src/nodes/utils/RemapNode.d.ts +29 -7
  257. three/src/nodes/utils/RotateNode.d.ts +1 -2
  258. three/src/nodes/utils/SampleNode.d.ts +1 -2
  259. three/src/nodes/utils/SpriteSheetUVNode.d.ts +1 -2
  260. three/src/nodes/utils/SpriteUtils.d.ts +1 -2
  261. three/src/nodes/utils/StorageArrayElementNode.d.ts +1 -2
  262. three/src/nodes/utils/Timer.d.ts +3 -4
  263. three/src/nodes/utils/TriplanarTextures.d.ts +2 -3
  264. three/src/nodes/utils/UVUtils.d.ts +5 -3
  265. three/src/nodes/utils/ViewportUtils.d.ts +1 -2
  266. three/src/objects/LOD.d.ts +1 -1
  267. three/src/objects/Skeleton.d.ts +4 -2
  268. three/src/renderers/WebGLRenderer.d.ts +22 -4
  269. three/src/renderers/common/Animation.d.ts +4 -1
  270. three/src/renderers/common/Binding.d.ts +6 -0
  271. three/src/renderers/common/Bindings.d.ts +12 -0
  272. three/src/renderers/common/Buffer.d.ts +24 -0
  273. three/src/renderers/common/CanvasTarget.d.ts +142 -0
  274. three/src/renderers/common/ChainMap.d.ts +8 -1
  275. three/src/renderers/common/Geometries.d.ts +8 -0
  276. three/src/renderers/common/InspectorBase.d.ts +105 -0
  277. three/src/renderers/common/PostProcessing.d.ts +3 -0
  278. three/src/renderers/common/QuadMesh.d.ts +3 -0
  279. three/src/renderers/common/RenderContexts.d.ts +6 -2
  280. three/src/renderers/common/RenderObject.d.ts +6 -0
  281. three/src/renderers/common/Renderer.d.ts +145 -46
  282. three/src/renderers/common/SampledTexture.d.ts +2 -0
  283. three/src/renderers/common/Sampler.d.ts +2 -0
  284. three/src/renderers/common/Textures.d.ts +20 -0
  285. three/src/renderers/common/TimestampQueryPool.d.ts +24 -1
  286. three/src/renderers/common/UniformsGroup.d.ts +1 -0
  287. three/src/renderers/common/extras/PMREMGenerator.d.ts +19 -1
  288. three/src/renderers/common/nodes/NodeLibrary.d.ts +3 -7
  289. three/src/renderers/common/nodes/Nodes.d.ts +13 -14
  290. three/src/renderers/shaders/ShaderLib.d.ts +1 -1
  291. three/src/renderers/webgl/WebGLCapabilities.d.ts +2 -2
  292. three/src/renderers/webgl/WebGLPrograms.d.ts +0 -1
  293. three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +5 -0
  294. three/src/scenes/Scene.d.ts +2 -2
  295. three/src/textures/CanvasTexture.d.ts +3 -3
  296. three/src/textures/CompressedArrayTexture.d.ts +6 -9
  297. three/src/textures/CompressedCubeTexture.d.ts +3 -3
  298. three/src/textures/CompressedTexture.d.ts +6 -8
  299. three/src/textures/CubeDepthTexture.d.ts +41 -0
  300. three/src/textures/CubeTexture.d.ts +4 -11
  301. three/src/textures/Data3DTexture.d.ts +5 -10
  302. three/src/textures/DataArrayTexture.d.ts +10 -10
  303. three/src/textures/DataTexture.d.ts +4 -11
  304. three/src/textures/DepthTexture.d.ts +7 -8
  305. three/src/textures/ExternalTexture.d.ts +3 -1
  306. three/src/textures/FramebufferTexture.d.ts +6 -1
  307. three/src/textures/Source.d.ts +3 -3
  308. three/src/textures/Texture.d.ts +8 -8
  309. three/src/textures/VideoFrameTexture.d.ts +1 -1
  310. three/src/textures/VideoTexture.d.ts +2 -2
  311. three/src/utils.d.ts +30 -2
  312. three/src/nodes/core/CacheNode.d.ts +0 -21
  313. three/src/nodes/functions/BSDF/DFGApprox.d.ts +0 -11
@@ -41,6 +41,7 @@ export type Statement =
41
41
  | While
42
42
  | Switch
43
43
  | SwitchCase
44
+ | StructMember
44
45
  | null;
45
46
 
46
47
  export class VariableDeclaration {
@@ -273,3 +274,19 @@ export class SwitchCase {
273
274
  isDefault: boolean;
274
275
  readonly isSwitchCase: true;
275
276
  }
277
+
278
+ export class StructMember {
279
+ type: string;
280
+ name: string;
281
+ readonly isStructMember: true;
282
+
283
+ constructor(type: string, name: string);
284
+ }
285
+
286
+ export class StructDefinition {
287
+ name: string;
288
+ members: StructMember[];
289
+ readonly isStructDefinition: true;
290
+
291
+ constructor(name: string, members?: StructMember[]);
292
+ }
@@ -6,6 +6,7 @@ import {
6
6
  FunctionDeclaration,
7
7
  Program,
8
8
  Statement,
9
+ StructDefinition,
9
10
  Switch,
10
11
  Ternary,
11
12
  Uniform,
@@ -38,6 +39,7 @@ export default class TSLEncoder {
38
39
  emitWhile(node: While): string;
39
40
  emitVariables(node: VariableDeclaration, isRoot?: boolean): string;
40
41
  emitVarying(node: Varying): string;
42
+ emitStructDefinition(node: StructDefinition): string;
41
43
  emitOverloadingFunction(nodes: FunctionDeclaration[]): string;
42
44
  emitFunction(node: FunctionDeclaration): string;
43
45
  setLastStatement(statement: Statement | null): void;
@@ -1,16 +1,15 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
- import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
1
+ import { Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  export default class AfterImageNode extends TempNode {
5
4
  textureNode: TextureNode;
6
5
  textureNodeOld: Node;
7
- damp: UniformNode<number>;
6
+ damp: Node;
8
7
 
9
- constructor(textureNode: Node, damp?: number);
8
+ constructor(textureNode: Node, damp?: Node);
10
9
 
11
10
  getTextureNode(): TextureNode;
12
11
 
13
12
  setSize(width: number, height: number): void;
14
13
  }
15
14
 
16
- export const afterImage: (node: Node, damp?: number) => ShaderNodeObject<AfterImageNode>;
15
+ export const afterImage: (node: Node, damp?: Node | number) => AfterImageNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Scene } from "three/webgpu";
3
2
  import StereoCompositePassNode from "./StereoCompositePassNode.js";
4
3
 
@@ -10,4 +9,4 @@ declare class AnaglyphPassNode extends StereoCompositePassNode {
10
9
 
11
10
  export default AnaglyphPassNode;
12
11
 
13
- export const anaglyphPass: (scene: Scene, camera: Camera) => ShaderNodeObject<AnaglyphPassNode>;
12
+ export const anaglyphPass: (scene: Scene, camera: Camera) => AnaglyphPassNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, Vector2 } from "three/webgpu";
3
2
 
4
3
  export default class AnamorphicNode extends TempNode {
@@ -29,4 +28,4 @@ export const anamorphic: (
29
28
  threshold?: Node,
30
29
  scale?: Node,
31
30
  samples?: Node | number,
32
- ) => ShaderNodeObject<AnamorphicNode>;
31
+ ) => AnamorphicNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
- export const bleach: (color: Node, opacity?: number) => ShaderNodeObject<Node>;
3
+ export const bleach: (color: Node, opacity?: Node | number) => Node;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class BloomNode extends TempNode {
@@ -11,7 +10,7 @@ declare class BloomNode extends TempNode {
11
10
 
12
11
  constructor(inputNode: Node, strength?: number, radius?: number, threshold?: number);
13
12
 
14
- getTexture(): ShaderNodeObject<TextureNode>;
13
+ getTexture(): TextureNode;
15
14
 
16
15
  setSize(width: number, height: number): void;
17
16
  }
@@ -21,6 +20,6 @@ export const bloom: (
21
20
  strength?: number,
22
21
  radius?: number,
23
22
  threshold?: number,
24
- ) => ShaderNodeObject<BloomNode>;
23
+ ) => BloomNode;
25
24
 
26
25
  export default BloomNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, Vector2 } from "three/webgpu";
3
2
 
4
3
  declare class ChromaticAberrationNode extends TempNode {
@@ -17,4 +16,4 @@ export const chromaticAberration: (
17
16
  strength?: Node,
18
17
  center?: Node | Vector2 | null,
19
18
  scale?: Node,
20
- ) => ShaderNodeObject<ChromaticAberrationNode>;
19
+ ) => ChromaticAberrationNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Node, TempNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class DenoiseNode extends TempNode {
@@ -24,4 +23,4 @@ export const denoise: (
24
23
  depthNode: Node,
25
24
  normalNode: Node,
26
25
  camera: Camera,
27
- ) => ShaderNodeObject<DenoiseNode>;
26
+ ) => DenoiseNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  declare class DepthOfFieldNode extends TempNode {
@@ -26,4 +25,4 @@ export const dof: (
26
25
  focusDistance?: Node | number,
27
26
  focalLength?: Node | number,
28
27
  bokehScale?: Node | number,
29
- ) => ShaderNodeObject<DepthOfFieldNode>;
28
+ ) => DepthOfFieldNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, UniformNode, Vector2 } from "three/webgpu";
3
2
 
4
3
  declare class DotScreenNode extends TempNode {
@@ -17,4 +16,4 @@ export const dotScreen: (
17
16
  center?: Vector2,
18
17
  angle?: number,
19
18
  scale?: number,
20
- ) => ShaderNodeObject<DotScreenNode>;
19
+ ) => DotScreenNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  declare class FXAANode extends TempNode {
@@ -9,4 +8,4 @@ declare class FXAANode extends TempNode {
9
8
 
10
9
  export default FXAANode;
11
10
 
12
- export const fxaa: (node: Node) => ShaderNodeObject<FXAANode>;
11
+ export const fxaa: (node: Node) => FXAANode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode } from "three/webgpu";
3
2
 
4
3
  declare class FilmNode extends TempNode {
@@ -15,4 +14,4 @@ export const film: (
15
14
  inputNode: Node,
16
15
  intensityNode?: Node | null,
17
16
  uvNode?: Node | null,
18
- ) => ShaderNodeObject<FilmNode>;
17
+ ) => FilmNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Node, TempNode, TextureNode, UniformNode, Vector2 } from "three/webgpu";
3
2
 
4
3
  declare class GTAONode extends TempNode {
@@ -7,17 +6,19 @@ declare class GTAONode extends TempNode {
7
6
 
8
7
  resolutionScale: number;
9
8
 
10
- radius: ShaderNodeObject<UniformNode<number>>;
11
- resolution: ShaderNodeObject<UniformNode<Vector2>>;
12
- thickness: ShaderNodeObject<UniformNode<number>>;
13
- distanceExponent: ShaderNodeObject<UniformNode<number>>;
14
- distanceFallOff: ShaderNodeObject<UniformNode<number>>;
15
- scale: ShaderNodeObject<UniformNode<number>>;
16
- samples: ShaderNodeObject<UniformNode<number>>;
9
+ radius: UniformNode<number>;
10
+ resolution: UniformNode<Vector2>;
11
+ thickness: UniformNode<number>;
12
+ distanceExponent: UniformNode<number>;
13
+ distanceFallOff: UniformNode<number>;
14
+ scale: UniformNode<number>;
15
+ samples: UniformNode<number>;
16
+
17
+ useTemporalFiltering: boolean;
17
18
 
18
19
  constructor(depthNode: Node, normalNode: Node, camera: Camera);
19
20
 
20
- getTextureNode(): ShaderNodeObject<TextureNode>;
21
+ getTextureNode(): TextureNode;
21
22
 
22
23
  setSize(width: number, height: number): void;
23
24
  }
@@ -28,4 +29,4 @@ export const ao: (
28
29
  depthNode: Node,
29
30
  normalNode: Node,
30
31
  camera: Camera,
31
- ) => ShaderNodeObject<GTAONode>;
32
+ ) => GTAONode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode, Vector2 } from "three/webgpu";
3
2
 
4
3
  export interface GaussianBlurNodeOptions {
@@ -43,7 +42,7 @@ export const gaussianBlur: (
43
42
  directionNode?: Node | number | null,
44
43
  sigma?: number,
45
44
  options?: GaussianBlurNodeOptions,
46
- ) => ShaderNodeObject<GaussianBlurNode>;
45
+ ) => GaussianBlurNode;
47
46
 
48
47
  /**
49
48
  * @deprecated "premultipliedGaussianBlur()" is deprecated. Use "gaussianBlur()" with "premultipliedAlpha: true" option instead.
@@ -52,4 +51,4 @@ export const premultipliedGaussianBlur: (
52
51
  node: Node,
53
52
  directionNode?: Node | number | null,
54
53
  sigma?: number,
55
- ) => ShaderNodeObject<GaussianBlurNode>;
54
+ ) => GaussianBlurNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode, UniformNode, Vector3 } from "three/webgpu";
3
2
 
4
3
  interface LensflareNodeParams {
@@ -13,11 +12,11 @@ interface LensflareNodeParams {
13
12
  declare class LensflareNode extends TempNode {
14
13
  textureNode: TextureNode;
15
14
 
16
- ghostTintNode: ShaderNodeObject<UniformNode<Vector3>>;
17
- thresholdNode: ShaderNodeObject<UniformNode<number>>;
18
- ghostSamplesNode: ShaderNodeObject<UniformNode<number>>;
19
- ghostSpacingNode: ShaderNodeObject<UniformNode<number>>;
20
- ghostAttenuationFactorNode: ShaderNodeObject<UniformNode<number>>;
15
+ ghostTintNode: UniformNode<Vector3>;
16
+ thresholdNode: UniformNode<number>;
17
+ ghostSamplesNode: UniformNode<number>;
18
+ ghostSpacingNode: UniformNode<number>;
19
+ ghostAttenuationFactorNode: UniformNode<number>;
21
20
  downSampleRatio: number;
22
21
 
23
22
  constructor(textureNode: TextureNode, params?: LensflareNodeParams);
@@ -32,4 +31,4 @@ export default LensflareNode;
32
31
  export const lensflare: (
33
32
  inputNode: Node,
34
33
  params?: LensflareNodeParams,
35
- ) => ShaderNodeObject<LensflareNode>;
34
+ ) => LensflareNode;
@@ -1,10 +1,9 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Data3DTexture, Node, TempNode, Texture3DNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class Lut3DNode extends TempNode {
5
4
  inputNode: Node;
6
5
  lutNode: Texture3DNode;
7
- size: ShaderNodeObject<UniformNode<number>>;
6
+ size: UniformNode<number>;
8
7
  intensityNode: UniformNode<number>;
9
8
 
10
9
  constructor(inputNode: Node, lutNode: UniformNode<Data3DTexture>, size: number, intensityNode: UniformNode<number>);
@@ -17,4 +16,4 @@ export const lut3D: (
17
16
  lut: Node,
18
17
  size: number,
19
18
  intensity: Node,
20
- ) => ShaderNodeObject<Lut3DNode>;
19
+ ) => Lut3DNode;
@@ -1,8 +1,7 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
3
  export const motionBlur: (
5
4
  inputNode: Node,
6
5
  velocity: Node,
7
6
  numSamples?: Node,
8
- ) => ShaderNodeObject<Node>;
7
+ ) => Node;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Node, Object3D, Scene, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  export interface OutlineNodeParams {
@@ -12,21 +11,21 @@ declare class OutlineNode extends TempNode {
12
11
  scene: Scene;
13
12
  camera: Camera;
14
13
  selectedObjects: Object3D[];
15
- edgeThicknessNode: ShaderNodeObject<UniformNode<number>>;
16
- edgeGlowNode: ShaderNodeObject<UniformNode<number>>;
14
+ edgeThicknessNode: UniformNode<number>;
15
+ edgeGlowNode: UniformNode<number>;
17
16
  downSampleRatio: number;
18
17
 
19
18
  constructor(scene: Scene, camera: Camera, params?: OutlineNodeParams);
20
19
 
21
- get visibleEdge(): ShaderNodeObject<Node>;
20
+ get visibleEdge(): Node;
22
21
 
23
- get hiddenEdge(): ShaderNodeObject<Node>;
22
+ get hiddenEdge(): Node;
24
23
 
25
- getTextureNode(): ShaderNodeObject<TextureNode>;
24
+ getTextureNode(): TextureNode;
26
25
 
27
26
  setSize(width: number, height: number): void;
28
27
  }
29
28
 
30
29
  export default OutlineNode;
31
30
 
32
- export const outline: (scene: Scene, camera: Camera, params?: OutlineNodeParams) => ShaderNodeObject<OutlineNode>;
31
+ export const outline: (scene: Scene, camera: Camera, params?: OutlineNodeParams) => OutlineNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Scene } from "three/webgpu";
3
2
  import StereoCompositePassNode from "./StereoCompositePassNode.js";
4
3
 
@@ -10,4 +9,4 @@ declare class ParallaxBarrierPassNode extends StereoCompositePassNode {
10
9
 
11
10
  export default ParallaxBarrierPassNode;
12
11
 
13
- export const parallaxBarrierPass: (scene: Scene, camera: Camera) => ShaderNodeObject<ParallaxBarrierPassNode>;
12
+ export const parallaxBarrierPass: (scene: Scene, camera: Camera) => ParallaxBarrierPassNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, PassNode, Scene, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class PixelationPassNode extends PassNode {
@@ -23,6 +22,6 @@ export const pixelationPass: (
23
22
  pixelSize: UniformNode<number>,
24
23
  normalEdgeStrength: UniformNode<number>,
25
24
  depthEdgeStrength: UniformNode<number>,
26
- ) => ShaderNodeObject<PixelationPassNode>;
25
+ ) => PixelationPassNode;
27
26
 
28
27
  export default PixelationPassNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  export default class RGBShiftNode extends TempNode {
@@ -13,4 +12,4 @@ export default class RGBShiftNode extends TempNode {
13
12
  setSize(width: number, height: number): void;
14
13
  }
15
14
 
16
- export const rgbShift: (node: Node, amount?: number, angle?: number) => ShaderNodeObject<RGBShiftNode>;
15
+ export const rgbShift: (node: Node, amount?: number, angle?: number) => RGBShiftNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  declare class SMAANode extends TempNode {
@@ -15,4 +14,4 @@ declare class SMAANode extends TempNode {
15
14
  getSearchTexture(): string;
16
15
  }
17
16
 
18
- export const smaa: (node: Node) => ShaderNodeObject<SMAANode>;
17
+ export const smaa: (node: Node) => SMAANode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Color, PassNode, RenderTarget, Scene, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class SSAAPassNode extends PassNode {
@@ -18,4 +17,4 @@ declare class SSAAPassNode extends PassNode {
18
17
 
19
18
  export default SSAAPassNode;
20
19
 
21
- export const ssaaPass: (scene: Scene, camera: Camera) => ShaderNodeObject<SSAAPassNode>;
20
+ export const ssaaPass: (scene: Scene, camera: Camera) => SSAAPassNode;
@@ -0,0 +1,30 @@
1
+ import { Node, PerspectiveCamera, TempNode, UniformNode } from "three/webgpu";
2
+
3
+ declare class SSGINode extends TempNode {
4
+ beautyNode: Node;
5
+ depthNode: Node;
6
+ normalNode: Node;
7
+
8
+ sliceCount: UniformNode<number>;
9
+ stepCount: UniformNode<number>;
10
+ aoIntensity: UniformNode<number>;
11
+ giIntensity: UniformNode<number>;
12
+ radius: UniformNode<number>;
13
+ useScreenSpaceSampling: UniformNode<boolean>;
14
+ expFactor: UniformNode<number>;
15
+ thickness: UniformNode<number>;
16
+ useLinearThickness: UniformNode<boolean>;
17
+ backfaceLighting: UniformNode<number>;
18
+ useTemporalFiltering: boolean;
19
+
20
+ constructor(beautyNode: Node, depthNode: Node, normalNode: Node, camera: PerspectiveCamera);
21
+ }
22
+
23
+ export default SSGINode;
24
+
25
+ export const ssgi: (
26
+ beautyNode: Node,
27
+ depthNode: Node,
28
+ normalNode: Node,
29
+ camera: PerspectiveCamera,
30
+ ) => SSGINode;
@@ -1,12 +1,11 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class SSRNode extends TempNode {
5
- colorNode: ShaderNodeObject<Node>;
6
- depthNode: ShaderNodeObject<Node>;
7
- normalNode: ShaderNodeObject<Node>;
8
- metalnessNode: ShaderNodeObject<Node>;
9
- roughnessNode: ShaderNodeObject<Node> | null;
4
+ colorNode: Node;
5
+ depthNode: Node;
6
+ normalNode: Node;
7
+ metalnessNode: Node;
8
+ roughnessNode: Node | null;
10
9
  camera: Camera | null;
11
10
 
12
11
  resolutionScale: number;
@@ -18,15 +17,15 @@ declare class SSRNode extends TempNode {
18
17
  blurQuality: UniformNode<number>;
19
18
 
20
19
  constructor(
21
- colorNode: ShaderNodeObject<Node>,
22
- depthNode: ShaderNodeObject<Node>,
23
- normalNode: ShaderNodeObject<Node>,
24
- metalnessNode: ShaderNodeObject<Node>,
25
- roughnessNode?: ShaderNodeObject<Node> | null,
20
+ colorNode: Node,
21
+ depthNode: Node,
22
+ normalNode: Node,
23
+ metalnessNode: Node,
24
+ roughnessNode?: Node | null,
26
25
  camera?: Camera | null,
27
26
  );
28
27
 
29
- getTextureNode(): ShaderNodeObject<TextureNode>;
28
+ getTextureNode(): TextureNode;
30
29
 
31
30
  setSize(width: number, height: number): void;
32
31
  }
@@ -40,4 +39,4 @@ export const ssr: (
40
39
  metalnessNode: Node,
41
40
  roughnessNode?: Node | null,
42
41
  camera?: Camera | null,
43
- ) => ShaderNodeObject<SSRNode>;
42
+ ) => SSRNode;
@@ -0,0 +1,20 @@
1
+ import { Camera, DirectionalLight, TempNode, TextureNode, UniformNode } from "three/webgpu";
2
+
3
+ declare class SSSNode extends TempNode {
4
+ depthNode: TextureNode;
5
+
6
+ maxDistance: UniformNode<number>;
7
+ thickness: UniformNode<number>;
8
+ shadowIntensity: UniformNode<number>;
9
+ quality: UniformNode<number>;
10
+ resolutionScale: number;
11
+ useTemporalFiltering: boolean;
12
+
13
+ constructor(depthNode: TextureNode, camera: Camera, mainLight: DirectionalLight);
14
+
15
+ getTextureNode(): TextureNode;
16
+ }
17
+
18
+ export default SSSNode;
19
+
20
+ export const sss: (depthNode: TextureNode, camera: Camera, mainLight: DirectionalLight) => SSSNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
- export const sepia: (color: Node) => ShaderNodeObject<Node>;
3
+ export const sepia: (color: Node) => Node;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  declare class SobelOperatorNode extends TempNode {
@@ -9,4 +8,4 @@ declare class SobelOperatorNode extends TempNode {
9
8
 
10
9
  export default SobelOperatorNode;
11
10
 
12
- export const sobel: (node: Node) => ShaderNodeObject<SobelOperatorNode>;
11
+ export const sobel: (node: Node) => SobelOperatorNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, PassNode, Scene, StereoCamera } from "three/webgpu";
3
2
 
4
3
  declare class StereoPassNode extends PassNode {
@@ -11,4 +10,4 @@ declare class StereoPassNode extends PassNode {
11
10
 
12
11
  export default StereoPassNode;
13
12
 
14
- export const stereoPass: (scene: Scene, camera: Camera) => ShaderNodeObject<StereoPassNode>;
13
+ export const stereoPass: (scene: Scene, camera: Camera) => StereoPassNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Camera, Node, TempNode, TextureNode } from "three/webgpu";
3
2
 
4
3
  declare class TRAANode extends TempNode {
@@ -9,6 +8,11 @@ declare class TRAANode extends TempNode {
9
8
  velocityNode: TextureNode;
10
9
  camera: Camera;
11
10
 
11
+ depthThreshold: number;
12
+ edgeDepthDiff: number;
13
+ maxVelocityLength: number;
14
+ useSubpixelCorrection: boolean;
15
+
12
16
  constructor(beautyNode: TextureNode, depthNode: TextureNode, velocityNode: TextureNode, camera: Camera);
13
17
  }
14
18
 
@@ -19,4 +23,4 @@ export const traa: (
19
23
  depthNode: TextureNode,
20
24
  velocityNode: TextureNode,
21
25
  camera: Camera,
22
- ) => ShaderNodeObject<TRAANode>;
26
+ ) => TRAANode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node, TempNode, TextureNode, UniformNode } from "three/webgpu";
3
2
 
4
3
  declare class TransitionNode extends TempNode {
@@ -29,4 +28,4 @@ export const transition: (
29
28
  mixRatio: UniformNode<number>,
30
29
  threshold: UniformNode<number>,
31
30
  useTexture: UniformNode<number>,
32
- ) => ShaderNodeObject<TransitionNode>;
31
+ ) => TransitionNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
3
  export interface BoxBlurOptions {
@@ -8,4 +7,4 @@ export interface BoxBlurOptions {
8
7
  premultipliedAlpha?: boolean | undefined;
9
8
  }
10
9
 
11
- export const boxBlur: (textureNode: Node, options?: BoxBlurOptions) => ShaderNodeObject<Node>;
10
+ export const boxBlur: (textureNode: Node, options?: BoxBlurOptions) => Node;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
3
  interface HashBlurOptions {
@@ -11,4 +10,4 @@ export const hashBlur: (
11
10
  textureNode: Node,
12
11
  bluramount?: Node | number,
13
12
  options?: HashBlurOptions,
14
- ) => ShaderNodeObject<Node>;
13
+ ) => Node;
@@ -0,0 +1,12 @@
1
+ import { Node } from "three/webgpu";
2
+
3
+ export interface RadialBlurOptions {
4
+ center?: Node | undefined;
5
+ weight?: Node | undefined;
6
+ decay?: Node | undefined;
7
+ count?: Node | undefined;
8
+ exposure?: Node | undefined;
9
+ premultipliedAlpha?: boolean | undefined;
10
+ }
11
+
12
+ export const radialBlur: (textureNode: Node, options?: RadialBlurOptions) => Node;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { LightsNode, Node } from "three/webgpu";
3
2
 
4
3
  export const circleIntersectsAABB: (
@@ -6,18 +5,18 @@ export const circleIntersectsAABB: (
6
5
  radius: Node,
7
6
  minBounds: Node,
8
7
  maxBounds: Node,
9
- ) => ShaderNodeObject<Node>;
8
+ ) => Node;
10
9
 
11
10
  declare class TiledLightsNode extends LightsNode {
12
11
  constructor(maxLights?: number, tileSize?: number);
13
12
 
14
13
  updateLightsTexture(): void;
15
14
 
16
- getBlock(block?: number): ShaderNodeObject<Node>;
15
+ getBlock(block?: number): Node;
17
16
 
18
17
  setSize(width: number, height: number): this;
19
18
  }
20
19
 
21
20
  export default TiledLightsNode;
22
21
 
23
- export const tiledLights: (maxLights?: number, tileSize?: number) => ShaderNodeObject<TiledLightsNode>;
22
+ export const tiledLights: (maxLights?: number, tileSize?: number) => TiledLightsNode;
@@ -1,4 +1,3 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { Node } from "three/webgpu";
3
2
 
4
- export const bayer16: (uv: Node) => ShaderNodeObject<Node>;
3
+ export const bayer16: (uv: Node) => Node;
@@ -1,9 +1,8 @@
1
- import { ShaderNodeObject } from "three/tsl";
2
1
  import { FunctionNode, Node } from "three/webgpu";
3
2
 
4
3
  export const RaymarchingBox: (
5
4
  steps: number | Node,
6
5
  callback:
7
- | ((params: { positionRay: ShaderNodeObject<Node> }) => void)
8
- | FunctionNode<{ positionRay: ShaderNodeObject<Node> }>,
6
+ | ((params: { positionRay: Node }) => void)
7
+ | FunctionNode<{ positionRay: Node }>,
9
8
  ) => void;