@needle-tools/three 0.169.12 → 0.169.13

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 (842) hide show
  1. package/package.json +3 -2
  2. package/types/build/three.d.cts +1 -0
  3. package/types/build/three.module.d.ts +1 -0
  4. package/types/build/three.module.min.d.ts +1 -0
  5. package/types/build/three.webgpu.d.ts +1 -0
  6. package/types/build/three.webgpu.min.d.ts +1 -0
  7. package/types/build/three.webgpu.nodes.d.ts +1 -0
  8. package/types/build/three.webgpu.nodes.min.d.ts +1 -0
  9. package/types/examples/jsm/Addons.d.ts +292 -0
  10. package/types/examples/jsm/animation/AnimationClipCreator.d.ts +12 -0
  11. package/types/examples/jsm/animation/CCDIKSolver.d.ts +43 -0
  12. package/types/examples/jsm/animation/MMDAnimationHelper.d.ts +95 -0
  13. package/types/examples/jsm/animation/MMDPhysics.d.ts +124 -0
  14. package/types/examples/jsm/cameras/CinematicCamera.d.ts +34 -0
  15. package/types/examples/jsm/capabilities/WebGL.d.ts +17 -0
  16. package/types/examples/jsm/capabilities/WebGPU.d.ts +7 -0
  17. package/types/examples/jsm/controls/ArcballControls.d.ts +203 -0
  18. package/types/examples/jsm/controls/DragControls.d.ts +111 -0
  19. package/types/examples/jsm/controls/FirstPersonControls.d.ts +101 -0
  20. package/types/examples/jsm/controls/FlyControls.d.ts +44 -0
  21. package/types/examples/jsm/controls/MapControls.d.ts +21 -0
  22. package/types/examples/jsm/controls/OrbitControls.d.ts +251 -0
  23. package/types/examples/jsm/controls/PointerLockControls.d.ts +86 -0
  24. package/types/examples/jsm/controls/TrackballControls.d.ts +142 -0
  25. package/types/examples/jsm/controls/TransformControls.d.ts +249 -0
  26. package/types/examples/jsm/csm/CSM.d.ts +55 -0
  27. package/types/examples/jsm/csm/CSMFrustum.d.ts +19 -0
  28. package/types/examples/jsm/csm/CSMHelper.d.ts +27 -0
  29. package/types/examples/jsm/csm/CSMShader.d.ts +4 -0
  30. package/types/examples/jsm/curves/CurveExtras.d.ts +68 -0
  31. package/types/examples/jsm/curves/NURBSCurve.d.ts +17 -0
  32. package/types/examples/jsm/curves/NURBSSurface.d.ts +13 -0
  33. package/types/examples/jsm/curves/NURBSUtils.d.ts +146 -0
  34. package/types/examples/jsm/curves/NURBSVolume.d.ts +23 -0
  35. package/types/examples/jsm/effects/AnaglyphEffect.d.ts +17 -0
  36. package/types/examples/jsm/effects/AsciiEffect.d.ts +18 -0
  37. package/types/examples/jsm/effects/OutlineEffect.d.ts +28 -0
  38. package/types/examples/jsm/effects/ParallaxBarrierEffect.d.ts +11 -0
  39. package/types/examples/jsm/effects/PeppersGhostEffect.d.ts +10 -0
  40. package/types/examples/jsm/effects/StereoEffect.d.ts +9 -0
  41. package/types/examples/jsm/environments/DebugEnvironment.d.ts +5 -0
  42. package/types/examples/jsm/environments/RoomEnvironment.d.ts +6 -0
  43. package/types/examples/jsm/exporters/DRACOExporter.d.ts +17 -0
  44. package/types/examples/jsm/exporters/EXRExporter.d.ts +27 -0
  45. package/types/examples/jsm/exporters/GLTFExporter.d.ts +123 -0
  46. package/types/examples/jsm/exporters/KTX2Exporter.d.ts +7 -0
  47. package/types/examples/jsm/exporters/MMDExporter.d.ts +7 -0
  48. package/types/examples/jsm/exporters/OBJExporter.d.ts +7 -0
  49. package/types/examples/jsm/exporters/PLYExporter.d.ts +30 -0
  50. package/types/examples/jsm/exporters/STLExporter.d.ts +21 -0
  51. package/types/examples/jsm/exporters/USDZExporter.d.ts +21 -0
  52. package/types/examples/jsm/geometries/BoxLineGeometry.d.ts +12 -0
  53. package/types/examples/jsm/geometries/ConvexGeometry.d.ts +5 -0
  54. package/types/examples/jsm/geometries/DecalGeometry.d.ts +10 -0
  55. package/types/examples/jsm/geometries/ParametricGeometries.d.ts +32 -0
  56. package/types/examples/jsm/geometries/ParametricGeometry.d.ts +18 -0
  57. package/types/examples/jsm/geometries/RoundedBoxGeometry.d.ts +5 -0
  58. package/types/examples/jsm/geometries/TeapotGeometry.d.ts +37 -0
  59. package/types/examples/jsm/geometries/TextGeometry.d.ts +123 -0
  60. package/types/examples/jsm/helpers/LightProbeHelper.d.ts +12 -0
  61. package/types/examples/jsm/helpers/LightProbeHelperGPU.d.ts +12 -0
  62. package/types/examples/jsm/helpers/OctreeHelper.d.ts +17 -0
  63. package/types/examples/jsm/helpers/PositionalAudioHelper.d.ts +13 -0
  64. package/types/examples/jsm/helpers/RectAreaLightHelper.d.ts +10 -0
  65. package/types/examples/jsm/helpers/TextureHelper.d.ts +10 -0
  66. package/types/examples/jsm/helpers/VertexNormalsHelper.d.ts +12 -0
  67. package/types/examples/jsm/helpers/VertexTangentsHelper.d.ts +12 -0
  68. package/types/examples/jsm/helpers/ViewHelper.d.ts +17 -0
  69. package/types/examples/jsm/interactive/HTMLMesh.d.ts +6 -0
  70. package/types/examples/jsm/interactive/InteractiveGroup.d.ts +20 -0
  71. package/types/examples/jsm/interactive/SelectionBox.d.ts +16 -0
  72. package/types/examples/jsm/interactive/SelectionHelper.d.ts +17 -0
  73. package/types/examples/jsm/libs/fflate.module.d.ts +1 -0
  74. package/types/examples/jsm/libs/lil-gui.module.min.d.ts +608 -0
  75. package/types/examples/jsm/libs/meshopt_decoder.module.d.ts +1 -0
  76. package/types/examples/jsm/libs/stats.module.d.ts +3 -0
  77. package/types/examples/jsm/libs/tween.module.d.ts +2 -0
  78. package/types/examples/jsm/lights/LightProbeGenerator.d.ts +10 -0
  79. package/types/examples/jsm/lights/RectAreaLightTexturesLib.d.ts +7 -0
  80. package/types/examples/jsm/lights/RectAreaLightUniformsLib.d.ts +5 -0
  81. package/types/examples/jsm/lines/Line2.d.ts +25 -0
  82. package/types/examples/jsm/lines/LineGeometry.d.ts +27 -0
  83. package/types/examples/jsm/lines/LineMaterial.d.ts +82 -0
  84. package/types/examples/jsm/lines/LineSegments2.d.ts +37 -0
  85. package/types/examples/jsm/lines/LineSegmentsGeometry.d.ts +53 -0
  86. package/types/examples/jsm/lines/Wireframe.d.ts +11 -0
  87. package/types/examples/jsm/lines/WireframeGeometry2.d.ts +8 -0
  88. package/types/examples/jsm/lines/webgpu/Line2.d.ts +14 -0
  89. package/types/examples/jsm/lines/webgpu/LineSegments2.d.ts +15 -0
  90. package/types/examples/jsm/loaders/3DMLoader.d.ts +10 -0
  91. package/types/examples/jsm/loaders/3MFLoader.d.ts +9 -0
  92. package/types/examples/jsm/loaders/AMFLoader.d.ts +7 -0
  93. package/types/examples/jsm/loaders/BVHLoader.d.ts +14 -0
  94. package/types/examples/jsm/loaders/ColladaLoader.d.ts +11 -0
  95. package/types/examples/jsm/loaders/DDSLoader.d.ts +22 -0
  96. package/types/examples/jsm/loaders/DRACOLoader.d.ts +25 -0
  97. package/types/examples/jsm/loaders/EXRLoader.d.ts +19 -0
  98. package/types/examples/jsm/loaders/FBXLoader.d.ts +7 -0
  99. package/types/examples/jsm/loaders/FontLoader.d.ts +41 -0
  100. package/types/examples/jsm/loaders/GCodeLoader.d.ts +8 -0
  101. package/types/examples/jsm/loaders/GLTFLoader.d.ts +153 -0
  102. package/types/examples/jsm/loaders/HDRCubeTextureLoader.d.ts +18 -0
  103. package/types/examples/jsm/loaders/IESLoader.d.ts +5 -0
  104. package/types/examples/jsm/loaders/KMZLoader.d.ts +9 -0
  105. package/types/examples/jsm/loaders/KTX2Loader.d.ts +54 -0
  106. package/types/examples/jsm/loaders/KTXLoader.d.ts +22 -0
  107. package/types/examples/jsm/loaders/LDrawLoader.d.ts +19 -0
  108. package/types/examples/jsm/loaders/LUT3dlLoader.d.ts +39 -0
  109. package/types/examples/jsm/loaders/LUTCubeLoader.d.ts +42 -0
  110. package/types/examples/jsm/loaders/LUTImageLoader.d.ts +18 -0
  111. package/types/examples/jsm/loaders/LWOLoader.d.ts +19 -0
  112. package/types/examples/jsm/loaders/LottieLoader.d.ts +14 -0
  113. package/types/examples/jsm/loaders/MD2Loader.d.ts +7 -0
  114. package/types/examples/jsm/loaders/MDDLoader.d.ts +12 -0
  115. package/types/examples/jsm/loaders/MMDLoader.d.ts +56 -0
  116. package/types/examples/jsm/loaders/MTLLoader.d.ts +94 -0
  117. package/types/examples/jsm/loaders/MaterialXLoader.d.ts +5 -0
  118. package/types/examples/jsm/loaders/NRRDLoader.d.ts +15 -0
  119. package/types/examples/jsm/loaders/OBJLoader.d.ts +10 -0
  120. package/types/examples/jsm/loaders/PCDLoader.d.ts +8 -0
  121. package/types/examples/jsm/loaders/PDBLoader.d.ts +15 -0
  122. package/types/examples/jsm/loaders/PLYLoader.d.ts +11 -0
  123. package/types/examples/jsm/loaders/PVRLoader.d.ts +16 -0
  124. package/types/examples/jsm/loaders/RGBELoader.d.ts +19 -0
  125. package/types/examples/jsm/loaders/RGBMLoader.d.ts +37 -0
  126. package/types/examples/jsm/loaders/STLLoader.d.ts +7 -0
  127. package/types/examples/jsm/loaders/SVGLoader.d.ts +64 -0
  128. package/types/examples/jsm/loaders/TDSLoader.d.ts +35 -0
  129. package/types/examples/jsm/loaders/TGALoader.d.ts +7 -0
  130. package/types/examples/jsm/loaders/TIFFLoader.d.ts +16 -0
  131. package/types/examples/jsm/loaders/TTFLoader.d.ts +10 -0
  132. package/types/examples/jsm/loaders/USDZLoader.d.ts +11 -0
  133. package/types/examples/jsm/loaders/UltraHDRLoader.d.ts +21 -0
  134. package/types/examples/jsm/loaders/VOXLoader.d.ts +21 -0
  135. package/types/examples/jsm/loaders/VRMLLoader.d.ts +7 -0
  136. package/types/examples/jsm/loaders/VTKLoader.d.ts +7 -0
  137. package/types/examples/jsm/loaders/XYZLoader.d.ts +7 -0
  138. package/types/examples/jsm/materials/MeshGouraudMaterial.d.ts +16 -0
  139. package/types/examples/jsm/materials/MeshPostProcessingMaterial.d.ts +13 -0
  140. package/types/examples/jsm/math/Capsule.d.ts +26 -0
  141. package/types/examples/jsm/math/ColorConverter.d.ts +19 -0
  142. package/types/examples/jsm/math/ConvexHull.d.ts +89 -0
  143. package/types/examples/jsm/math/ImprovedNoise.d.ts +4 -0
  144. package/types/examples/jsm/math/Lut.d.ts +27 -0
  145. package/types/examples/jsm/math/MeshSurfaceSampler.d.ts +21 -0
  146. package/types/examples/jsm/math/OBB.d.ts +24 -0
  147. package/types/examples/jsm/math/Octree.d.ts +29 -0
  148. package/types/examples/jsm/math/SimplexNoise.d.ts +9 -0
  149. package/types/examples/jsm/misc/ConvexObjectBreaker.d.ts +25 -0
  150. package/types/examples/jsm/misc/GPUComputationRenderer.d.ts +55 -0
  151. package/types/examples/jsm/misc/Gyroscope.d.ts +5 -0
  152. package/types/examples/jsm/misc/MD2Character.d.ts +33 -0
  153. package/types/examples/jsm/misc/MD2CharacterComplex.d.ts +55 -0
  154. package/types/examples/jsm/misc/MorphAnimMesh.d.ts +13 -0
  155. package/types/examples/jsm/misc/MorphBlendMesh.d.ts +21 -0
  156. package/types/examples/jsm/misc/ProgressiveLightMap.d.ts +60 -0
  157. package/types/examples/jsm/misc/RollerCoaster.d.ts +26 -0
  158. package/types/examples/jsm/misc/Timer.d.ts +80 -0
  159. package/types/examples/jsm/misc/TubePainter.d.ts +10 -0
  160. package/types/examples/jsm/misc/Volume.d.ts +37 -0
  161. package/types/examples/jsm/misc/VolumeSlice.d.ts +28 -0
  162. package/types/examples/jsm/modifiers/CurveModifier.d.ts +41 -0
  163. package/types/examples/jsm/modifiers/CurveModifierGPU.d.ts +31 -0
  164. package/types/examples/jsm/modifiers/EdgeSplitModifier.d.ts +26 -0
  165. package/types/examples/jsm/modifiers/SimplifyModifier.d.ts +6 -0
  166. package/types/examples/jsm/modifiers/TessellateModifier.d.ts +9 -0
  167. package/types/examples/jsm/objects/GroundedSkybox.d.ts +5 -0
  168. package/types/examples/jsm/objects/Lensflare.d.ts +21 -0
  169. package/types/examples/jsm/objects/LensflareMesh.d.ts +21 -0
  170. package/types/examples/jsm/objects/MarchingCubes.d.ts +76 -0
  171. package/types/examples/jsm/objects/Reflector.d.ts +21 -0
  172. package/types/examples/jsm/objects/ReflectorForSSRPass.d.ts +62 -0
  173. package/types/examples/jsm/objects/Refractor.d.ts +21 -0
  174. package/types/examples/jsm/objects/ShadowMesh.d.ts +10 -0
  175. package/types/examples/jsm/objects/Sky.d.ts +28 -0
  176. package/types/examples/jsm/objects/SkyMesh.d.ts +17 -0
  177. package/types/examples/jsm/objects/Water.d.ts +22 -0
  178. package/types/examples/jsm/objects/Water2.d.ts +21 -0
  179. package/types/examples/jsm/objects/Water2Mesh.d.ts +42 -0
  180. package/types/examples/jsm/objects/WaterMesh.d.ts +31 -0
  181. package/types/examples/jsm/physics/AmmoPhysics.d.ts +9 -0
  182. package/types/examples/jsm/physics/JoltPhysics.d.ts +10 -0
  183. package/types/examples/jsm/physics/RapierPhysics.d.ts +12 -0
  184. package/types/examples/jsm/postprocessing/AfterimagePass.d.ts +14 -0
  185. package/types/examples/jsm/postprocessing/BloomPass.d.ts +14 -0
  186. package/types/examples/jsm/postprocessing/BokehPass.d.ts +23 -0
  187. package/types/examples/jsm/postprocessing/ClearPass.d.ts +9 -0
  188. package/types/examples/jsm/postprocessing/CubeTexturePass.d.ts +14 -0
  189. package/types/examples/jsm/postprocessing/DotScreenPass.d.ts +10 -0
  190. package/types/examples/jsm/postprocessing/EffectComposer.d.ts +31 -0
  191. package/types/examples/jsm/postprocessing/FilmPass.d.ts +10 -0
  192. package/types/examples/jsm/postprocessing/GTAOPass.d.ts +121 -0
  193. package/types/examples/jsm/postprocessing/GlitchPass.d.ts +16 -0
  194. package/types/examples/jsm/postprocessing/HalftonePass.d.ts +37 -0
  195. package/types/examples/jsm/postprocessing/LUTPass.d.ts +13 -0
  196. package/types/examples/jsm/postprocessing/MaskPass.d.ts +14 -0
  197. package/types/examples/jsm/postprocessing/OutlinePass.d.ts +64 -0
  198. package/types/examples/jsm/postprocessing/OutputPass.d.ts +10 -0
  199. package/types/examples/jsm/postprocessing/Pass.d.ts +31 -0
  200. package/types/examples/jsm/postprocessing/RenderPass.d.ts +23 -0
  201. package/types/examples/jsm/postprocessing/RenderPixelatedPass.d.ts +30 -0
  202. package/types/examples/jsm/postprocessing/RenderTransitionPass.d.ts +33 -0
  203. package/types/examples/jsm/postprocessing/SAOPass.d.ts +70 -0
  204. package/types/examples/jsm/postprocessing/SMAAPass.d.ts +21 -0
  205. package/types/examples/jsm/postprocessing/SSAARenderPass.d.ts +26 -0
  206. package/types/examples/jsm/postprocessing/SSAOPass.d.ts +68 -0
  207. package/types/examples/jsm/postprocessing/SSRPass.d.ts +122 -0
  208. package/types/examples/jsm/postprocessing/SavePass.d.ts +12 -0
  209. package/types/examples/jsm/postprocessing/ShaderPass.d.ts +11 -0
  210. package/types/examples/jsm/postprocessing/TAARenderPass.d.ts +8 -0
  211. package/types/examples/jsm/postprocessing/TexturePass.d.ts +12 -0
  212. package/types/examples/jsm/postprocessing/UnrealBloomPass.d.ts +31 -0
  213. package/types/examples/jsm/renderers/CSS2DRenderer.d.ts +23 -0
  214. package/types/examples/jsm/renderers/CSS3DRenderer.d.ts +26 -0
  215. package/types/examples/jsm/renderers/Projector.d.ts +60 -0
  216. package/types/examples/jsm/renderers/SVGRenderer.d.ts +26 -0
  217. package/types/examples/jsm/shaders/ACESFilmicToneMappingShader.d.ts +11 -0
  218. package/types/examples/jsm/shaders/AfterimageShader.d.ts +12 -0
  219. package/types/examples/jsm/shaders/BasicShader.d.ts +6 -0
  220. package/types/examples/jsm/shaders/BleachBypassShader.d.ts +10 -0
  221. package/types/examples/jsm/shaders/BlendShader.d.ts +13 -0
  222. package/types/examples/jsm/shaders/BokehShader.d.ts +21 -0
  223. package/types/examples/jsm/shaders/BokehShader2.d.ts +44 -0
  224. package/types/examples/jsm/shaders/BrightnessContrastShader.d.ts +12 -0
  225. package/types/examples/jsm/shaders/ColorCorrectionShader.d.ts +13 -0
  226. package/types/examples/jsm/shaders/ColorifyShader.d.ts +10 -0
  227. package/types/examples/jsm/shaders/ConvolutionShader.d.ts +17 -0
  228. package/types/examples/jsm/shaders/CopyShader.d.ts +10 -0
  229. package/types/examples/jsm/shaders/DOFMipMapShader.d.ts +13 -0
  230. package/types/examples/jsm/shaders/DepthLimitedBlurShader.d.ts +28 -0
  231. package/types/examples/jsm/shaders/DigitalGlitch.d.ts +19 -0
  232. package/types/examples/jsm/shaders/DotScreenShader.d.ts +13 -0
  233. package/types/examples/jsm/shaders/ExposureShader.d.ts +11 -0
  234. package/types/examples/jsm/shaders/FXAAShader.d.ts +11 -0
  235. package/types/examples/jsm/shaders/FilmShader.d.ts +12 -0
  236. package/types/examples/jsm/shaders/FocusShader.d.ts +14 -0
  237. package/types/examples/jsm/shaders/FreiChenShader.d.ts +11 -0
  238. package/types/examples/jsm/shaders/GTAOShader.d.ts +59 -0
  239. package/types/examples/jsm/shaders/GammaCorrectionShader.d.ts +9 -0
  240. package/types/examples/jsm/shaders/GodRaysShader.d.ts +44 -0
  241. package/types/examples/jsm/shaders/HalftoneShader.d.ts +22 -0
  242. package/types/examples/jsm/shaders/HorizontalBlurShader.d.ts +10 -0
  243. package/types/examples/jsm/shaders/HorizontalTiltShiftShader.d.ts +12 -0
  244. package/types/examples/jsm/shaders/HueSaturationShader.d.ts +12 -0
  245. package/types/examples/jsm/shaders/KaleidoShader.d.ts +12 -0
  246. package/types/examples/jsm/shaders/LuminosityHighPassShader.d.ts +15 -0
  247. package/types/examples/jsm/shaders/LuminosityShader.d.ts +10 -0
  248. package/types/examples/jsm/shaders/MMDToonShader.d.ts +15 -0
  249. package/types/examples/jsm/shaders/MirrorShader.d.ts +11 -0
  250. package/types/examples/jsm/shaders/NormalMapShader.d.ts +13 -0
  251. package/types/examples/jsm/shaders/OutputShader.d.ts +11 -0
  252. package/types/examples/jsm/shaders/PoissonDenoiseShader.d.ts +28 -0
  253. package/types/examples/jsm/shaders/RGBShiftShader.d.ts +11 -0
  254. package/types/examples/jsm/shaders/SAOShader.d.ts +29 -0
  255. package/types/examples/jsm/shaders/SMAAShader.d.ts +43 -0
  256. package/types/examples/jsm/shaders/SSAOShader.d.ts +49 -0
  257. package/types/examples/jsm/shaders/SSRShader.d.ts +62 -0
  258. package/types/examples/jsm/shaders/SepiaShader.d.ts +10 -0
  259. package/types/examples/jsm/shaders/SobelOperatorShader.d.ts +11 -0
  260. package/types/examples/jsm/shaders/SubsurfaceScatteringShader.d.ts +38 -0
  261. package/types/examples/jsm/shaders/TechnicolorShader.d.ts +10 -0
  262. package/types/examples/jsm/shaders/ToonShader.d.ts +54 -0
  263. package/types/examples/jsm/shaders/TriangleBlurShader.d.ts +11 -0
  264. package/types/examples/jsm/shaders/UnpackDepthRGBAShader.d.ts +11 -0
  265. package/types/examples/jsm/shaders/VelocityShader.d.ts +16 -0
  266. package/types/examples/jsm/shaders/VerticalBlurShader.d.ts +10 -0
  267. package/types/examples/jsm/shaders/VerticalTiltShiftShader.d.ts +12 -0
  268. package/types/examples/jsm/shaders/VignetteShader.d.ts +11 -0
  269. package/types/examples/jsm/shaders/VolumeShader.d.ts +14 -0
  270. package/types/examples/jsm/shaders/WaterRefractionShader.d.ts +14 -0
  271. package/types/examples/jsm/textures/FlakesTexture.d.ts +3 -0
  272. package/types/examples/jsm/transpiler/AST.d.ts +7 -0
  273. package/types/examples/jsm/transpiler/GLSLDecoder.d.ts +7 -0
  274. package/types/examples/jsm/transpiler/ShaderToyDecoder.d.ts +3 -0
  275. package/types/examples/jsm/transpiler/TSLEncoder.d.ts +7 -0
  276. package/types/examples/jsm/transpiler/Transpiler.d.ts +5 -0
  277. package/types/examples/jsm/utils/BufferGeometryUtils.d.ts +37 -0
  278. package/types/examples/jsm/utils/CameraUtils.d.ts +9 -0
  279. package/types/examples/jsm/utils/GeometryCompressionUtils.d.ts +21 -0
  280. package/types/examples/jsm/utils/GeometryUtils.d.ts +25 -0
  281. package/types/examples/jsm/utils/LDrawUtils.d.ts +5 -0
  282. package/types/examples/jsm/utils/SceneUtils.d.ts +57 -0
  283. package/types/examples/jsm/utils/ShadowMapViewer.d.ts +26 -0
  284. package/types/examples/jsm/utils/ShadowMapViewerGPU.d.ts +26 -0
  285. package/types/examples/jsm/utils/SkeletonUtils.d.ts +32 -0
  286. package/types/examples/jsm/utils/SortUtils.d.ts +7 -0
  287. package/types/examples/jsm/utils/TextureUtils.d.ts +3 -0
  288. package/types/examples/jsm/utils/TextureUtilsGPU.d.ts +3 -0
  289. package/types/examples/jsm/utils/UVsDebug.d.ts +3 -0
  290. package/types/examples/jsm/utils/WorkerPool.d.ts +26 -0
  291. package/types/examples/jsm/webxr/ARButton.d.ts +9 -0
  292. package/types/examples/jsm/webxr/OculusHandModel.d.ts +23 -0
  293. package/types/examples/jsm/webxr/OculusHandPointerModel.d.ts +67 -0
  294. package/types/examples/jsm/webxr/Text2D.d.ts +3 -0
  295. package/types/examples/jsm/webxr/VRButton.d.ts +5 -0
  296. package/types/examples/jsm/webxr/XRButton.d.ts +5 -0
  297. package/types/examples/jsm/webxr/XRControllerModelFactory.d.ts +23 -0
  298. package/types/examples/jsm/webxr/XREstimatedLight.d.ts +69 -0
  299. package/types/examples/jsm/webxr/XRHandMeshModel.d.ts +19 -0
  300. package/types/examples/jsm/webxr/XRHandModelFactory.d.ts +32 -0
  301. package/types/examples/jsm/webxr/XRHandPrimitiveModel.d.ts +24 -0
  302. package/types/examples/jsm/webxr/XRPlanes.d.ts +5 -0
  303. package/types/globals.d.ts +9 -0
  304. package/types/index.d.ts +6 -0
  305. package/types/src/Three.Legacy.d.ts +20 -0
  306. package/types/src/Three.WebGPU.Nodes.d.ts +201 -0
  307. package/types/src/Three.WebGPU.d.ts +202 -0
  308. package/types/src/Three.d.ts +221 -0
  309. package/types/src/animation/AnimationAction.d.ts +86 -0
  310. package/types/src/animation/AnimationClip.d.ts +59 -0
  311. package/types/src/animation/AnimationMixer.d.ts +39 -0
  312. package/types/src/animation/AnimationObjectGroup.d.ts +17 -0
  313. package/types/src/animation/AnimationUtils.d.ts +60 -0
  314. package/types/src/animation/KeyframeTrack.d.ts +55 -0
  315. package/types/src/animation/PropertyBinding.d.ts +43 -0
  316. package/types/src/animation/PropertyMixer.d.ts +17 -0
  317. package/types/src/animation/tracks/BooleanKeyframeTrack.d.ts +10 -0
  318. package/types/src/animation/tracks/ColorKeyframeTrack.d.ts +11 -0
  319. package/types/src/animation/tracks/NumberKeyframeTrack.d.ts +11 -0
  320. package/types/src/animation/tracks/QuaternionKeyframeTrack.d.ts +11 -0
  321. package/types/src/animation/tracks/StringKeyframeTrack.d.ts +10 -0
  322. package/types/src/animation/tracks/VectorKeyframeTrack.d.ts +11 -0
  323. package/types/src/audio/Audio.d.ts +273 -0
  324. package/types/src/audio/AudioAnalyser.d.ts +58 -0
  325. package/types/src/audio/AudioContext.d.ts +19 -0
  326. package/types/src/audio/AudioListener.d.ts +96 -0
  327. package/types/src/audio/PositionalAudio.d.ts +101 -0
  328. package/types/src/cameras/ArrayCamera.d.ts +32 -0
  329. package/types/src/cameras/Camera.d.ts +74 -0
  330. package/types/src/cameras/CubeCamera.d.ts +68 -0
  331. package/types/src/cameras/OrthographicCamera.d.ts +174 -0
  332. package/types/src/cameras/PerspectiveCamera.d.ts +254 -0
  333. package/types/src/cameras/StereoCamera.d.ts +50 -0
  334. package/types/src/constants.d.ts +926 -0
  335. package/types/src/core/BufferAttribute.d.ts +622 -0
  336. package/types/src/core/BufferGeometry.d.ts +422 -0
  337. package/types/src/core/Clock.d.ts +72 -0
  338. package/types/src/core/EventDispatcher.d.ts +82 -0
  339. package/types/src/core/GLBufferAttribute.d.ts +121 -0
  340. package/types/src/core/InstancedBufferAttribute.d.ts +32 -0
  341. package/types/src/core/InstancedBufferGeometry.d.ts +37 -0
  342. package/types/src/core/InstancedInterleavedBuffer.d.ts +22 -0
  343. package/types/src/core/InterleavedBuffer.d.ts +150 -0
  344. package/types/src/core/InterleavedBufferAttribute.d.ts +201 -0
  345. package/types/src/core/Layers.d.ts +72 -0
  346. package/types/src/core/Object3D.d.ts +674 -0
  347. package/types/src/core/Raycaster.d.ts +208 -0
  348. package/types/src/core/RenderTarget.d.ts +96 -0
  349. package/types/src/core/Uniform.d.ts +38 -0
  350. package/types/src/core/UniformsGroup.d.ts +33 -0
  351. package/types/src/extras/Controls.d.ts +54 -0
  352. package/types/src/extras/DataUtils.d.ts +22 -0
  353. package/types/src/extras/Earcut.d.ts +15 -0
  354. package/types/src/extras/ImageUtils.d.ts +32 -0
  355. package/types/src/extras/PMREMGenerator.d.ts +82 -0
  356. package/types/src/extras/ShapeUtils.d.ts +25 -0
  357. package/types/src/extras/TextureUtils.d.ts +42 -0
  358. package/types/src/extras/core/Curve.d.ts +162 -0
  359. package/types/src/extras/core/CurvePath.d.ts +77 -0
  360. package/types/src/extras/core/Interpolations.d.ts +36 -0
  361. package/types/src/extras/core/Path.d.ts +166 -0
  362. package/types/src/extras/core/Shape.d.ts +86 -0
  363. package/types/src/extras/core/ShapePath.d.ts +98 -0
  364. package/types/src/extras/curves/ArcCurve.d.ts +41 -0
  365. package/types/src/extras/curves/CatmullRomCurve3.d.ts +77 -0
  366. package/types/src/extras/curves/CubicBezierCurve.d.ts +72 -0
  367. package/types/src/extras/curves/CubicBezierCurve3.d.ts +72 -0
  368. package/types/src/extras/curves/Curves.d.ts +10 -0
  369. package/types/src/extras/curves/EllipseCurve.d.ts +115 -0
  370. package/types/src/extras/curves/LineCurve.d.ts +42 -0
  371. package/types/src/extras/curves/LineCurve3.d.ts +42 -0
  372. package/types/src/extras/curves/QuadraticBezierCurve.d.ts +64 -0
  373. package/types/src/extras/curves/QuadraticBezierCurve3.d.ts +64 -0
  374. package/types/src/extras/curves/SplineCurve.d.ts +52 -0
  375. package/types/src/geometries/BoxGeometry.d.ts +59 -0
  376. package/types/src/geometries/CapsuleGeometry.d.ts +48 -0
  377. package/types/src/geometries/CircleGeometry.d.ts +51 -0
  378. package/types/src/geometries/ConeGeometry.d.ts +64 -0
  379. package/types/src/geometries/CylinderGeometry.d.ts +64 -0
  380. package/types/src/geometries/DodecahedronGeometry.d.ts +25 -0
  381. package/types/src/geometries/EdgesGeometry.d.ts +41 -0
  382. package/types/src/geometries/ExtrudeGeometry.d.ts +152 -0
  383. package/types/src/geometries/Geometries.d.ts +21 -0
  384. package/types/src/geometries/IcosahedronGeometry.d.ts +26 -0
  385. package/types/src/geometries/LatheGeometry.d.ts +55 -0
  386. package/types/src/geometries/OctahedronGeometry.d.ts +25 -0
  387. package/types/src/geometries/PlaneGeometry.d.ts +48 -0
  388. package/types/src/geometries/PolyhedronGeometry.d.ts +54 -0
  389. package/types/src/geometries/RingGeometry.d.ts +59 -0
  390. package/types/src/geometries/ShapeGeometry.d.ts +53 -0
  391. package/types/src/geometries/SphereGeometry.d.ts +67 -0
  392. package/types/src/geometries/TetrahedronGeometry.d.ts +25 -0
  393. package/types/src/geometries/TorusGeometry.d.ts +49 -0
  394. package/types/src/geometries/TorusKnotGeometry.d.ts +59 -0
  395. package/types/src/geometries/TubeGeometry.d.ts +86 -0
  396. package/types/src/geometries/WireframeGeometry.d.ts +40 -0
  397. package/types/src/helpers/ArrowHelper.d.ts +93 -0
  398. package/types/src/helpers/AxesHelper.d.ts +50 -0
  399. package/types/src/helpers/Box3Helper.d.ts +44 -0
  400. package/types/src/helpers/BoxHelper.d.ts +64 -0
  401. package/types/src/helpers/CameraHelper.d.ts +80 -0
  402. package/types/src/helpers/DirectionalLightHelper.d.ts +81 -0
  403. package/types/src/helpers/GridHelper.d.ts +47 -0
  404. package/types/src/helpers/HemisphereLightHelper.d.ts +72 -0
  405. package/types/src/helpers/PlaneHelper.d.ts +50 -0
  406. package/types/src/helpers/PointLightHelper.d.ts +73 -0
  407. package/types/src/helpers/PolarGridHelper.d.ts +55 -0
  408. package/types/src/helpers/SkeletonHelper.d.ts +78 -0
  409. package/types/src/helpers/SpotLightHelper.d.ts +77 -0
  410. package/types/src/lights/AmbientLight.d.ts +36 -0
  411. package/types/src/lights/DirectionalLight.d.ts +103 -0
  412. package/types/src/lights/DirectionalLightShadow.d.ts +73 -0
  413. package/types/src/lights/HemisphereLight.d.ts +61 -0
  414. package/types/src/lights/Light.d.ts +82 -0
  415. package/types/src/lights/LightProbe.d.ts +47 -0
  416. package/types/src/lights/LightShadow.d.ts +169 -0
  417. package/types/src/lights/PointLight.d.ts +102 -0
  418. package/types/src/lights/PointLightShadow.d.ts +22 -0
  419. package/types/src/lights/RectAreaLight.d.ts +82 -0
  420. package/types/src/lights/SpotLight.d.ts +164 -0
  421. package/types/src/lights/SpotLightShadow.d.ts +72 -0
  422. package/types/src/lights/webgpu/IESSpotLight.d.ts +6 -0
  423. package/types/src/loaders/AnimationLoader.d.ts +9 -0
  424. package/types/src/loaders/AudioLoader.d.ts +6 -0
  425. package/types/src/loaders/BufferGeometryLoader.d.ts +10 -0
  426. package/types/src/loaders/Cache.d.ts +21 -0
  427. package/types/src/loaders/CompressedTextureLoader.d.ts +14 -0
  428. package/types/src/loaders/CubeTextureLoader.d.ts +14 -0
  429. package/types/src/loaders/DataTextureLoader.d.ts +14 -0
  430. package/types/src/loaders/FileLoader.d.ts +19 -0
  431. package/types/src/loaders/ImageBitmapLoader.d.ts +22 -0
  432. package/types/src/loaders/ImageLoader.d.ts +17 -0
  433. package/types/src/loaders/Loader.d.ts +50 -0
  434. package/types/src/loaders/LoaderUtils.d.ts +10 -0
  435. package/types/src/loaders/LoadingManager.d.ts +69 -0
  436. package/types/src/loaders/MaterialLoader.d.ts +21 -0
  437. package/types/src/loaders/ObjectLoader.d.ts +35 -0
  438. package/types/src/loaders/TextureLoader.d.ts +18 -0
  439. package/types/src/loaders/nodes/NodeLoader.d.ts +21 -0
  440. package/types/src/loaders/nodes/NodeMaterialLoader.d.ts +11 -0
  441. package/types/src/loaders/nodes/NodeObjectLoader.d.ts +22 -0
  442. package/types/src/materials/LineBasicMaterial.d.ts +60 -0
  443. package/types/src/materials/LineDashedMaterial.d.ts +40 -0
  444. package/types/src/materials/Material.d.ts +631 -0
  445. package/types/src/materials/Materials.d.ts +18 -0
  446. package/types/src/materials/MeshBasicMaterial.d.ts +139 -0
  447. package/types/src/materials/MeshDepthMaterial.d.ts +76 -0
  448. package/types/src/materials/MeshDistanceMaterial.d.ts +62 -0
  449. package/types/src/materials/MeshLambertMaterial.d.ts +204 -0
  450. package/types/src/materials/MeshMatcapMaterial.d.ts +117 -0
  451. package/types/src/materials/MeshNormalMaterial.d.ts +93 -0
  452. package/types/src/materials/MeshPhongMaterial.d.ts +228 -0
  453. package/types/src/materials/MeshPhysicalMaterial.d.ts +236 -0
  454. package/types/src/materials/MeshStandardMaterial.d.ts +218 -0
  455. package/types/src/materials/MeshToonMaterial.d.ts +178 -0
  456. package/types/src/materials/PointsMaterial.d.ts +61 -0
  457. package/types/src/materials/RawShaderMaterial.d.ts +14 -0
  458. package/types/src/materials/ShaderMaterial.d.ts +167 -0
  459. package/types/src/materials/ShadowMaterial.d.ts +39 -0
  460. package/types/src/materials/SpriteMaterial.d.ts +66 -0
  461. package/types/src/materials/nodes/InstancedPointsNodeMaterial.d.ts +33 -0
  462. package/types/src/materials/nodes/Line2NodeMaterial.d.ts +53 -0
  463. package/types/src/materials/nodes/LineBasicNodeMaterial.d.ts +22 -0
  464. package/types/src/materials/nodes/LineDashedNodeMaterial.d.ts +29 -0
  465. package/types/src/materials/nodes/MeshBasicNodeMaterial.d.ts +36 -0
  466. package/types/src/materials/nodes/MeshLambertNodeMaterial.d.ts +49 -0
  467. package/types/src/materials/nodes/MeshMatcapNodeMaterial.d.ts +32 -0
  468. package/types/src/materials/nodes/MeshNormalNodeMaterial.d.ts +28 -0
  469. package/types/src/materials/nodes/MeshPhongNodeMaterial.d.ts +56 -0
  470. package/types/src/materials/nodes/MeshPhysicalNodeMaterial.d.ts +93 -0
  471. package/types/src/materials/nodes/MeshSSSNodeMaterial.d.ts +16 -0
  472. package/types/src/materials/nodes/MeshStandardNodeMaterial.d.ts +56 -0
  473. package/types/src/materials/nodes/MeshToonNodeMaterial.d.ts +42 -0
  474. package/types/src/materials/nodes/NodeMaterial.d.ts +89 -0
  475. package/types/src/materials/nodes/NodeMaterials.d.ts +18 -0
  476. package/types/src/materials/nodes/PointsNodeMaterial.d.ts +21 -0
  477. package/types/src/materials/nodes/ShadowNodeMaterial.d.ts +17 -0
  478. package/types/src/materials/nodes/SpriteNodeMaterial.d.ts +26 -0
  479. package/types/src/materials/nodes/VolumeNodeMaterial.d.ts +10 -0
  480. package/types/src/materials/nodes/manager/NodeMaterialObserver.d.ts +81 -0
  481. package/types/src/math/Box2.d.ts +48 -0
  482. package/types/src/math/Box3.d.ts +66 -0
  483. package/types/src/math/Color.d.ts +358 -0
  484. package/types/src/math/ColorManagement.d.ts +49 -0
  485. package/types/src/math/Cylindrical.d.ts +26 -0
  486. package/types/src/math/Euler.d.ts +50 -0
  487. package/types/src/math/Frustum.d.ts +30 -0
  488. package/types/src/math/Interpolant.d.ts +10 -0
  489. package/types/src/math/Line3.d.ts +29 -0
  490. package/types/src/math/MathUtils.d.ts +137 -0
  491. package/types/src/math/Matrix2.d.ts +53 -0
  492. package/types/src/math/Matrix3.d.ts +184 -0
  493. package/types/src/math/Matrix4.d.ts +284 -0
  494. package/types/src/math/Plane.d.ts +47 -0
  495. package/types/src/math/Quaternion.d.ts +189 -0
  496. package/types/src/math/Ray.d.ts +60 -0
  497. package/types/src/math/Sphere.d.ts +47 -0
  498. package/types/src/math/Spherical.d.ts +27 -0
  499. package/types/src/math/SphericalHarmonics3.d.ts +50 -0
  500. package/types/src/math/Triangle.d.ts +110 -0
  501. package/types/src/math/Vector2.d.ts +321 -0
  502. package/types/src/math/Vector3.d.ts +301 -0
  503. package/types/src/math/Vector4.d.ts +239 -0
  504. package/types/src/math/interpolants/CubicInterpolant.d.ts +7 -0
  505. package/types/src/math/interpolants/DiscreteInterpolant.d.ts +7 -0
  506. package/types/src/math/interpolants/LinearInterpolant.d.ts +7 -0
  507. package/types/src/math/interpolants/QuaternionLinearInterpolant.d.ts +7 -0
  508. package/types/src/nodes/Nodes.d.ts +176 -0
  509. package/types/src/nodes/TSL.d.ts +175 -0
  510. package/types/src/nodes/accessors/AccessorsUtils.d.ts +9 -0
  511. package/types/src/nodes/accessors/BatchNode.d.ts +13 -0
  512. package/types/src/nodes/accessors/Bitangent.d.ts +9 -0
  513. package/types/src/nodes/accessors/BufferAttributeNode.d.ts +54 -0
  514. package/types/src/nodes/accessors/BufferNode.d.ts +17 -0
  515. package/types/src/nodes/accessors/Camera.d.ts +15 -0
  516. package/types/src/nodes/accessors/ClippingNode.d.ts +16 -0
  517. package/types/src/nodes/accessors/CubeTextureNode.d.ts +28 -0
  518. package/types/src/nodes/accessors/InstanceNode.d.ts +13 -0
  519. package/types/src/nodes/accessors/MaterialNode.d.ts +129 -0
  520. package/types/src/nodes/accessors/MaterialProperties.d.ts +4 -0
  521. package/types/src/nodes/accessors/MaterialReferenceNode.d.ts +15 -0
  522. package/types/src/nodes/accessors/ModelNode.d.ts +24 -0
  523. package/types/src/nodes/accessors/ModelViewProjectionNode.d.ts +8 -0
  524. package/types/src/nodes/accessors/MorphNode.d.ts +15 -0
  525. package/types/src/nodes/accessors/Normal.d.ts +25 -0
  526. package/types/src/nodes/accessors/Object3DNode.d.ts +22 -0
  527. package/types/src/nodes/accessors/PointUVNode.d.ts +10 -0
  528. package/types/src/nodes/accessors/Position.d.ts +10 -0
  529. package/types/src/nodes/accessors/ReferenceBaseNode.d.ts +27 -0
  530. package/types/src/nodes/accessors/ReferenceNode.d.ts +29 -0
  531. package/types/src/nodes/accessors/ReflectVector.d.ts +9 -0
  532. package/types/src/nodes/accessors/RendererReferenceNode.d.ts +15 -0
  533. package/types/src/nodes/accessors/SceneNode.d.ts +20 -0
  534. package/types/src/nodes/accessors/SkinningNode.d.ts +30 -0
  535. package/types/src/nodes/accessors/StorageBufferNode.d.ts +38 -0
  536. package/types/src/nodes/accessors/StorageTextureNode.d.ts +40 -0
  537. package/types/src/nodes/accessors/Tangent.d.ts +12 -0
  538. package/types/src/nodes/accessors/Texture3DNode.d.ts +17 -0
  539. package/types/src/nodes/accessors/TextureBicubic.d.ts +4 -0
  540. package/types/src/nodes/accessors/TextureNode.d.ts +66 -0
  541. package/types/src/nodes/accessors/TextureSizeNode.d.ts +18 -0
  542. package/types/src/nodes/accessors/UV.d.ts +4 -0
  543. package/types/src/nodes/accessors/UniformArrayNode.d.ts +30 -0
  544. package/types/src/nodes/accessors/UserDataNode.d.ts +15 -0
  545. package/types/src/nodes/accessors/VelocityNode.d.ts +16 -0
  546. package/types/src/nodes/accessors/VertexColorNode.d.ts +12 -0
  547. package/types/src/nodes/code/CodeNode.d.ts +23 -0
  548. package/types/src/nodes/code/ExpressionNode.d.ts +9 -0
  549. package/types/src/nodes/code/FunctionCallNode.d.ts +25 -0
  550. package/types/src/nodes/code/FunctionNode.d.ts +38 -0
  551. package/types/src/nodes/code/ScriptableNode.d.ts +22 -0
  552. package/types/src/nodes/code/ScriptableValueNode.d.ts +10 -0
  553. package/types/src/nodes/core/AssignNode.d.ts +18 -0
  554. package/types/src/nodes/core/AttributeNode.d.ts +16 -0
  555. package/types/src/nodes/core/BypassNode.d.ts +18 -0
  556. package/types/src/nodes/core/CacheNode.d.ts +20 -0
  557. package/types/src/nodes/core/ConstNode.d.ts +9 -0
  558. package/types/src/nodes/core/ContextNode.d.ts +24 -0
  559. package/types/src/nodes/core/IndexNode.d.ts +28 -0
  560. package/types/src/nodes/core/InputNode.d.ts +15 -0
  561. package/types/src/nodes/core/LightingModel.d.ts +46 -0
  562. package/types/src/nodes/core/MRTNode.d.ts +24 -0
  563. package/types/src/nodes/core/Node.d.ts +111 -0
  564. package/types/src/nodes/core/NodeAttribute.d.ts +9 -0
  565. package/types/src/nodes/core/NodeBuilder.d.ts +143 -0
  566. package/types/src/nodes/core/NodeCache.d.ts +52 -0
  567. package/types/src/nodes/core/NodeCode.d.ts +4 -0
  568. package/types/src/nodes/core/NodeFrame.d.ts +34 -0
  569. package/types/src/nodes/core/NodeFunction.d.ts +13 -0
  570. package/types/src/nodes/core/NodeFunctionInput.d.ts +7 -0
  571. package/types/src/nodes/core/NodeParser.d.ts +5 -0
  572. package/types/src/nodes/core/NodeUniform.d.ts +14 -0
  573. package/types/src/nodes/core/NodeUtils.d.ts +25 -0
  574. package/types/src/nodes/core/NodeVar.d.ts +7 -0
  575. package/types/src/nodes/core/NodeVarying.d.ts +7 -0
  576. package/types/src/nodes/core/OutputStructNode.d.ts +12 -0
  577. package/types/src/nodes/core/ParameterNode.d.ts +12 -0
  578. package/types/src/nodes/core/PropertyNode.d.ts +43 -0
  579. package/types/src/nodes/core/StackNode.d.ts +27 -0
  580. package/types/src/nodes/core/StructTypeNode.d.ts +9 -0
  581. package/types/src/nodes/core/TempNode.d.ts +10 -0
  582. package/types/src/nodes/core/UniformGroup.d.ts +7 -0
  583. package/types/src/nodes/core/UniformGroupNode.d.ts +21 -0
  584. package/types/src/nodes/core/UniformNode.d.ts +24 -0
  585. package/types/src/nodes/core/VarNode.d.ts +20 -0
  586. package/types/src/nodes/core/VaryingNode.d.ts +21 -0
  587. package/types/src/nodes/core/constants.d.ts +27 -0
  588. package/types/src/nodes/display/AfterImageNode.d.ts +19 -0
  589. package/types/src/nodes/display/AnaglyphPassNode.d.ts +14 -0
  590. package/types/src/nodes/display/AnamorphicNode.d.ts +25 -0
  591. package/types/src/nodes/display/BleachBypass.d.ts +4 -0
  592. package/types/src/nodes/display/BlendMode.d.ts +10 -0
  593. package/types/src/nodes/display/BloomNode.d.ts +29 -0
  594. package/types/src/nodes/display/BumpMapNode.d.ts +16 -0
  595. package/types/src/nodes/display/ColorAdjustment.d.ts +27 -0
  596. package/types/src/nodes/display/ColorSpaceFunctions.d.ts +6 -0
  597. package/types/src/nodes/display/ColorSpaceNode.d.ts +54 -0
  598. package/types/src/nodes/display/DenoiseNode.d.ts +32 -0
  599. package/types/src/nodes/display/DepthOfFieldNode.d.ts +26 -0
  600. package/types/src/nodes/display/DotScreenNode.d.ts +23 -0
  601. package/types/src/nodes/display/FXAANode.d.ts +13 -0
  602. package/types/src/nodes/display/FilmNode.d.ts +19 -0
  603. package/types/src/nodes/display/FrontFacingNode.d.ts +12 -0
  604. package/types/src/nodes/display/GTAONode.d.ts +40 -0
  605. package/types/src/nodes/display/GaussianBlurNode.d.ts +27 -0
  606. package/types/src/nodes/display/Lut3DNode.d.ts +24 -0
  607. package/types/src/nodes/display/MotionBlur.d.ts +8 -0
  608. package/types/src/nodes/display/NormalMapNode.d.ts +17 -0
  609. package/types/src/nodes/display/ParallaxBarrierPassNode.d.ts +14 -0
  610. package/types/src/nodes/display/PassNode.d.ts +71 -0
  611. package/types/src/nodes/display/PixelationPassNode.d.ts +31 -0
  612. package/types/src/nodes/display/PosterizeNode.d.ts +14 -0
  613. package/types/src/nodes/display/RGBShiftNode.d.ts +18 -0
  614. package/types/src/nodes/display/RenderOutputNode.d.ts +28 -0
  615. package/types/src/nodes/display/SSAAPassNode.d.ts +26 -0
  616. package/types/src/nodes/display/ScreenNode.d.ts +48 -0
  617. package/types/src/nodes/display/Sepia.d.ts +4 -0
  618. package/types/src/nodes/display/SobelOperatorNode.d.ts +13 -0
  619. package/types/src/nodes/display/StereoCompositePassNode.d.ts +17 -0
  620. package/types/src/nodes/display/StereoPassNode.d.ts +17 -0
  621. package/types/src/nodes/display/ToneMappingFunctions.d.ts +14 -0
  622. package/types/src/nodes/display/ToneMappingNode.d.ts +32 -0
  623. package/types/src/nodes/display/ToonOutlinePassNode.d.ts +24 -0
  624. package/types/src/nodes/display/TransitionNode.d.ts +35 -0
  625. package/types/src/nodes/display/ViewportDepthNode.d.ts +34 -0
  626. package/types/src/nodes/display/ViewportDepthTextureNode.d.ts +14 -0
  627. package/types/src/nodes/display/ViewportSharedTextureNode.d.ts +14 -0
  628. package/types/src/nodes/display/ViewportTextureNode.d.ts +28 -0
  629. package/types/src/nodes/fog/FogExp2Node.d.ts +14 -0
  630. package/types/src/nodes/fog/FogNode.d.ts +20 -0
  631. package/types/src/nodes/fog/FogRangeNode.d.ts +19 -0
  632. package/types/src/nodes/functions/BSDF/BRDF_GGX.d.ts +15 -0
  633. package/types/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +7 -0
  634. package/types/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +7 -0
  635. package/types/src/nodes/functions/BSDF/DFGApprox.d.ts +11 -0
  636. package/types/src/nodes/functions/BSDF/D_GGX.d.ts +10 -0
  637. package/types/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +10 -0
  638. package/types/src/nodes/functions/BSDF/F_Schlick.d.ts +7 -0
  639. package/types/src/nodes/functions/BSDF/LTC.d.ts +9 -0
  640. package/types/src/nodes/functions/BSDF/Schlick_to_F0.d.ts +10 -0
  641. package/types/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +11 -0
  642. package/types/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +16 -0
  643. package/types/src/nodes/functions/BasicLightingModel.d.ts +7 -0
  644. package/types/src/nodes/functions/PhongLightingModel.d.ts +7 -0
  645. package/types/src/nodes/functions/PhysicalLightingModel.d.ts +30 -0
  646. package/types/src/nodes/functions/ShadowMaskModel.d.ts +9 -0
  647. package/types/src/nodes/functions/ToonLightingModel.d.ts +4 -0
  648. package/types/src/nodes/functions/material/getGeometryRoughness.d.ts +6 -0
  649. package/types/src/nodes/functions/material/getRoughness.d.ts +7 -0
  650. package/types/src/nodes/functions/material/getShIrradianceAt.d.ts +6 -0
  651. package/types/src/nodes/geometry/RangeNode.d.ts +19 -0
  652. package/types/src/nodes/gpgpu/ComputeNode.d.ts +24 -0
  653. package/types/src/nodes/lighting/AONode.d.ts +8 -0
  654. package/types/src/nodes/lighting/AmbientLightNode.d.ts +8 -0
  655. package/types/src/nodes/lighting/AnalyticLightNode.d.ts +8 -0
  656. package/types/src/nodes/lighting/BasicEnvironmentNode.d.ts +10 -0
  657. package/types/src/nodes/lighting/BasicLightMapNode.d.ts +8 -0
  658. package/types/src/nodes/lighting/DirectionalLightNode.d.ts +8 -0
  659. package/types/src/nodes/lighting/EnvironmentNode.d.ts +8 -0
  660. package/types/src/nodes/lighting/HemisphereLightNode.d.ts +13 -0
  661. package/types/src/nodes/lighting/IESSpotLightNode.d.ts +5 -0
  662. package/types/src/nodes/lighting/IrradianceNode.d.ts +8 -0
  663. package/types/src/nodes/lighting/LightNode.d.ts +18 -0
  664. package/types/src/nodes/lighting/LightProbeNode.d.ts +11 -0
  665. package/types/src/nodes/lighting/LightUtils.d.ts +9 -0
  666. package/types/src/nodes/lighting/LightingContextNode.d.ts +21 -0
  667. package/types/src/nodes/lighting/LightingNode.d.ts +7 -0
  668. package/types/src/nodes/lighting/LightsNode.d.ts +18 -0
  669. package/types/src/nodes/lighting/PointLightNode.d.ts +10 -0
  670. package/types/src/nodes/lighting/RectAreaLightNode.d.ts +21 -0
  671. package/types/src/nodes/lighting/SpotLightNode.d.ts +15 -0
  672. package/types/src/nodes/materialx/MaterialXNodes.d.ts +107 -0
  673. package/types/src/nodes/materialx/lib/mx_hsv.d.ts +6 -0
  674. package/types/src/nodes/materialx/lib/mx_noise.d.ts +359 -0
  675. package/types/src/nodes/materialx/lib/mx_transform_color.d.ts +4 -0
  676. package/types/src/nodes/math/ConditionalNode.d.ts +39 -0
  677. package/types/src/nodes/math/Hash.d.ts +4 -0
  678. package/types/src/nodes/math/MathNode.d.ts +273 -0
  679. package/types/src/nodes/math/MathUtils.d.ts +6 -0
  680. package/types/src/nodes/math/OperatorNode.d.ts +97 -0
  681. package/types/src/nodes/math/TriNoise3D.d.ts +12 -0
  682. package/types/src/nodes/parsers/GLSLNodeFunction.d.ts +9 -0
  683. package/types/src/nodes/parsers/GLSLNodeParser.d.ts +8 -0
  684. package/types/src/nodes/pmrem/PMREMNode.d.ts +22 -0
  685. package/types/src/nodes/pmrem/PMREMUtils.d.ts +28 -0
  686. package/types/src/nodes/procedural/Checker.d.ts +4 -0
  687. package/types/src/nodes/tsl/TSLBase.d.ts +21 -0
  688. package/types/src/nodes/tsl/TSLCore.d.ts +273 -0
  689. package/types/src/nodes/utils/ArrayElementNode.d.ts +9 -0
  690. package/types/src/nodes/utils/ConvertNode.d.ts +7 -0
  691. package/types/src/nodes/utils/CubeMapNode.d.ts +13 -0
  692. package/types/src/nodes/utils/Discard.d.ts +11 -0
  693. package/types/src/nodes/utils/EquirectUVNode.d.ts +8 -0
  694. package/types/src/nodes/utils/FunctionOverloadingNode.d.ts +13 -0
  695. package/types/src/nodes/utils/JoinNode.d.ts +10 -0
  696. package/types/src/nodes/utils/LoopNode.d.ts +22 -0
  697. package/types/src/nodes/utils/MatcapUVNode.d.ts +8 -0
  698. package/types/src/nodes/utils/MaxMipLevelNode.d.ts +14 -0
  699. package/types/src/nodes/utils/OscNode.d.ts +25 -0
  700. package/types/src/nodes/utils/Packing.d.ts +5 -0
  701. package/types/src/nodes/utils/RTTNode.d.ts +45 -0
  702. package/types/src/nodes/utils/ReflectorNode.d.ts +32 -0
  703. package/types/src/nodes/utils/RemapNode.d.ts +36 -0
  704. package/types/src/nodes/utils/RotateNode.d.ts +15 -0
  705. package/types/src/nodes/utils/SetNode.d.ts +11 -0
  706. package/types/src/nodes/utils/SplitNode.d.ts +15 -0
  707. package/types/src/nodes/utils/SpriteSheetUVNode.d.ts +16 -0
  708. package/types/src/nodes/utils/SpriteUtils.d.ts +6 -0
  709. package/types/src/nodes/utils/StorageArrayElementNode.d.ts +19 -0
  710. package/types/src/nodes/utils/TimerNode.d.ts +25 -0
  711. package/types/src/nodes/utils/TriplanarTexturesNode.d.ts +36 -0
  712. package/types/src/nodes/utils/UVUtils.d.ts +14 -0
  713. package/types/src/nodes/utils/ViewportUtils.d.ts +4 -0
  714. package/types/src/objects/BatchedMesh.d.ts +230 -0
  715. package/types/src/objects/Bone.d.ts +36 -0
  716. package/types/src/objects/Group.d.ts +37 -0
  717. package/types/src/objects/InstancedMesh.d.ts +179 -0
  718. package/types/src/objects/LOD.d.ts +111 -0
  719. package/types/src/objects/Line.d.ts +87 -0
  720. package/types/src/objects/LineLoop.d.ts +40 -0
  721. package/types/src/objects/LineSegments.d.ts +41 -0
  722. package/types/src/objects/Mesh.d.ts +94 -0
  723. package/types/src/objects/Points.d.ts +66 -0
  724. package/types/src/objects/Skeleton.d.ts +120 -0
  725. package/types/src/objects/SkinnedMesh.d.ts +160 -0
  726. package/types/src/objects/Sprite.d.ts +65 -0
  727. package/types/src/renderers/WebGL3DRenderTarget.d.ts +29 -0
  728. package/types/src/renderers/WebGLArrayRenderTarget.d.ts +29 -0
  729. package/types/src/renderers/WebGLCubeRenderTarget.d.ts +18 -0
  730. package/types/src/renderers/WebGLRenderTarget.d.ts +8 -0
  731. package/types/src/renderers/WebGLRenderer.d.ts +552 -0
  732. package/types/src/renderers/common/Animation.d.ts +13 -0
  733. package/types/src/renderers/common/Attributes.d.ts +22 -0
  734. package/types/src/renderers/common/Backend.d.ts +19 -0
  735. package/types/src/renderers/common/Background.d.ts +23 -0
  736. package/types/src/renderers/common/BindGroup.d.ts +16 -0
  737. package/types/src/renderers/common/Binding.d.ts +8 -0
  738. package/types/src/renderers/common/Bindings.d.ts +42 -0
  739. package/types/src/renderers/common/Buffer.d.ts +11 -0
  740. package/types/src/renderers/common/BufferUtils.d.ts +4 -0
  741. package/types/src/renderers/common/BundleGroup.d.ts +10 -0
  742. package/types/src/renderers/common/ChainMap.d.ts +9 -0
  743. package/types/src/renderers/common/ClippingContext.d.ts +24 -0
  744. package/types/src/renderers/common/Color4.d.ts +10 -0
  745. package/types/src/renderers/common/ComputePipeline.d.ts +8 -0
  746. package/types/src/renderers/common/Constants.d.ts +9 -0
  747. package/types/src/renderers/common/CubeRenderTarget.d.ts +10 -0
  748. package/types/src/renderers/common/DataMap.d.ts +20 -0
  749. package/types/src/renderers/common/Geometries.d.ts +31 -0
  750. package/types/src/renderers/common/Info.d.ts +34 -0
  751. package/types/src/renderers/common/Pipeline.d.ts +6 -0
  752. package/types/src/renderers/common/Pipelines.d.ts +68 -0
  753. package/types/src/renderers/common/PostProcessing.d.ts +21 -0
  754. package/types/src/renderers/common/ProgrammableStage.d.ts +15 -0
  755. package/types/src/renderers/common/QuadMesh.d.ts +16 -0
  756. package/types/src/renderers/common/RenderBundle.d.ts +9 -0
  757. package/types/src/renderers/common/RenderBundles.d.ts +11 -0
  758. package/types/src/renderers/common/RenderContext.d.ts +43 -0
  759. package/types/src/renderers/common/RenderContexts.d.ts +17 -0
  760. package/types/src/renderers/common/RenderList.d.ts +67 -0
  761. package/types/src/renderers/common/RenderLists.d.ts +11 -0
  762. package/types/src/renderers/common/RenderObject.d.ts +94 -0
  763. package/types/src/renderers/common/RenderObjects.d.ts +62 -0
  764. package/types/src/renderers/common/RenderPipeline.d.ts +8 -0
  765. package/types/src/renderers/common/Renderer.d.ts +296 -0
  766. package/types/src/renderers/common/SampledTexture.d.ts +33 -0
  767. package/types/src/renderers/common/Sampler.d.ts +11 -0
  768. package/types/src/renderers/common/StorageBufferAttribute.d.ts +7 -0
  769. package/types/src/renderers/common/StorageInstancedBufferAttribute.d.ts +8 -0
  770. package/types/src/renderers/common/StorageTexture.d.ts +5 -0
  771. package/types/src/renderers/common/Textures.d.ts +68 -0
  772. package/types/src/renderers/common/Uniform.d.ts +45 -0
  773. package/types/src/renderers/common/UniformBuffer.d.ts +6 -0
  774. package/types/src/renderers/common/UniformsGroup.d.ts +32 -0
  775. package/types/src/renderers/common/extras/PMREMGenerator.d.ts +9 -0
  776. package/types/src/renderers/common/nodes/NodeBuilderState.d.ts +31 -0
  777. package/types/src/renderers/common/nodes/NodeLibrary.d.ts +56 -0
  778. package/types/src/renderers/common/nodes/NodeSampledTexture.d.ts +29 -0
  779. package/types/src/renderers/common/nodes/NodeSampler.d.ts +12 -0
  780. package/types/src/renderers/common/nodes/NodeUniform.d.ts +68 -0
  781. package/types/src/renderers/common/nodes/NodeUniformsGroup.d.ts +10 -0
  782. package/types/src/renderers/common/nodes/Nodes.d.ts +114 -0
  783. package/types/src/renderers/common/nodes/StandardNodeLibrary.d.ts +5 -0
  784. package/types/src/renderers/shaders/ShaderChunk.d.ts +143 -0
  785. package/types/src/renderers/shaders/ShaderLib.d.ts +29 -0
  786. package/types/src/renderers/shaders/UniformsLib.d.ts +189 -0
  787. package/types/src/renderers/shaders/UniformsUtils.d.ts +14 -0
  788. package/types/src/renderers/webgl/WebGLAttributes.d.ts +21 -0
  789. package/types/src/renderers/webgl/WebGLBindingStates.d.ts +26 -0
  790. package/types/src/renderers/webgl/WebGLBufferRenderer.d.ts +21 -0
  791. package/types/src/renderers/webgl/WebGLCapabilities.d.ts +48 -0
  792. package/types/src/renderers/webgl/WebGLClipping.d.ts +26 -0
  793. package/types/src/renderers/webgl/WebGLCubeMaps.d.ts +8 -0
  794. package/types/src/renderers/webgl/WebGLCubeUVMaps.d.ts +9 -0
  795. package/types/src/renderers/webgl/WebGLExtensions.d.ts +7 -0
  796. package/types/src/renderers/webgl/WebGLGeometries.d.ts +13 -0
  797. package/types/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +15 -0
  798. package/types/src/renderers/webgl/WebGLInfo.d.ts +39 -0
  799. package/types/src/renderers/webgl/WebGLLights.d.ts +49 -0
  800. package/types/src/renderers/webgl/WebGLObjects.d.ts +6 -0
  801. package/types/src/renderers/webgl/WebGLProgram.d.ts +30 -0
  802. package/types/src/renderers/webgl/WebGLPrograms.d.ts +240 -0
  803. package/types/src/renderers/webgl/WebGLProperties.d.ts +9 -0
  804. package/types/src/renderers/webgl/WebGLRenderLists.d.ts +66 -0
  805. package/types/src/renderers/webgl/WebGLShader.d.ts +1 -0
  806. package/types/src/renderers/webgl/WebGLShadowMap.d.ts +38 -0
  807. package/types/src/renderers/webgl/WebGLState.d.ts +116 -0
  808. package/types/src/renderers/webgl/WebGLTextures.d.ts +30 -0
  809. package/types/src/renderers/webgl/WebGLUniforms.d.ts +12 -0
  810. package/types/src/renderers/webgl/WebGLUniformsGroups.d.ts +17 -0
  811. package/types/src/renderers/webgl/WebGLUtils.d.ts +11 -0
  812. package/types/src/renderers/webgl-fallback/WebGLBackend.d.ts +14 -0
  813. package/types/src/renderers/webgpu/WebGPUBackend.d.ts +25 -0
  814. package/types/src/renderers/webgpu/WebGPURenderer.Nodes.d.ts +12 -0
  815. package/types/src/renderers/webgpu/WebGPURenderer.d.ts +14 -0
  816. package/types/src/renderers/webgpu/nodes/BasicNodeLibrary.d.ts +5 -0
  817. package/types/src/renderers/webgpu/nodes/StandardNodeLibrary.d.ts +5 -0
  818. package/types/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +125 -0
  819. package/types/src/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +6 -0
  820. package/types/src/renderers/webgpu/nodes/WGSLNodeParser.d.ts +6 -0
  821. package/types/src/renderers/webgpu/utils/WebGPUConstants.d.ts +328 -0
  822. package/types/src/renderers/webxr/WebXRController.d.ts +63 -0
  823. package/types/src/renderers/webxr/WebXRDepthSensing.d.ts +22 -0
  824. package/types/src/renderers/webxr/WebXRManager.d.ts +85 -0
  825. package/types/src/scenes/Fog.d.ts +77 -0
  826. package/types/src/scenes/FogExp2.d.ts +66 -0
  827. package/types/src/scenes/Scene.d.ts +118 -0
  828. package/types/src/textures/CanvasTexture.d.ts +51 -0
  829. package/types/src/textures/CompressedArrayTexture.d.ts +68 -0
  830. package/types/src/textures/CompressedCubeTexture.d.ts +13 -0
  831. package/types/src/textures/CompressedTexture.d.ts +95 -0
  832. package/types/src/textures/CubeTexture.d.ts +90 -0
  833. package/types/src/textures/Data3DTexture.d.ts +96 -0
  834. package/types/src/textures/DataArrayTexture.d.ts +123 -0
  835. package/types/src/textures/DataTexture.d.ts +113 -0
  836. package/types/src/textures/DepthTexture.d.ts +104 -0
  837. package/types/src/textures/FramebufferTexture.d.ts +62 -0
  838. package/types/src/textures/Source.d.ts +75 -0
  839. package/types/src/textures/Texture.d.ts +477 -0
  840. package/types/src/textures/VideoTexture.d.ts +90 -0
  841. package/types/src/textures/types.d.ts +9 -0
  842. package/types/src/utils.d.ts +3 -0
@@ -0,0 +1,36 @@
1
+ import TextureNode from "../accessors/TextureNode.js";
2
+ import Node from "../core/Node.js";
3
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
4
+
5
+ export default class TriplanarTexturesNode extends Node {
6
+ textureXNode: TextureNode;
7
+ textureYNode: TextureNode | null;
8
+ textureZNode: TextureNode | null;
9
+
10
+ scaleNode: ShaderNodeObject<Node>;
11
+
12
+ positionNode: ShaderNodeObject<Node>;
13
+ normalNode: ShaderNodeObject<Node>;
14
+
15
+ constructor(
16
+ textureXNode: Node,
17
+ textureYNode?: TextureNode | null,
18
+ textureZNode?: TextureNode | null,
19
+ scaleNode?: ShaderNodeObject<Node>,
20
+ positionNode?: ShaderNodeObject<Node>,
21
+ normalNode?: ShaderNodeObject<Node>,
22
+ );
23
+ }
24
+
25
+ export const triplanarTextures: (
26
+ textureXNode: NodeRepresentation,
27
+ textureYNode?: NodeRepresentation,
28
+ textureZNode?: NodeRepresentation,
29
+ scaleNode?: NodeRepresentation,
30
+ positionNode?: NodeRepresentation,
31
+ normalNode?: NodeRepresentation,
32
+ ) => ShaderNodeObject<TriplanarTexturesNode>;
33
+ export const triplanarTexture: (
34
+ texture: NodeRepresentation,
35
+ ...params: NodeRepresentation[]
36
+ ) => ShaderNodeObject<TriplanarTexturesNode>;
@@ -0,0 +1,14 @@
1
+ import OperatorNode from "../math/OperatorNode.js";
2
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ export const rotateUV: (
5
+ uv: NodeRepresentation,
6
+ rotation: NodeRepresentation,
7
+ center?: NodeRepresentation,
8
+ ) => ShaderNodeObject<OperatorNode>;
9
+
10
+ export const spherizeUV: (
11
+ uv: NodeRepresentation,
12
+ strength: NodeRepresentation,
13
+ center?: NodeRepresentation,
14
+ ) => ShaderNodeObject<OperatorNode>;
@@ -0,0 +1,4 @@
1
+ import Node from "../core/Node.js";
2
+ import { NodeRepresentation, ShaderNodeObject } from "../tsl/TSLCore.js";
3
+
4
+ export const viewportSafeUV: (uv?: NodeRepresentation | null) => ShaderNodeObject<Node>;
@@ -0,0 +1,230 @@
1
+ import { Camera } from "../cameras/Camera.js";
2
+ import { BufferGeometry } from "../core/BufferGeometry.js";
3
+ import { Material } from "../materials/Material.js";
4
+ import { Box3 } from "../math/Box3.js";
5
+ import { Color } from "../math/Color.js";
6
+ import { Matrix4 } from "../math/Matrix4.js";
7
+ import { Sphere } from "../math/Sphere.js";
8
+ import { Mesh } from "./Mesh.js";
9
+
10
+ /**
11
+ * A special version of {@link Mesh} with multi draw batch rendering support. Use {@link BatchedMesh} if you have to
12
+ * render a large number of objects with the same material but with different world transformations. The usage of
13
+ * {@link BatchedMesh} will help you to reduce the number of draw calls and thus improve the overall rendering
14
+ * performance in your application.
15
+ *
16
+ * If the {@link https://developer.mozilla.org/en-US/docs/Web/API/WEBGL_multi_draw WEBGL_multi_draw extension} is not
17
+ * supported then a less performant fallback is used.
18
+ *
19
+ * @example
20
+ * const box = new THREE.BoxGeometry( 1, 1, 1 );
21
+ * const sphere = new THREE.SphereGeometry( 1, 12, 12 );
22
+ * const material = new THREE.MeshBasicMaterial( { color: 0x00ff00 } );
23
+ *
24
+ * // initialize and add geometries into the batched mesh
25
+ * const batchedMesh = new BatchedMesh( 10, 5000, 10000, material );
26
+ * const boxGeometryId = batchedMesh.addGeometry( box );
27
+ * const sphereGeometryId = batchedMesh.addGeometry( sphere );
28
+ *
29
+ * // create instances of those geometries
30
+ * const boxInstancedId1 = batchedMesh.addInstance( boxGeometryId );
31
+ * const boxInstancedId2 = batchedMesh.addInstance( boxGeometryId );
32
+ *
33
+ * const sphereInstancedId1 = batchedMesh.addInstance( sphereGeometryId );
34
+ * const sphereInstancedId2 = batchedMesh.addInstance( sphereGeometryId );
35
+ *
36
+ * // position the geometries
37
+ * batchedMesh.setMatrixAt( boxInstancedId1, boxMatrix1 );
38
+ * batchedMesh.setMatrixAt( boxInstancedId2, boxMatrix2 );
39
+ *
40
+ * batchedMesh.setMatrixAt( sphereInstancedId1, sphereMatrix1 );
41
+ * batchedMesh.setMatrixAt( sphereInstancedId2, sphereMatrix2 );
42
+ *
43
+ * scene.add( batchedMesh );
44
+ *
45
+ * @also Example: {@link https://threejs.org/examples/#webgl_mesh_batch WebGL / mesh / batch}
46
+ */
47
+ declare class BatchedMesh extends Mesh<BufferGeometry, Material> {
48
+ /**
49
+ * This bounding box encloses all instances of the {@link BatchedMesh}. Can be calculated with
50
+ * {@link .computeBoundingBox()}.
51
+ * @default null
52
+ */
53
+ boundingBox: Box3 | null;
54
+
55
+ /**
56
+ * This bounding sphere encloses all instances of the {@link BatchedMesh}. Can be calculated with
57
+ * {@link .computeBoundingSphere()}.
58
+ * @default null
59
+ */
60
+ boundingSphere: Sphere | null;
61
+
62
+ customSort: ((this: this, list: Array<{ start: number; count: number; z: number }>, camera: Camera) => void) | null;
63
+
64
+ /**
65
+ * If true then the individual objects within the {@link BatchedMesh} are frustum culled.
66
+ * @default true
67
+ */
68
+ perObjectFrustumCulled: boolean;
69
+
70
+ /**
71
+ * If true then the individual objects within the {@link BatchedMesh} are sorted to improve overdraw-related
72
+ * artifacts. If the material is marked as "transparent" objects are rendered back to front and if not then they are
73
+ * rendered front to back.
74
+ * @default true
75
+ */
76
+ sortObjects: boolean;
77
+
78
+ /**
79
+ * The maximum number of individual geometries that can be stored in the {@link BatchedMesh}. Read only.
80
+ */
81
+ get maxInstanceCount(): number;
82
+
83
+ /**
84
+ * Read-only flag to check if a given object is of type {@link BatchedMesh}.
85
+ */
86
+ readonly isBatchedMesh: true;
87
+
88
+ /**
89
+ * @param maxInstanceCount the max number of individual geometries planned to be added.
90
+ * @param maxVertexCount the max number of vertices to be used by all geometries.
91
+ * @param maxIndexCount the max number of indices to be used by all geometries.
92
+ * @param material an instance of {@link Material}. Default is a new {@link MeshBasicMaterial}.
93
+ */
94
+ constructor(maxInstanceCount: number, maxVertexCount: number, maxIndexCount?: number, material?: Material);
95
+
96
+ /**
97
+ * Computes the bounding box, updating {@link .boundingBox} attribute.
98
+ * Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are `null`.
99
+ */
100
+ computeBoundingBox(): void;
101
+
102
+ /**
103
+ * Computes the bounding sphere, updating {@link .boundingSphere} attribute.
104
+ * Bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are `null`.
105
+ */
106
+ computeBoundingSphere(): void;
107
+
108
+ /**
109
+ * Frees the GPU-related resources allocated by this instance. Call this method whenever this instance is no longer
110
+ * used in your app.
111
+ */
112
+ dispose(): this;
113
+
114
+ /**
115
+ * Takes a sort a function that is run before render. The function takes a list of instances to sort and a camera.
116
+ * The objects in the list include a "z" field to perform a depth-ordered sort with.
117
+ */
118
+ setCustomSort(
119
+ sortFunction:
120
+ | ((this: this, list: Array<{ start: number; count: number; z: number }>, camera: Camera) => void)
121
+ | null,
122
+ ): this;
123
+
124
+ /**
125
+ * Get the color of the defined geometry.
126
+ * @param instanceId The id of an instance to get the color of.
127
+ * @param target The target object to copy the color in to.
128
+ */
129
+ getColorAt(instanceId: number, target: Color): void;
130
+
131
+ /**
132
+ * Get the local transformation matrix of the defined instance.
133
+ * @param instanceId The id of an instance to get the matrix of.
134
+ * @param target This 4x4 matrix will be set to the local transformation matrix of the defined instance.
135
+ */
136
+ getMatrixAt(instanceId: number, target: Matrix4): Matrix4;
137
+
138
+ /**
139
+ * Get whether the given instance is marked as "visible" or not.
140
+ * @param instanceId The id of an instance to get the visibility state of.
141
+ */
142
+ getVisibleAt(instanceId: number): boolean;
143
+
144
+ /**
145
+ * Get the range representing the subset of triangles related to the attached geometry, indicating the starting
146
+ * offset and count, or `null` if invalid.
147
+ *
148
+ * Return an object of the form: { start: Integer, count: Integer }
149
+ * @param geometryId The id of the geometry to get the range of.
150
+ * @param target Optional target object to copy the range in to.
151
+ */
152
+ getGeometryRangeAt(
153
+ geometryId: number,
154
+ target?: { start: number; count: number },
155
+ ): { start: number; count: number } | null;
156
+
157
+ /**
158
+ * Get the geometryIndex of the defined instance.
159
+ * @param instanceId The id of an instance to get the geometryIndex of.
160
+ */
161
+ getGeometryIdAt(instanceId: number): number;
162
+
163
+ /**
164
+ * Sets the given color to the defined geometry instance.
165
+ * @param instanceId The id of the instance to set the color of.
166
+ * @param color The color to set the instance to.
167
+ */
168
+ setColorAt(instanceId: number, color: Color): void;
169
+
170
+ /**
171
+ * Sets the given local transformation matrix to the defined instance.
172
+ * @param instanceId The id of an instance to set the matrix of.
173
+ * @param matrix A 4x4 matrix representing the local transformation of a single instance.
174
+ */
175
+ setMatrixAt(instanceId: number, matrix: Matrix4): this;
176
+
177
+ /**
178
+ * Sets the visibility of the instance at the given index.
179
+ * @param instanceId The id of the instance to set the visibility of.
180
+ * @param visible A boolean value indicating the visibility state.
181
+ */
182
+ setVisibleAt(instanceId: number, visible: boolean): this;
183
+
184
+ /**
185
+ * Sets the geometryIndex of the instance at the given index.
186
+ * @param instanceId The id of the instance to set the geometryIndex of.
187
+ * @param geometryId The geometryIndex to be use by the instance.
188
+ */
189
+ setGeometryIdAt(instanceId: number, geometryId: number): this;
190
+
191
+ /**
192
+ * Adds the given geometry to the {@link BatchedMesh} and returns the associated index referring to it.
193
+ * @param geometry The geometry to add into the {@link BatchedMesh}.
194
+ * @param reservedVertexRange Optional parameter specifying the amount of vertex buffer space to reserve for the
195
+ * added geometry. This is necessary if it is planned to set a new geometry at this index at a later time that is
196
+ * larger than the original geometry. Defaults to the length of the given geometry vertex buffer.
197
+ * @param reservedIndexRange Optional parameter specifying the amount of index buffer space to reserve for the added
198
+ * geometry. This is necessary if it is planned to set a new geometry at this index at a later time that is larger
199
+ * than the original geometry. Defaults to the length of the given geometry index buffer.
200
+ */
201
+ addGeometry(geometry: BufferGeometry, reservedVertexRange?: number, reservedIndexRange?: number): number;
202
+
203
+ /**
204
+ * Adds a new instance to the {@link BatchedMesh} using the geometry of the given geometryId and returns a new id
205
+ * referring to the new instance to be used by other functions.
206
+ * @param geometryId The id of a previously added geometry via "addGeometry" to add into the {@link BatchedMesh} to
207
+ * render.
208
+ */
209
+ addInstance(geometryId: number): number;
210
+
211
+ /**
212
+ * Removes an existing instance from the BatchedMesh using the given instanceId.
213
+ * @param instanceId The id of an instance to remove from the BatchedMesh that was previously added via
214
+ * "addInstance".
215
+ */
216
+ deleteInstance(instanceId: number): this;
217
+
218
+ /**
219
+ * Replaces the geometry at `geometryId` with the provided geometry. Throws an error if there is not enough space
220
+ * reserved for geometry. Calling this will change all instances that are rendering that geometry.
221
+ * @param geometryId Which geometry id to replace with this geometry.
222
+ * @param geometry The geometry to substitute at the given geometry id.
223
+ */
224
+ setGeometryAt(geometryId: number, geometry: BufferGeometry): number;
225
+
226
+ getBoundingBoxAt(geometryId: number, target: Box3): Box3 | null;
227
+ getBoundingSphereAt(geometryId: number, target: Sphere): Sphere | null;
228
+ }
229
+
230
+ export { BatchedMesh };
@@ -0,0 +1,36 @@
1
+ import { Object3D, Object3DEventMap } from "../core/Object3D.js";
2
+
3
+ /**
4
+ * A {@link Bone} which is part of a {@link THREE.Skeleton | Skeleton}
5
+ * @remarks
6
+ * The skeleton in turn is used by the {@link THREE.SkinnedMesh | SkinnedMesh}
7
+ * Bones are almost identical to a blank {@link THREE.Object3D | Object3D}.
8
+ * @example
9
+ * ```typescript
10
+ * const root = new THREE.Bone();
11
+ * const child = new THREE.Bone();
12
+ * root.add(child);
13
+ * child.position.y = 5;
14
+ * ```
15
+ * @see {@link https://threejs.org/docs/index.html#api/en/objects/Bone | Official Documentation}
16
+ * @see {@link https://github.com/mrdoob/three.js/blob/master/src/objects/Bone.js | Source}
17
+ */
18
+ export class Bone<TEventMap extends Object3DEventMap = Object3DEventMap> extends Object3D<TEventMap> {
19
+ /**
20
+ * Creates a new {@link Bone}.
21
+ */
22
+ constructor();
23
+
24
+ /**
25
+ * Read-only flag to check if a given object is of type {@link Bone}.
26
+ * @remarks This is a _constant_ value
27
+ * @defaultValue `true`
28
+ */
29
+ readonly isBone: true;
30
+
31
+ /**
32
+ * @override
33
+ * @defaultValue `Bone`
34
+ */
35
+ override readonly type: string | "Bone";
36
+ }
@@ -0,0 +1,37 @@
1
+ import { Object3D, Object3DEventMap } from "../core/Object3D.js";
2
+
3
+ /**
4
+ * Its purpose is to make working with groups of objects syntactically clearer.
5
+ * @remarks This is almost identical to an {@link Object3D | Object3D}
6
+ * @example
7
+ * ```typescript
8
+ * const geometry = new THREE.BoxGeometry(1, 1, 1);
9
+ * const material = new THREE.MeshBasicMaterial({
10
+ * color: 0x00ff00
11
+ * });
12
+ * const cubeA = new THREE.Mesh(geometry, material);
13
+ * cubeA.position.set(100, 100, 0);
14
+ * const cubeB = new THREE.Mesh(geometry, material);
15
+ * cubeB.position.set(-100, -100, 0);
16
+ * //create a {@link Group} and add the two cubes
17
+ * //These cubes can now be rotated / scaled etc as a {@link Group} * const {@link Group} = new THREE.Group();
18
+ * group.add(cubeA);
19
+ * group.add(cubeB);
20
+ * scene.add(group);
21
+ * ```
22
+ * @see {@link https://threejs.org/docs/index.html#api/en/objects/Group | Official Documentation}
23
+ * @see {@link https://github.com/mrdoob/three.js/blob/master/src/objects/Group.js | Source}
24
+ */
25
+ export class Group<TEventMap extends Object3DEventMap = Object3DEventMap> extends Object3D<TEventMap> {
26
+ /**
27
+ * Creates a new {@link Group}.
28
+ */
29
+ constructor();
30
+
31
+ /**
32
+ * Read-only flag to check if a given object is of type {@link Group}.
33
+ * @remarks This is a _constant_ value
34
+ * @defaultValue `true`
35
+ */
36
+ readonly isGroup: true;
37
+ }
@@ -0,0 +1,179 @@
1
+ import { BufferAttributeJSON } from "./../core/BufferAttribute.js";
2
+ import { BufferGeometry } from "../core/BufferGeometry.js";
3
+ import { InstancedBufferAttribute } from "../core/InstancedBufferAttribute.js";
4
+ import { JSONMeta, Object3DEventMap } from "../core/Object3D.js";
5
+ import { Material } from "../materials/Material.js";
6
+ import { Box3 } from "../math/Box3.js";
7
+ import { Color } from "../math/Color.js";
8
+ import { Matrix4 } from "../math/Matrix4.js";
9
+ import { Sphere } from "../math/Sphere.js";
10
+ import { DataTexture } from "../textures/DataTexture.js";
11
+ import { Mesh, MeshJSONObject } from "./Mesh.js";
12
+
13
+ export interface InstancedMeshJSONObject extends MeshJSONObject {
14
+ count: number;
15
+ instanceMatrix: BufferAttributeJSON;
16
+ instanceColor?: BufferAttributeJSON;
17
+ }
18
+
19
+ export interface InstancedMeshJSON extends MeshJSONObject {
20
+ object: InstancedMeshJSONObject;
21
+ }
22
+
23
+ export interface InstancedMeshEventMap extends Object3DEventMap {
24
+ dispose: {};
25
+ }
26
+
27
+ /**
28
+ * A special version of {@link THREE.Mesh | Mesh} with instanced rendering support
29
+ * @remarks
30
+ * Use {@link InstancedMesh} if you have to render a large number of objects with the same geometry and material(s) but with different world transformations
31
+ * @remarks
32
+ * The usage of {@link InstancedMesh} will help you to reduce the number of draw calls and thus improve the overall rendering performance in your application.
33
+ * @see Example: {@link https://threejs.org/examples/#webgl_instancing_dynamic | WebGL / instancing / dynamic}
34
+ * @see Example: {@link https://threejs.org/examples/#webgl_instancing_performance | WebGL / instancing / performance}
35
+ * @see Example: {@link https://threejs.org/examples/#webgl_instancing_scatter | WebGL / instancing / scatter}
36
+ * @see Example: {@link https://threejs.org/examples/#webgl_instancing_raycast | WebGL / instancing / raycast}
37
+ * @see {@link https://threejs.org/docs/index.html#api/en/objects/InstancedMesh | Official Documentation}
38
+ * @see {@link https://github.com/mrdoob/three.js/blob/master/src/objects/InstancedMesh.js | Source}
39
+ */
40
+ export class InstancedMesh<
41
+ TGeometry extends BufferGeometry = BufferGeometry,
42
+ TMaterial extends Material | Material[] = Material | Material[],
43
+ TEventMap extends InstancedMeshEventMap = InstancedMeshEventMap,
44
+ > extends Mesh<TGeometry, TMaterial, TEventMap> {
45
+ /**
46
+ * Create a new instance of {@link InstancedMesh}
47
+ * @param geometry An instance of {@link BufferGeometry}.
48
+ * @param material A single or an array of {@link Material}. Default is a new {@link MeshBasicMaterial}.
49
+ * @param count The **maximum** number of instances of this Mesh. Expects a `Integer`
50
+ */
51
+ constructor(geometry: TGeometry | undefined, material: TMaterial | undefined, count: number);
52
+
53
+ /**
54
+ * Read-only flag to check if a given object is of type {@link InstancedMesh}.
55
+ * @remarks This is a _constant_ value
56
+ * @defaultValue `true`
57
+ */
58
+ readonly isInstancedMesh: true;
59
+
60
+ /**
61
+ * This bounding box encloses all instances of the {@link InstancedMesh},, which can be calculated with {@link computeBoundingBox | .computeBoundingBox()}.
62
+ * @remarks Bounding boxes aren't computed by default. They need to be explicitly computed, otherwise they are `null`.
63
+ * @defaultValue `null`
64
+ */
65
+ boundingBox: Box3 | null;
66
+
67
+ /**
68
+ * This bounding sphere encloses all instances of the {@link InstancedMesh}, which can be calculated with {@link computeBoundingSphere | .computeBoundingSphere()}.
69
+ * @remarks bounding spheres aren't computed by default. They need to be explicitly computed, otherwise they are `null`.
70
+ * @defaultValue `null`
71
+ */
72
+ boundingSphere: Sphere | null;
73
+
74
+ /**
75
+ * The number of instances.
76
+ * @remarks
77
+ * The `count` value passed into the {@link InstancedMesh | constructor} represents the **maximum** number of instances of this mesh.
78
+ * You can change the number of instances at runtime to an integer value in the range `[0, count]`.
79
+ * @remarks If you need more instances than the original `count` value, you have to create a new InstancedMesh.
80
+ * @remarks Expects a `Integer`
81
+ */
82
+ count: number;
83
+
84
+ /**
85
+ * Represents the colors of all instances.
86
+ * You have to set {@link InstancedBufferAttribute.needsUpdate | .instanceColor.needsUpdate()} flag to `true` if you modify instanced data via {@link setColorAt | .setColorAt()}.
87
+ * @defaultValue `null`
88
+ */
89
+ instanceColor: InstancedBufferAttribute | null;
90
+
91
+ /**
92
+ * Represents the local transformation of all instances.
93
+ * You have to set {@link InstancedBufferAttribute.needsUpdate | .instanceMatrix.needsUpdate()} flag to `true` if you modify instanced data via {@link setMatrixAt | .setMatrixAt()}.
94
+ */
95
+ instanceMatrix: InstancedBufferAttribute;
96
+
97
+ /**
98
+ * Represents the morph target weights of all instances. You have to set its {@link .needsUpdate} flag to true if
99
+ * you modify instanced data via {@link .setMorphAt}.
100
+ */
101
+ morphTexture: DataTexture | null;
102
+
103
+ /**
104
+ * Computes the bounding box of the instanced mesh, and updates the {@link .boundingBox} attribute. The bounding box
105
+ * is not computed by the engine; it must be computed by your app. You may need to recompute the bounding box if an
106
+ * instance is transformed via {@link .setMatrixAt()}.
107
+ */
108
+ computeBoundingBox(): void;
109
+
110
+ /**
111
+ * Computes the bounding sphere of the instanced mesh, and updates the {@link .boundingSphere} attribute. The engine
112
+ * automatically computes the bounding sphere when it is needed, e.g., for ray casting or view frustum culling. You
113
+ * may need to recompute the bounding sphere if an instance is transformed via [page:.setMatrixAt]().
114
+ */
115
+ computeBoundingSphere(): void;
116
+
117
+ /**
118
+ * Get the color of the defined instance.
119
+ * @param index The index of an instance. Values have to be in the range `[0, count]`. Expects a `Integer`
120
+ * @param color This color object will be set to the color of the defined instance.
121
+ */
122
+ getColorAt(index: number, color: Color): void;
123
+
124
+ /**
125
+ * Sets the given color to the defined instance
126
+ * @remarks
127
+ * Make sure you set {@link InstancedBufferAttribute.needsUpdate | .instanceColor.needsUpdate()} to `true` after updating all the colors.
128
+ * @param index The index of an instance. Values have to be in the range `[0, count]`. Expects a `Integer`
129
+ * @param color The color of a single instance.
130
+ */
131
+ setColorAt(index: number, color: Color): void;
132
+
133
+ /**
134
+ * Get the local transformation matrix of the defined instance.
135
+ * @param index The index of an instance Values have to be in the range `[0, count]`. Expects a `Integer`
136
+ * @param matrix This 4x4 matrix will be set to the local transformation matrix of the defined instance.
137
+ */
138
+ getMatrixAt(index: number, matrix: Matrix4): void;
139
+
140
+ /**
141
+ * Get the morph target weights of the defined instance.
142
+ * @param index The index of an instance. Values have to be in the range [0, count].
143
+ * @param mesh The {@link .morphTargetInfluences} property of this mesh will be filled with the morph target weights of the defined instance.
144
+ */
145
+ getMorphAt(index: number, mesh: Mesh): void;
146
+
147
+ /**
148
+ * Sets the given local transformation matrix to the defined instance.
149
+ * @remarks
150
+ * Make sure you set {@link InstancedBufferAttribute.needsUpdate | .instanceMatrix.needsUpdate()} flag to `true` after updating all the matrices.
151
+ * @param index The index of an instance. Values have to be in the range `[0, count]`. Expects a `Integer`
152
+ * @param matrix A 4x4 matrix representing the local transformation of a single instance.
153
+ */
154
+ setMatrixAt(index: number, matrix: Matrix4): void;
155
+
156
+ /**
157
+ * Sets the morph target weights to the defined instance. Make sure you set {@link .morphTexture}{@link .needsUpdate}
158
+ * to true after updating all the influences.
159
+ * @param index The index of an instance. Values have to be in the range [0, count].
160
+ * @param mesh A mesh with {@link .morphTargetInfluences} property containing the morph target weights of a single instance.
161
+ */
162
+ setMorphAt(index: number, mesh: Mesh): void;
163
+
164
+ /**
165
+ * No effect in {@link InstancedMesh}.
166
+ * @ignore
167
+ * @hidden
168
+ */
169
+ override updateMorphTargets(): void;
170
+
171
+ /**
172
+ * Frees the GPU-related resources allocated by this instance
173
+ * @remarks
174
+ * Call this method whenever this instance is no longer used in your app.
175
+ */
176
+ dispose(): this;
177
+
178
+ toJSON(meta?: JSONMeta): InstancedMeshJSON;
179
+ }
@@ -0,0 +1,111 @@
1
+ import { Camera } from "../cameras/Camera.js";
2
+ import { JSONMeta, Object3D, Object3DEventMap, Object3DJSON, Object3DJSONObject } from "../core/Object3D.js";
3
+
4
+ export interface LODJSONObject extends Object3DJSONObject {
5
+ autoUpdate?: boolean;
6
+
7
+ levels: Array<{
8
+ object: string;
9
+ distance: number;
10
+ hysteresis: number;
11
+ }>;
12
+ }
13
+
14
+ export interface LODJSON extends Object3DJSON {
15
+ object: LODJSONObject;
16
+ }
17
+
18
+ /**
19
+ * Every level is associated with an object, and rendering can be switched between them at the distances specified
20
+ * @remarks
21
+ * Typically you would create, say, three meshes, one for far away (low detail), one for mid range (medium detail) and one for close up (high detail).
22
+ * @example
23
+ * ```typescript
24
+ * const {@link LOD} = new THREE.LOD();
25
+ * //Create spheres with 3 levels of detail and create new {@link LOD} levels for them
26
+ * for (let i = 0; i & lt; 3; i++) {
27
+ * const geometry = new THREE.IcosahedronGeometry(10, 3 - i)
28
+ * const mesh = new THREE.Mesh(geometry, material);
29
+ * lod.addLevel(mesh, i * 75);
30
+ * }
31
+ * scene.add(lod);
32
+ * ```
33
+ * @see Example: {@link https://threejs.org/examples/#webgl_lod | webgl / {@link LOD} }
34
+ * @see {@link https://threejs.org/docs/index.html#api/en/objects/LOD | Official Documentation}
35
+ * @see {@link https://github.com/mrdoob/three.js/blob/master/src/objects/LOD.js | Source}
36
+ */
37
+ export class LOD<TEventMap extends Object3DEventMap = Object3DEventMap> extends Object3D<TEventMap> {
38
+ /**
39
+ * Creates a new {@link LOD}.
40
+ */
41
+ constructor();
42
+
43
+ /**
44
+ * Read-only flag to check if a given object is of type {@link LOD}.
45
+ * @remarks This is a _constant_ value
46
+ * @defaultValue `true`
47
+ */
48
+ readonly isLOD: true;
49
+
50
+ /**
51
+ * @override
52
+ * @defaultValue `LOD`
53
+ */
54
+ override readonly type: string | "LOD";
55
+
56
+ /**
57
+ * An array of level objects
58
+ */
59
+ levels: Array<{
60
+ /** The Object3D to display at this level. */
61
+ object: Object3D;
62
+ /** The distance at which to display this level of detail. Expects a `Float`. */
63
+ distance: number;
64
+ /** Threshold used to avoid flickering at LOD boundaries, as a fraction of distance. Expects a `Float`. */
65
+ hysteresis: number;
66
+ }>;
67
+
68
+ /**
69
+ * Whether the {@link LOD} object is updated automatically by the renderer per frame or not.
70
+ * If set to `false`, you have to call {@link update | .update()} in the render loop by yourself.
71
+ * @defaultValue `true`
72
+ */
73
+ autoUpdate: boolean;
74
+
75
+ /**
76
+ * Adds a mesh that will display at a certain distance and greater. Typically the further away the distance, the lower the detail on the mesh.
77
+ *
78
+ * @param object The Object3D to display at this level.
79
+ * @param distance The distance at which to display this level of detail. Expects a `Float`. Default `0.0`.
80
+ * @param hysteresis Threshold used to avoid flickering at LOD boundaries, as a fraction of distance. Expects a `Float`. Default `0.0`.
81
+ */
82
+ addLevel(object: Object3D, distance?: number, hysteresis?: number): this;
83
+
84
+ /**
85
+ * Removes an existing level, based on the distance from the camera. Returns `true` when the level has been removed.
86
+ * Otherwise `false`.
87
+ * @param distance Distance of the level to delete.
88
+ */
89
+ removeLabel(distance: number): boolean;
90
+
91
+ /**
92
+ * Get the currently active {@link LOD} level
93
+ * @remarks
94
+ * As index of the levels array.
95
+ */
96
+ getCurrentLevel(): number;
97
+
98
+ /**
99
+ * Get a reference to the first {@link THREE.Object3D | Object3D} (mesh) that is greater than {@link distance}.
100
+ * @param distance Expects a `Float`
101
+ */
102
+ getObjectForDistance(distance: number): Object3D | null;
103
+
104
+ /**
105
+ * Set the visibility of each {@link levels | level}'s {@link THREE.Object3D | object} based on distance from the {@link THREE.Camera | camera}.
106
+ * @param camera
107
+ */
108
+ update(camera: Camera): void;
109
+
110
+ toJSON(meta?: JSONMeta): LODJSON;
111
+ }