@nativescript/canvas-three 2.0.0-webgpu.27 → 2.0.0-webgpu.28

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 (487) hide show
  1. package/package.json +1 -1
  2. package/three/src/Three.Legacy.d.ts +13 -13
  3. package/three/src/Three.WebGPU.d.ts +172 -187
  4. package/three/src/Three.d.ts +189 -213
  5. package/three/src/animation/AnimationAction.d.ts +70 -70
  6. package/three/src/animation/AnimationClip.d.ts +41 -50
  7. package/three/src/animation/AnimationMixer.d.ts +26 -30
  8. package/three/src/animation/AnimationObjectGroup.d.ts +13 -13
  9. package/three/src/animation/AnimationUtils.d.ts +11 -31
  10. package/three/src/animation/KeyframeTrack.d.ts +49 -49
  11. package/three/src/animation/PropertyBinding.d.ts +27 -27
  12. package/three/src/animation/PropertyMixer.d.ts +13 -13
  13. package/three/src/animation/tracks/BooleanKeyframeTrack.d.ts +6 -6
  14. package/three/src/animation/tracks/ColorKeyframeTrack.d.ts +7 -7
  15. package/three/src/animation/tracks/NumberKeyframeTrack.d.ts +7 -7
  16. package/three/src/animation/tracks/QuaternionKeyframeTrack.d.ts +7 -7
  17. package/three/src/animation/tracks/StringKeyframeTrack.d.ts +6 -6
  18. package/three/src/animation/tracks/VectorKeyframeTrack.d.ts +7 -7
  19. package/three/src/audio/Audio.d.ts +241 -241
  20. package/three/src/audio/AudioAnalyser.d.ts +23 -23
  21. package/three/src/audio/AudioContext.d.ts +9 -9
  22. package/three/src/audio/AudioListener.d.ts +56 -56
  23. package/three/src/audio/PositionalAudio.d.ts +58 -58
  24. package/three/src/cameras/ArrayCamera.d.ts +17 -17
  25. package/three/src/cameras/Camera.d.ts +55 -55
  26. package/three/src/cameras/CubeCamera.d.ts +29 -29
  27. package/three/src/cameras/OrthographicCamera.d.ts +137 -144
  28. package/three/src/cameras/PerspectiveCamera.d.ts +227 -227
  29. package/three/src/cameras/StereoCamera.d.ts +31 -31
  30. package/three/src/constants.d.ts +134 -258
  31. package/three/src/core/BufferAttribute.d.ts +481 -526
  32. package/three/src/core/BufferGeometry.d.ts +342 -347
  33. package/three/src/core/Clock.d.ts +53 -53
  34. package/three/src/core/EventDispatcher.d.ts +34 -45
  35. package/three/src/core/GLBufferAttribute.d.ts +94 -94
  36. package/three/src/core/InstancedBufferAttribute.d.ts +22 -22
  37. package/three/src/core/InstancedBufferGeometry.d.ts +25 -25
  38. package/three/src/core/InstancedInterleavedBuffer.d.ts +13 -13
  39. package/three/src/core/InterleavedBuffer.d.ts +152 -152
  40. package/three/src/core/InterleavedBufferAttribute.d.ts +194 -194
  41. package/three/src/core/Layers.d.ts +48 -48
  42. package/three/src/core/Object3D.d.ts +616 -644
  43. package/three/src/core/Raycaster.d.ts +136 -144
  44. package/three/src/core/RenderTarget.d.ts +72 -79
  45. package/three/src/core/Uniform.d.ts +16 -16
  46. package/three/src/core/UniformsGroup.d.ts +15 -15
  47. package/three/src/extras/DataUtils.d.ts +2 -2
  48. package/three/src/extras/Earcut.d.ts +6 -6
  49. package/three/src/extras/ImageUtils.d.ts +19 -21
  50. package/three/src/extras/PMREMGenerator.d.ts +49 -49
  51. package/three/src/extras/ShapeUtils.d.ts +14 -14
  52. package/three/src/extras/TextureUtils.d.ts +7 -12
  53. package/three/src/extras/core/Curve.d.ts +132 -132
  54. package/three/src/extras/core/CurvePath.d.ts +55 -55
  55. package/three/src/extras/core/Path.d.ts +108 -126
  56. package/three/src/extras/core/Shape.d.ts +43 -43
  57. package/three/src/extras/core/ShapePath.d.ts +79 -79
  58. package/three/src/extras/curves/ArcCurve.d.ts +24 -31
  59. package/three/src/extras/curves/CatmullRomCurve3.d.ts +44 -44
  60. package/three/src/extras/curves/CubicBezierCurve.d.ts +42 -42
  61. package/three/src/extras/curves/CubicBezierCurve3.d.ts +42 -42
  62. package/three/src/extras/curves/Curves.d.ts +10 -10
  63. package/three/src/extras/curves/EllipseCurve.d.ts +71 -80
  64. package/three/src/extras/curves/LineCurve.d.ts +30 -30
  65. package/three/src/extras/curves/LineCurve3.d.ts +30 -30
  66. package/three/src/extras/curves/QuadraticBezierCurve.d.ts +36 -36
  67. package/three/src/extras/curves/QuadraticBezierCurve3.d.ts +36 -36
  68. package/three/src/extras/curves/SplineCurve.d.ts +24 -24
  69. package/three/src/geometries/BoxGeometry.d.ts +31 -38
  70. package/three/src/geometries/CapsuleGeometry.d.ts +27 -27
  71. package/three/src/geometries/CircleGeometry.d.ts +27 -27
  72. package/three/src/geometries/ConeGeometry.d.ts +36 -44
  73. package/three/src/geometries/CylinderGeometry.d.ts +35 -44
  74. package/three/src/geometries/DodecahedronGeometry.d.ts +15 -15
  75. package/three/src/geometries/EdgesGeometry.d.ts +21 -21
  76. package/three/src/geometries/ExtrudeGeometry.d.ts +97 -110
  77. package/three/src/geometries/Geometries.d.ts +21 -21
  78. package/three/src/geometries/IcosahedronGeometry.d.ts +16 -16
  79. package/three/src/geometries/LatheGeometry.d.ts +29 -29
  80. package/three/src/geometries/OctahedronGeometry.d.ts +15 -15
  81. package/three/src/geometries/PlaneGeometry.d.ts +27 -27
  82. package/three/src/geometries/PolyhedronGeometry.d.ts +27 -27
  83. package/three/src/geometries/RingGeometry.d.ts +31 -38
  84. package/three/src/geometries/ShapeGeometry.d.ts +24 -24
  85. package/three/src/geometries/SphereGeometry.d.ts +39 -47
  86. package/three/src/geometries/TetrahedronGeometry.d.ts +15 -15
  87. package/three/src/geometries/TorusGeometry.d.ts +29 -29
  88. package/three/src/geometries/TorusKnotGeometry.d.ts +31 -38
  89. package/three/src/geometries/TubeGeometry.d.ts +44 -50
  90. package/three/src/geometries/WireframeGeometry.d.ts +19 -19
  91. package/three/src/helpers/ArrowHelper.d.ts +58 -65
  92. package/three/src/helpers/AxesHelper.d.ts +27 -27
  93. package/three/src/helpers/Box3Helper.d.ts +26 -26
  94. package/three/src/helpers/BoxHelper.d.ts +38 -38
  95. package/three/src/helpers/CameraHelper.d.ts +53 -53
  96. package/three/src/helpers/DirectionalLightHelper.d.ts +54 -54
  97. package/three/src/helpers/GridHelper.d.ts +27 -27
  98. package/three/src/helpers/HemisphereLightHelper.d.ts +50 -50
  99. package/three/src/helpers/PlaneHelper.d.ts +32 -32
  100. package/three/src/helpers/PointLightHelper.d.ts +48 -48
  101. package/three/src/helpers/PolarGridHelper.d.ts +26 -33
  102. package/three/src/helpers/SkeletonHelper.d.ts +52 -52
  103. package/three/src/helpers/SpotLightHelper.d.ts +52 -52
  104. package/three/src/lights/AmbientLight.d.ts +20 -20
  105. package/three/src/lights/DirectionalLight.d.ts +68 -68
  106. package/three/src/lights/DirectionalLightShadow.d.ts +22 -22
  107. package/three/src/lights/HemisphereLight.d.ts +37 -37
  108. package/three/src/lights/Light.d.ts +61 -61
  109. package/three/src/lights/LightProbe.d.ts +21 -21
  110. package/three/src/lights/LightShadow.d.ts +157 -157
  111. package/three/src/lights/PointLight.d.ts +74 -74
  112. package/three/src/lights/PointLightShadow.d.ts +14 -14
  113. package/three/src/lights/RectAreaLight.d.ts +49 -49
  114. package/three/src/lights/SpotLight.d.ts +120 -127
  115. package/three/src/lights/SpotLightShadow.d.ts +25 -25
  116. package/three/src/lights/webgpu/IESSpotLight.d.ts +3 -3
  117. package/three/src/loaders/AnimationLoader.d.ts +5 -5
  118. package/three/src/loaders/AudioLoader.d.ts +3 -3
  119. package/three/src/loaders/BufferGeometryLoader.d.ts +6 -6
  120. package/three/src/loaders/Cache.d.ts +12 -12
  121. package/three/src/loaders/CompressedTextureLoader.d.ts +5 -10
  122. package/three/src/loaders/CubeTextureLoader.d.ts +5 -10
  123. package/three/src/loaders/DataTextureLoader.d.ts +5 -10
  124. package/three/src/loaders/FileLoader.d.ts +8 -13
  125. package/three/src/loaders/ImageBitmapLoader.d.ts +10 -15
  126. package/three/src/loaders/ImageLoader.d.ts +4 -9
  127. package/three/src/loaders/Loader.d.ts +39 -44
  128. package/three/src/loaders/LoaderUtils.d.ts +6 -6
  129. package/three/src/loaders/LoadingManager.d.ts +48 -52
  130. package/three/src/loaders/MaterialLoader.d.ts +12 -12
  131. package/three/src/loaders/ObjectLoader.d.ts +20 -30
  132. package/three/src/loaders/TextureLoader.d.ts +5 -10
  133. package/three/src/materials/LineBasicMaterial.d.ts +54 -54
  134. package/three/src/materials/LineDashedMaterial.d.ts +34 -34
  135. package/three/src/materials/Material.d.ts +585 -604
  136. package/three/src/materials/Materials.d.ts +18 -18
  137. package/three/src/materials/MeshBasicMaterial.d.ts +130 -130
  138. package/three/src/materials/MeshDepthMaterial.d.ts +59 -59
  139. package/three/src/materials/MeshDistanceMaterial.d.ts +56 -56
  140. package/three/src/materials/MeshLambertMaterial.d.ts +198 -198
  141. package/three/src/materials/MeshMatcapMaterial.d.ts +111 -111
  142. package/three/src/materials/MeshNormalMaterial.d.ts +87 -87
  143. package/three/src/materials/MeshPhongMaterial.d.ts +222 -222
  144. package/three/src/materials/MeshPhysicalMaterial.d.ts +230 -230
  145. package/three/src/materials/MeshStandardMaterial.d.ts +212 -212
  146. package/three/src/materials/MeshToonMaterial.d.ts +172 -172
  147. package/three/src/materials/PointsMaterial.d.ts +55 -55
  148. package/three/src/materials/RawShaderMaterial.d.ts +9 -9
  149. package/three/src/materials/ShaderMaterial.d.ts +161 -153
  150. package/three/src/materials/ShadowMaterial.d.ts +28 -28
  151. package/three/src/materials/SpriteMaterial.d.ts +51 -51
  152. package/three/src/math/Box2.d.ts +40 -40
  153. package/three/src/math/Box3.d.ts +60 -60
  154. package/three/src/math/Color.d.ts +334 -334
  155. package/three/src/math/ColorManagement.d.ts +19 -31
  156. package/three/src/math/Cylindrical.d.ts +19 -19
  157. package/three/src/math/Euler.d.ts +44 -44
  158. package/three/src/math/Frustum.d.ts +22 -22
  159. package/three/src/math/Interpolant.d.ts +6 -6
  160. package/three/src/math/Line3.d.ts +23 -23
  161. package/three/src/math/MathUtils.d.ts +27 -33
  162. package/three/src/math/Matrix2.d.ts +33 -38
  163. package/three/src/math/Matrix3.d.ts +149 -179
  164. package/three/src/math/Matrix4.d.ts +196 -263
  165. package/three/src/math/Plane.d.ts +39 -39
  166. package/three/src/math/Quaternion.d.ts +156 -171
  167. package/three/src/math/Ray.d.ts +46 -51
  168. package/three/src/math/Sphere.d.ts +39 -39
  169. package/three/src/math/Spherical.d.ts +20 -20
  170. package/three/src/math/SphericalHarmonics3.d.ts +47 -47
  171. package/three/src/math/Triangle.d.ts +45 -77
  172. package/three/src/math/Vector2.d.ts +310 -310
  173. package/three/src/math/Vector3.d.ts +229 -229
  174. package/three/src/math/Vector4.d.ts +228 -228
  175. package/three/src/math/interpolants/CubicInterpolant.d.ts +3 -3
  176. package/three/src/math/interpolants/DiscreteInterpolant.d.ts +3 -3
  177. package/three/src/math/interpolants/LinearInterpolant.d.ts +3 -3
  178. package/three/src/math/interpolants/QuaternionLinearInterpolant.d.ts +3 -3
  179. package/three/src/nodes/Nodes.d.ts +188 -378
  180. package/three/src/nodes/accessors/AccessorsUtils.d.ts +2 -2
  181. package/three/src/nodes/accessors/BatchNode.d.ts +7 -7
  182. package/three/src/nodes/accessors/BitangentNode.d.ts +2 -2
  183. package/three/src/nodes/accessors/BufferAttributeNode.d.ts +25 -50
  184. package/three/src/nodes/accessors/BufferNode.d.ts +7 -11
  185. package/three/src/nodes/accessors/CameraNode.d.ts +5 -5
  186. package/three/src/nodes/accessors/ClippingNode.d.ts +6 -6
  187. package/three/src/nodes/accessors/CubeTextureNode.d.ts +14 -24
  188. package/three/src/nodes/accessors/InstanceNode.d.ts +7 -7
  189. package/three/src/nodes/accessors/MaterialNode.d.ts +82 -82
  190. package/three/src/nodes/accessors/MaterialReferenceNode.d.ts +5 -9
  191. package/three/src/nodes/accessors/ModelNode.d.ts +5 -5
  192. package/three/src/nodes/accessors/ModelViewProjectionNode.d.ts +3 -3
  193. package/three/src/nodes/accessors/NormalNode.d.ts +4 -4
  194. package/three/src/nodes/accessors/Object3DNode.d.ts +13 -13
  195. package/three/src/nodes/accessors/PointUVNode.d.ts +4 -4
  196. package/three/src/nodes/accessors/PositionNode.d.ts +2 -2
  197. package/three/src/nodes/accessors/ReferenceNode.d.ts +12 -17
  198. package/three/src/nodes/accessors/ReflectVectorNode.d.ts +3 -3
  199. package/three/src/nodes/accessors/RendererReferenceNode.d.ts +6 -10
  200. package/three/src/nodes/accessors/SkinningNode.d.ts +11 -11
  201. package/three/src/nodes/accessors/StorageBufferNode.d.ts +16 -28
  202. package/three/src/nodes/accessors/StorageTextureNode.d.ts +17 -29
  203. package/three/src/nodes/accessors/TangentNode.d.ts +5 -5
  204. package/three/src/nodes/accessors/Texture3DNode.d.ts +8 -12
  205. package/three/src/nodes/accessors/TextureBicubicNode.d.ts +10 -10
  206. package/three/src/nodes/accessors/TextureNode.d.ts +23 -33
  207. package/three/src/nodes/accessors/UVNode.d.ts +2 -2
  208. package/three/src/nodes/accessors/UniformsNode.d.ts +11 -11
  209. package/three/src/nodes/accessors/UserDataNode.d.ts +5 -9
  210. package/three/src/nodes/accessors/VertexColorNode.d.ts +5 -5
  211. package/three/src/nodes/code/CodeNode.d.ts +10 -10
  212. package/three/src/nodes/code/ExpressionNode.d.ts +4 -4
  213. package/three/src/nodes/code/FunctionCallNode.d.ts +14 -17
  214. package/three/src/nodes/code/FunctionNode.d.ts +23 -24
  215. package/three/src/nodes/core/AssignNode.d.ts +10 -10
  216. package/three/src/nodes/core/AttributeNode.d.ts +8 -12
  217. package/three/src/nodes/core/BypassNode.d.ts +10 -10
  218. package/three/src/nodes/core/CacheNode.d.ts +11 -11
  219. package/three/src/nodes/core/ConstNode.d.ts +5 -5
  220. package/three/src/nodes/core/ContextNode.d.ts +12 -12
  221. package/three/src/nodes/core/IndexNode.d.ts +8 -8
  222. package/three/src/nodes/core/InputNode.d.ts +9 -9
  223. package/three/src/nodes/core/LightingModel.d.ts +31 -31
  224. package/three/src/nodes/core/MRTNode.d.ts +8 -8
  225. package/three/src/nodes/core/Node.d.ts +100 -97
  226. package/three/src/nodes/core/NodeAttribute.d.ts +6 -6
  227. package/three/src/nodes/core/NodeBuilder.d.ts +122 -132
  228. package/three/src/nodes/core/NodeCache.d.ts +40 -43
  229. package/three/src/nodes/core/NodeCode.d.ts +2 -2
  230. package/three/src/nodes/core/NodeFrame.d.ts +24 -24
  231. package/three/src/nodes/core/NodeFunction.d.ts +8 -8
  232. package/three/src/nodes/core/NodeFunctionInput.d.ts +5 -5
  233. package/three/src/nodes/core/NodeKeywords.d.ts +14 -14
  234. package/three/src/nodes/core/NodeParser.d.ts +2 -2
  235. package/three/src/nodes/core/NodeUniform.d.ts +11 -11
  236. package/three/src/nodes/core/NodeUtils.d.ts +11 -14
  237. package/three/src/nodes/core/NodeVar.d.ts +4 -4
  238. package/three/src/nodes/core/NodeVarying.d.ts +4 -4
  239. package/three/src/nodes/core/OutputStructNode.d.ts +5 -5
  240. package/three/src/nodes/core/PropertyNode.d.ts +6 -6
  241. package/three/src/nodes/core/StackNode.d.ts +9 -9
  242. package/three/src/nodes/core/StructTypeNode.d.ts +5 -5
  243. package/three/src/nodes/core/TempNode.d.ts +5 -5
  244. package/three/src/nodes/core/UniformGroup.d.ts +3 -3
  245. package/three/src/nodes/core/UniformGroupNode.d.ts +7 -7
  246. package/three/src/nodes/core/UniformNode.d.ts +17 -20
  247. package/three/src/nodes/core/VarNode.d.ts +18 -18
  248. package/three/src/nodes/core/VaryingNode.d.ts +12 -12
  249. package/three/src/nodes/core/constants.d.ts +17 -17
  250. package/three/src/nodes/display/AfterImageNode.d.ts +15 -15
  251. package/three/src/nodes/display/AnamorphicNode.d.ts +17 -22
  252. package/three/src/nodes/display/BlendModeNode.d.ts +21 -25
  253. package/three/src/nodes/display/BloomNode.d.ts +19 -24
  254. package/three/src/nodes/display/ColorAdjustmentNode.d.ts +21 -33
  255. package/three/src/nodes/display/ColorSpaceNode.d.ts +18 -21
  256. package/three/src/nodes/display/DenoiseNode.d.ts +22 -28
  257. package/three/src/nodes/display/DepthOfFieldNode.d.ts +16 -22
  258. package/three/src/nodes/display/DotScreenNode.d.ts +15 -20
  259. package/three/src/nodes/display/FXAANode.d.ts +9 -9
  260. package/three/src/nodes/display/FilmNode.d.ts +12 -16
  261. package/three/src/nodes/display/FrontFacingNode.d.ts +4 -4
  262. package/three/src/nodes/display/GTAONode.d.ts +28 -32
  263. package/three/src/nodes/display/GaussianBlurNode.d.ts +17 -21
  264. package/three/src/nodes/display/Lut3DNode.d.ts +16 -21
  265. package/three/src/nodes/display/NormalMapNode.d.ts +12 -12
  266. package/three/src/nodes/display/PassNode.d.ts +30 -30
  267. package/three/src/nodes/display/PixelationPassNode.d.ts +25 -51
  268. package/three/src/nodes/display/PosterizeNode.d.ts +10 -13
  269. package/three/src/nodes/display/RGBShiftNode.d.ts +14 -14
  270. package/three/src/nodes/display/RenderOutputNode.d.ts +14 -18
  271. package/three/src/nodes/display/SobelOperatorNode.d.ts +9 -9
  272. package/three/src/nodes/display/ToneMappingNode.d.ts +14 -22
  273. package/three/src/nodes/display/TransitionNode.d.ts +17 -31
  274. package/three/src/nodes/display/ViewportDepthNode.d.ts +9 -11
  275. package/three/src/nodes/display/ViewportDepthTextureNode.d.ts +5 -8
  276. package/three/src/nodes/display/ViewportNode.d.ts +12 -18
  277. package/three/src/nodes/display/ViewportSharedTextureNode.d.ts +9 -12
  278. package/three/src/nodes/display/ViewportTextureNode.d.ts +16 -24
  279. package/three/src/nodes/fog/FogExp2Node.d.ts +10 -10
  280. package/three/src/nodes/fog/FogNode.d.ts +13 -16
  281. package/three/src/nodes/fog/FogRangeNode.d.ts +12 -16
  282. package/three/src/nodes/functions/BSDF/BRDF_GGX.d.ts +4 -12
  283. package/three/src/nodes/functions/BSDF/BRDF_Lambert.d.ts +3 -3
  284. package/three/src/nodes/functions/BSDF/BRDF_Sheen.d.ts +3 -3
  285. package/three/src/nodes/functions/BSDF/DFGApprox.d.ts +3 -3
  286. package/three/src/nodes/functions/BSDF/D_GGX.d.ts +3 -3
  287. package/three/src/nodes/functions/BSDF/D_GGX_Anisotropic.d.ts +4 -6
  288. package/three/src/nodes/functions/BSDF/F_Schlick.d.ts +3 -3
  289. package/three/src/nodes/functions/BSDF/LTC.d.ts +2 -4
  290. package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated.d.ts +4 -8
  291. package/three/src/nodes/functions/BSDF/V_GGX_SmithCorrelated_Anisotropic.d.ts +4 -13
  292. package/three/src/nodes/functions/BasicLightingModel.d.ts +2 -2
  293. package/three/src/nodes/functions/PhongLightingModel.d.ts +3 -3
  294. package/three/src/nodes/functions/PhysicalLightingModel.d.ts +17 -24
  295. package/three/src/nodes/functions/ShadowMaskModel.d.ts +5 -5
  296. package/three/src/nodes/functions/ToonLightingModel.d.ts +2 -3
  297. package/three/src/nodes/functions/material/getGeometryRoughness.d.ts +2 -2
  298. package/three/src/nodes/functions/material/getRoughness.d.ts +3 -3
  299. package/three/src/nodes/geometry/RangeNode.d.ts +11 -11
  300. package/three/src/nodes/gpgpu/ComputeNode.d.ts +12 -16
  301. package/three/src/nodes/lighting/AONode.d.ts +4 -4
  302. package/three/src/nodes/lighting/AnalyticLightNode.d.ts +4 -4
  303. package/three/src/nodes/lighting/BasicEnvironmentNode.d.ts +4 -4
  304. package/three/src/nodes/lighting/BasicLightMapNode.d.ts +3 -3
  305. package/three/src/nodes/lighting/EnvironmentNode.d.ts +4 -4
  306. package/three/src/nodes/lighting/HemisphereLightNode.d.ts +8 -8
  307. package/three/src/nodes/lighting/IrradianceNode.d.ts +4 -4
  308. package/three/src/nodes/lighting/LightUtils.d.ts +4 -8
  309. package/three/src/nodes/lighting/LightingContextNode.d.ts +13 -18
  310. package/three/src/nodes/lighting/LightingNode.d.ts +3 -3
  311. package/three/src/nodes/lighting/LightsNode.d.ts +10 -13
  312. package/three/src/nodes/lighting/PointLightNode.d.ts +6 -6
  313. package/three/src/nodes/lighting/RectAreaLightNode.d.ts +12 -12
  314. package/three/src/nodes/lighting/SpotLightNode.d.ts +9 -9
  315. package/three/src/nodes/loaders/NodeLoader.d.ts +9 -9
  316. package/three/src/nodes/loaders/NodeMaterialLoader.d.ts +4 -4
  317. package/three/src/nodes/loaders/NodeObjectLoader.d.ts +6 -6
  318. package/three/src/nodes/materials/Line2NodeMaterial.d.ts +37 -37
  319. package/three/src/nodes/materials/LineBasicNodeMaterial.d.ts +15 -16
  320. package/three/src/nodes/materials/Materials.d.ts +15 -15
  321. package/three/src/nodes/materials/MeshBasicNodeMaterial.d.ts +29 -30
  322. package/three/src/nodes/materials/MeshMatcapNodeMaterial.d.ts +25 -26
  323. package/three/src/nodes/materials/MeshNormalNodeMaterial.d.ts +21 -22
  324. package/three/src/nodes/materials/MeshPhongNodeMaterial.d.ts +48 -49
  325. package/three/src/nodes/materials/MeshPhysicalNodeMaterial.d.ts +73 -76
  326. package/three/src/nodes/materials/MeshSSSNodeMaterial.d.ts +11 -11
  327. package/three/src/nodes/materials/MeshStandardNodeMaterial.d.ts +47 -48
  328. package/three/src/nodes/materials/MeshToonNodeMaterial.d.ts +35 -36
  329. package/three/src/nodes/materials/NodeMaterial.d.ts +108 -108
  330. package/three/src/nodes/materials/PointsNodeMaterial.d.ts +15 -16
  331. package/three/src/nodes/materials/ShadowNodeMaterial.d.ts +10 -11
  332. package/three/src/nodes/materials/SpriteNodeMaterial.d.ts +18 -19
  333. package/three/src/nodes/materials/VolumeNodeMaterial.d.ts +6 -6
  334. package/three/src/nodes/materialx/MaterialXNodes.d.ts +21 -92
  335. package/three/src/nodes/materialx/lib/mx_hsv.d.ts +2 -2
  336. package/three/src/nodes/materialx/lib/mx_noise.d.ts +76 -296
  337. package/three/src/nodes/materialx/lib/mx_transform_color.d.ts +2 -2
  338. package/three/src/nodes/math/CondNode.d.ts +11 -15
  339. package/three/src/nodes/math/HashNode.d.ts +8 -8
  340. package/three/src/nodes/math/MathNode.d.ts +168 -188
  341. package/three/src/nodes/math/MathUtils.d.ts +8 -8
  342. package/three/src/nodes/math/OperatorNode.d.ts +32 -54
  343. package/three/src/nodes/math/TriNoise3D.d.ts +3 -7
  344. package/three/src/nodes/pmrem/PMREMNode.d.ts +10 -14
  345. package/three/src/nodes/procedural/CheckerNode.d.ts +8 -8
  346. package/three/src/nodes/shadernode/ShaderNode.d.ts +94 -141
  347. package/three/src/nodes/utils/ArrayElementNode.d.ts +5 -5
  348. package/three/src/nodes/utils/ConvertNode.d.ts +4 -4
  349. package/three/src/nodes/utils/DiscardNode.d.ts +8 -8
  350. package/three/src/nodes/utils/EquirectUVNode.d.ts +3 -3
  351. package/three/src/nodes/utils/JoinNode.d.ts +4 -4
  352. package/three/src/nodes/utils/MatcapUVNode.d.ts +3 -3
  353. package/three/src/nodes/utils/MaxMipLevelNode.d.ts +7 -7
  354. package/three/src/nodes/utils/OscNode.d.ts +10 -14
  355. package/three/src/nodes/utils/PackingNode.d.ts +11 -11
  356. package/three/src/nodes/utils/RTTNode.d.ts +23 -28
  357. package/three/src/nodes/utils/ReflectorNode.d.ts +19 -19
  358. package/three/src/nodes/utils/RemapNode.d.ts +16 -28
  359. package/three/src/nodes/utils/RotateNode.d.ts +11 -14
  360. package/three/src/nodes/utils/RotateUVNode.d.ts +11 -11
  361. package/three/src/nodes/utils/SplitNode.d.ts +10 -10
  362. package/three/src/nodes/utils/SpriteSheetUVNode.d.ts +7 -11
  363. package/three/src/nodes/utils/StoargeArrayElementNode.d.ts +13 -16
  364. package/three/src/nodes/utils/TimerNode.d.ts +10 -14
  365. package/three/src/nodes/utils/TriplanarTexturesNode.d.ts +16 -33
  366. package/three/src/objects/BatchedMesh.d.ts +151 -155
  367. package/three/src/objects/Bone.d.ts +16 -16
  368. package/three/src/objects/Group.d.ts +16 -16
  369. package/three/src/objects/InstancedMesh.d.ts +151 -155
  370. package/three/src/objects/LOD.d.ts +66 -66
  371. package/three/src/objects/Line.d.ts +51 -55
  372. package/three/src/objects/LineLoop.d.ts +22 -26
  373. package/three/src/objects/LineSegments.d.ts +24 -28
  374. package/three/src/objects/Mesh.d.ts +57 -61
  375. package/three/src/objects/Points.d.ts +53 -57
  376. package/three/src/objects/Skeleton.d.ts +90 -90
  377. package/three/src/objects/SkinnedMesh.d.ts +111 -115
  378. package/three/src/objects/Sprite.d.ts +41 -41
  379. package/three/src/renderers/WebGL3DRenderTarget.d.ts +20 -20
  380. package/three/src/renderers/WebGLArrayRenderTarget.d.ts +20 -20
  381. package/three/src/renderers/WebGLCubeRenderTarget.d.ts +11 -11
  382. package/three/src/renderers/WebGLRenderTarget.d.ts +4 -4
  383. package/three/src/renderers/WebGLRenderer.d.ts +497 -543
  384. package/three/src/renderers/common/Animation.d.ts +10 -10
  385. package/three/src/renderers/common/Attributes.d.ts +16 -16
  386. package/three/src/renderers/common/Backend.d.ts +9 -9
  387. package/three/src/renderers/common/Background.d.ts +17 -17
  388. package/three/src/renderers/common/BindGroup.d.ts +6 -6
  389. package/three/src/renderers/common/Binding.d.ts +5 -5
  390. package/three/src/renderers/common/Bindings.d.ts +29 -36
  391. package/three/src/renderers/common/Buffer.d.ts +8 -8
  392. package/three/src/renderers/common/ChainMap.d.ts +5 -5
  393. package/three/src/renderers/common/ClippingContext.d.ts +20 -20
  394. package/three/src/renderers/common/Color4.d.ts +7 -7
  395. package/three/src/renderers/common/ComputePipeline.d.ts +5 -5
  396. package/three/src/renderers/common/Constants.d.ts +3 -3
  397. package/three/src/renderers/common/CubeRenderTarget.d.ts +7 -7
  398. package/three/src/renderers/common/DataMap.d.ts +26 -16
  399. package/three/src/renderers/common/Geometries.d.ts +25 -25
  400. package/three/src/renderers/common/Info.d.ts +31 -31
  401. package/three/src/renderers/common/Pipeline.d.ts +3 -3
  402. package/three/src/renderers/common/Pipelines.d.ts +45 -60
  403. package/three/src/renderers/common/PostProcessing.d.ts +10 -10
  404. package/three/src/renderers/common/ProgrammableStage.d.ts +7 -12
  405. package/three/src/renderers/common/QuadMesh.d.ts +8 -8
  406. package/three/src/renderers/common/RenderBundle.d.ts +6 -6
  407. package/three/src/renderers/common/RenderBundles.d.ts +8 -8
  408. package/three/src/renderers/common/RenderContext.d.ts +38 -38
  409. package/three/src/renderers/common/RenderContexts.d.ts +12 -12
  410. package/three/src/renderers/common/RenderList.d.ts +35 -59
  411. package/three/src/renderers/common/RenderLists.d.ts +8 -8
  412. package/three/src/renderers/common/RenderObject.d.ts +59 -74
  413. package/three/src/renderers/common/RenderObjects.d.ts +28 -59
  414. package/three/src/renderers/common/RenderPipeline.d.ts +5 -5
  415. package/three/src/renderers/common/Renderer.d.ts +178 -272
  416. package/three/src/renderers/common/SampledTexture.d.ts +13 -13
  417. package/three/src/renderers/common/Sampler.d.ts +6 -6
  418. package/three/src/renderers/common/StorageBufferAttribute.d.ts +3 -3
  419. package/three/src/renderers/common/StorageInstancedBufferAttribute.d.ts +4 -4
  420. package/three/src/renderers/common/StorageTexture.d.ts +2 -2
  421. package/three/src/renderers/common/Textures.d.ts +53 -53
  422. package/three/src/renderers/common/Uniform.d.ts +28 -28
  423. package/three/src/renderers/common/UniformBuffer.d.ts +3 -3
  424. package/three/src/renderers/common/UniformsGroup.d.ts +20 -29
  425. package/three/src/renderers/common/extras/PMREMGenerator.d.ts +5 -5
  426. package/three/src/renderers/common/nodes/NodeBuilderState.d.ts +16 -27
  427. package/three/src/renderers/common/nodes/NodeSampledTexture.d.ts +12 -17
  428. package/three/src/renderers/common/nodes/NodeSampler.d.ts +7 -7
  429. package/three/src/renderers/common/nodes/NodeUniform.d.ts +31 -54
  430. package/three/src/renderers/common/nodes/NodeUniformsGroup.d.ts +7 -7
  431. package/three/src/renderers/common/nodes/Nodes.d.ts +86 -96
  432. package/three/src/renderers/shaders/ShaderChunk.d.ts +139 -139
  433. package/three/src/renderers/shaders/ShaderLib.d.ts +21 -21
  434. package/three/src/renderers/shaders/UniformsLib.d.ts +182 -182
  435. package/three/src/renderers/shaders/UniformsUtils.d.ts +4 -4
  436. package/three/src/renderers/webgl/WebGLAttributes.d.ts +15 -15
  437. package/three/src/renderers/webgl/WebGLBindingStates.d.ts +16 -22
  438. package/three/src/renderers/webgl/WebGLBufferRenderer.d.ts +8 -17
  439. package/three/src/renderers/webgl/WebGLCapabilities.d.ts +21 -21
  440. package/three/src/renderers/webgl/WebGLClipping.d.ts +19 -19
  441. package/three/src/renderers/webgl/WebGLCubeMaps.d.ts +4 -4
  442. package/three/src/renderers/webgl/WebGLCubeUVMaps.d.ts +5 -5
  443. package/three/src/renderers/webgl/WebGLExtensions.d.ts +4 -4
  444. package/three/src/renderers/webgl/WebGLGeometries.d.ts +9 -9
  445. package/three/src/renderers/webgl/WebGLIndexedBufferRenderer.d.ts +7 -12
  446. package/three/src/renderers/webgl/WebGLInfo.d.ts +29 -29
  447. package/three/src/renderers/webgl/WebGLLights.d.ts +41 -41
  448. package/three/src/renderers/webgl/WebGLObjects.d.ts +3 -3
  449. package/three/src/renderers/webgl/WebGLProgram.d.ts +24 -24
  450. package/three/src/renderers/webgl/WebGLPrograms.d.ts +156 -177
  451. package/three/src/renderers/webgl/WebGLProperties.d.ts +5 -5
  452. package/three/src/renderers/webgl/WebGLRenderLists.d.ts +42 -56
  453. package/three/src/renderers/webgl/WebGLShadowMap.d.ts +29 -29
  454. package/three/src/renderers/webgl/WebGLState.d.ts +54 -99
  455. package/three/src/renderers/webgl/WebGLTextures.d.ts +18 -26
  456. package/three/src/renderers/webgl/WebGLUniforms.d.ts +7 -7
  457. package/three/src/renderers/webgl/WebGLUniformsGroups.d.ts +12 -12
  458. package/three/src/renderers/webgl/WebGLUtils.d.ts +4 -7
  459. package/three/src/renderers/webgl-fallback/WebGLBackend.d.ts +6 -6
  460. package/three/src/renderers/webgpu/WebGPUBackend.d.ts +11 -11
  461. package/three/src/renderers/webgpu/WebGPURenderer.d.ts +4 -4
  462. package/three/src/renderers/webgpu/nodes/WGSLNodeBuilder.d.ts +57 -107
  463. package/three/src/renderers/webgpu/nodes/WGSLNodeFunction.d.ts +3 -3
  464. package/three/src/renderers/webgpu/nodes/WGSLNodeParser.d.ts +3 -3
  465. package/three/src/renderers/webgpu/utils/WebGPUConstants.d.ts +257 -257
  466. package/three/src/renderers/webxr/WebXRController.d.ts +36 -36
  467. package/three/src/renderers/webxr/WebXRDepthSensing.d.ts +13 -13
  468. package/three/src/renderers/webxr/WebXRManager.d.ts +50 -50
  469. package/three/src/scenes/Fog.d.ts +54 -54
  470. package/three/src/scenes/FogExp2.d.ts +43 -43
  471. package/three/src/scenes/Scene.d.ts +98 -98
  472. package/three/src/textures/CanvasTexture.d.ts +21 -38
  473. package/three/src/textures/CompressedArrayTexture.d.ts +45 -52
  474. package/three/src/textures/CompressedCubeTexture.d.ts +5 -9
  475. package/three/src/textures/CompressedTexture.d.ts +56 -77
  476. package/three/src/textures/CubeTexture.d.ts +55 -63
  477. package/three/src/textures/Data3DTexture.d.ts +53 -53
  478. package/three/src/textures/DataArrayTexture.d.ts +76 -76
  479. package/three/src/textures/DataTexture.d.ts +55 -76
  480. package/three/src/textures/DepthTexture.d.ts +67 -86
  481. package/three/src/textures/FramebufferTexture.d.ts +29 -29
  482. package/three/src/textures/Source.d.ts +55 -55
  483. package/three/src/textures/Texture.d.ts +407 -439
  484. package/three/src/textures/VideoTexture.d.ts +45 -62
  485. package/three/src/textures/types.d.ts +4 -4
  486. package/three/three.webgpu.d.ts +1 -1
  487. package/three.webgpu.d.ts +1 -1
@@ -1,26 +1,17 @@
1
- import { AttributeGPUType, Usage } from "../constants.js";
2
- import { Matrix3 } from "../math/Matrix3.js";
3
- import { Matrix4 } from "../math/Matrix4.js";
4
-
5
- export type TypedArray =
6
- | Int8Array
7
- | Uint8Array
8
- | Uint8ClampedArray
9
- | Int16Array
10
- | Uint16Array
11
- | Int32Array
12
- | Uint32Array
13
- | Float32Array
14
- | Float64Array;
1
+ import { AttributeGPUType, Usage } from '../constants.js';
2
+ import { Matrix3 } from '../math/Matrix3.js';
3
+ import { Matrix4 } from '../math/Matrix4.js';
4
+
5
+ export type TypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
15
6
 
16
7
  export interface BufferAttributeJSON {
17
- itemSize: number;
18
- type: string;
19
- array: number[];
20
- normalized: boolean;
8
+ itemSize: number;
9
+ type: string;
10
+ array: number[];
11
+ normalized: boolean;
21
12
 
22
- name?: string;
23
- usage?: Usage;
13
+ name?: string;
14
+ usage?: Usage;
24
15
  }
25
16
 
26
17
  /**
@@ -38,315 +29,315 @@ export interface BufferAttributeJSON {
38
29
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
39
30
  */
40
31
  export class BufferAttribute {
41
- /**
42
- * This creates a new {@link THREE.GLBufferAttribute | GLBufferAttribute} object.
43
- * @param array Must be a `TypedArray`. Used to instantiate the buffer.
44
- * This array should have `itemSize * numVertices` elements, where numVertices is the number of vertices in the associated {@link THREE.BufferGeometry | BufferGeometry}.
45
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
46
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
47
- * then itemSize should be `3`.
48
- * @param normalized Applies to integer data only.
49
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
50
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
51
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
52
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
53
- * If normalized is false, the values will be converted to floats unmodified,
54
- * i.e. `32767` becomes `32767.0f`.
55
- * Default `false`.
56
- * @throws `TypeError` When the {@link array} is not a `TypedArray`;
57
- */
58
- constructor(array: TypedArray, itemSize: number, normalized?: boolean);
59
-
60
- /**
61
- * Optional name for this attribute instance.
62
- * @defaultValue ''
63
- */
64
- name: string;
65
-
66
- /**
67
- * The {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray | TypedArray} holding data stored in the buffer.
68
- * @returns `TypedArray`
69
- */
70
- array: TypedArray;
71
-
72
- /**
73
- * The length of vectors that are being stored in the {@link BufferAttribute.array | array}.
74
- * @remarks Expects a `Integer`
75
- */
76
- itemSize: number;
77
-
78
- /**
79
- * Defines the intended usage pattern of the data store for optimization purposes.
80
- * Corresponds to the {@link BufferAttribute.usage | usage} parameter of
81
- * {@link https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData | WebGLRenderingContext.bufferData}.
82
- * @remarks
83
- * After the initial use of a buffer, its usage cannot be changed. Instead, instantiate a new one and set the desired usage before the next render.
84
- * @see {@link https://threejs.org/docs/index.html#api/en/constants/BufferAttributeUsage | Buffer Attribute Usage Constants} for all possible values.
85
- * @see {@link BufferAttribute.setUsage | setUsage}
86
- * @defaultValue {@link THREE.StaticDrawUsage | THREE.StaticDrawUsage}.
87
- */
88
- usage: Usage;
89
-
90
- /**
91
- * Configures the bound GPU type for use in shaders. Either {@link FloatType} or {@link IntType}, default is {@link FloatType}.
92
- *
93
- * Note: this only has an effect for integer arrays and is not configurable for float arrays. For lower precision
94
- * float types, see https://threejs.org/docs/#api/en/core/bufferAttributeTypes/BufferAttributeTypes.
95
- */
96
- gpuType: AttributeGPUType;
97
-
98
- /**
99
- * This can be used to only update some components of stored vectors (for example, just the component related to color).
100
- * @defaultValue `{ offset: number = 0; count: number = -1 }`
101
- * @deprecated Will be removed in r169. Use "addUpdateRange()" instead.
102
- */
103
- updateRange: {
104
- /**
105
- * Position at which to start update.
106
- * @defaultValue `0`
107
- */
108
- offset: number;
109
- /** @defaultValue `-1`, which means don't use update ranges. */
110
- count: number;
111
- };
112
-
113
- /**
114
- * This can be used to only update some components of stored vectors (for example, just the component related to
115
- * color). Use the {@link .addUpdateRange} function to add ranges to this array.
116
- */
117
- updateRanges: Array<{
118
- /**
119
- * Position at which to start update.
120
- */
121
- start: number;
122
- /**
123
- * The number of components to update.
124
- */
125
- count: number;
126
- }>;
127
-
128
- /**
129
- * A version number, incremented every time the {@link BufferAttribute.needsUpdate | needsUpdate} property is set to true.
130
- * @remarks Expects a `Integer`
131
- * @defaultValue `0`
132
- */
133
- version: number;
134
-
135
- /**
136
- * Indicates how the underlying data in the buffer maps to the values in the GLSL shader code.
137
- * @see `constructor` above for details.
138
- * @defaultValue `false`
139
- */
140
- normalized: boolean;
141
-
142
- /**
143
- * Represents the number of items this buffer attribute stores. It is internally computed by dividing the
144
- * {@link BufferAttribute.array | array}'s length by the {@link BufferAttribute.itemSize | itemSize}. Read-only
145
- * property.
146
- */
147
- readonly count: number;
148
-
149
- /**
150
- * Flag to indicate that this attribute has changed and should be re-sent to the GPU.
151
- * Set this to true when you modify the value of the array.
152
- * @remarks Setting this to true also increments the {@link BufferAttribute.version | version}.
153
- * @remarks _set-only property_.
154
- */
155
- set needsUpdate(value: boolean);
156
-
157
- /**
158
- * Read-only flag to check if a given object is of type {@link BufferAttribute}.
159
- * @remarks This is a _constant_ value
160
- * @defaultValue `true`
161
- */
162
- readonly isBufferAttribute: true;
163
-
164
- /**
165
- * A callback function that is executed after the Renderer has transferred the attribute array data to the GPU.
166
- */
167
- onUploadCallback: () => void;
168
-
169
- /**
170
- * Sets the value of the {@link onUploadCallback} property.
171
- * @see Example: {@link https://threejs.org/examples/#webgl_buffergeometry | WebGL / BufferGeometry} this is used to free memory after the buffer has been transferred to the GPU.
172
- * @see {@link onUploadCallback}
173
- * @param callback function that is executed after the Renderer has transferred the attribute array data to the GPU.
174
- */
175
- onUpload(callback: () => void): this;
176
-
177
- /**
178
- * Set {@link BufferAttribute.usage | usage}
179
- * @remarks
180
- * After the initial use of a buffer, its usage cannot be changed. Instead, instantiate a new one and set the desired usage before the next render.
181
- * @see {@link https://threejs.org/docs/index.html#api/en/constants/BufferAttributeUsage | Buffer Attribute Usage Constants} for all possible values.
182
- * @see {@link BufferAttribute.usage | usage}
183
- * @param value Corresponds to the {@link BufferAttribute.usage | usage} parameter of
184
- * {@link https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData | WebGLRenderingContext.bufferData}.
185
- */
186
- setUsage(usage: Usage): this;
187
-
188
- /**
189
- * Adds a range of data in the data array to be updated on the GPU. Adds an object describing the range to the
190
- * {@link .updateRanges} array.
191
- */
192
- addUpdateRange(start: number, count: number): void;
193
-
194
- /**
195
- * Clears the {@link .updateRanges} array.
196
- */
197
- clearUpdateRanges(): void;
198
-
199
- /**
200
- * @returns a copy of this {@link BufferAttribute}.
201
- */
202
- clone(): BufferAttribute;
203
-
204
- /**
205
- * Copies another {@link BufferAttribute} to this {@link BufferAttribute}.
206
- * @param bufferAttribute
207
- */
208
- copy(source: BufferAttribute): this;
209
-
210
- /**
211
- * Copy a vector from bufferAttribute[index2] to {@link BufferAttribute.array | array}[index1].
212
- * @param index1
213
- * @param bufferAttribute
214
- * @param index2
215
- */
216
- copyAt(index1: number, attribute: BufferAttribute, index2: number): this;
217
-
218
- /**
219
- * Copy the array given here (which can be a normal array or `TypedArray`) into {@link BufferAttribute.array | array}.
220
- * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set | TypedArray.set} for notes on requirements if copying a `TypedArray`.
221
- */
222
- copyArray(array: ArrayLike<number>): this;
223
-
224
- /**
225
- * Applies matrix {@link Matrix3 | m} to every Vector3 element of this {@link BufferAttribute}.
226
- * @param m
227
- */
228
- applyMatrix3(m: Matrix3): this;
229
-
230
- /**
231
- * Applies matrix {@link Matrix4 | m} to every Vector3 element of this {@link BufferAttribute}.
232
- * @param m
233
- */
234
- applyMatrix4(m: Matrix4): this;
235
-
236
- /**
237
- * Applies normal matrix {@link Matrix3 | m} to every Vector3 element of this {@link BufferAttribute}.
238
- * @param m
239
- */
240
- applyNormalMatrix(m: Matrix3): this;
241
-
242
- /**
243
- * Applies matrix {@link Matrix4 | m} to every Vector3 element of this {@link BufferAttribute}, interpreting the elements as a direction vectors.
244
- * @param m
245
- */
246
- transformDirection(m: Matrix4): this;
247
-
248
- /**
249
- * Calls {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set | TypedArray.set}( {@link value}, {@link offset} )
250
- * on the {@link BufferAttribute.array | array}.
251
- * @param value {@link Array | Array} or `TypedArray` from which to copy values.
252
- * @param offset index of the {@link BufferAttribute.array | array} at which to start copying. Expects a `Integer`. Default `0`.
253
- * @throws `RangeError` When {@link offset} is negative or is too large.
254
- */
255
- set(value: ArrayLike<number> | ArrayBufferView, offset?: number): this;
256
-
257
- /**
258
- * Returns the given component of the vector at the given index.
259
- */
260
- getComponent(index: number, component: number): number;
261
-
262
- /**
263
- * Sets the given component of the vector at the given index.
264
- */
265
- setComponent(index: number, component: number, value: number): void;
266
-
267
- /**
268
- * Returns the x component of the vector at the given index.
269
- * @param index Expects a `Integer`
270
- */
271
- getX(index: number): number;
272
-
273
- /**
274
- * Sets the x component of the vector at the given index.
275
- * @param index Expects a `Integer`
276
- * @param x
277
- */
278
- setX(index: number, x: number): this;
279
-
280
- /**
281
- * Returns the y component of the vector at the given index.
282
- * @param index Expects a `Integer`
283
- */
284
- getY(index: number): number;
285
-
286
- /**
287
- * Sets the y component of the vector at the given index.
288
- * @param index Expects a `Integer`
289
- * @param y
290
- */
291
- setY(index: number, y: number): this;
292
-
293
- /**
294
- * Returns the z component of the vector at the given index.
295
- * @param index Expects a `Integer`
296
- */
297
- getZ(index: number): number;
298
-
299
- /**
300
- * Sets the z component of the vector at the given index.
301
- * @param index Expects a `Integer`
302
- * @param z
303
- */
304
- setZ(index: number, z: number): this;
305
-
306
- /**
307
- * Returns the w component of the vector at the given index.
308
- * @param index Expects a `Integer`
309
- */
310
- getW(index: number): number;
311
-
312
- /**
313
- * Sets the w component of the vector at the given index.
314
- * @param index Expects a `Integer`
315
- * @param w
316
- */
317
- setW(index: number, z: number): this;
318
-
319
- /**
320
- * Sets the x and y components of the vector at the given index.
321
- * @param index Expects a `Integer`
322
- * @param x
323
- * @param y
324
- */
325
- setXY(index: number, x: number, y: number): this;
326
-
327
- /**
328
- * Sets the x, y and z components of the vector at the given index.
329
- * @param index Expects a `Integer`
330
- * @param x
331
- * @param y
332
- * @param z
333
- */
334
- setXYZ(index: number, x: number, y: number, z: number): this;
335
-
336
- /**
337
- * Sets the x, y, z and w components of the vector at the given index.
338
- * @param index Expects a `Integer`
339
- * @param x
340
- * @param y
341
- * @param z
342
- * @param w
343
- */
344
- setXYZW(index: number, x: number, y: number, z: number, w: number): this;
345
-
346
- /**
347
- * Convert this object to three.js to the `data.attributes` part of {@link https://github.com/mrdoob/three.js/wiki/JSON-Geometry-format-4 | JSON Geometry format v4},
348
- */
349
- toJSON(): BufferAttributeJSON;
32
+ /**
33
+ * This creates a new {@link THREE.GLBufferAttribute | GLBufferAttribute} object.
34
+ * @param array Must be a `TypedArray`. Used to instantiate the buffer.
35
+ * This array should have `itemSize * numVertices` elements, where numVertices is the number of vertices in the associated {@link THREE.BufferGeometry | BufferGeometry}.
36
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
37
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
38
+ * then itemSize should be `3`.
39
+ * @param normalized Applies to integer data only.
40
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
41
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
42
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
43
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
44
+ * If normalized is false, the values will be converted to floats unmodified,
45
+ * i.e. `32767` becomes `32767.0f`.
46
+ * Default `false`.
47
+ * @throws `TypeError` When the {@link array} is not a `TypedArray`;
48
+ */
49
+ constructor(array: TypedArray, itemSize: number, normalized?: boolean);
50
+
51
+ /**
52
+ * Optional name for this attribute instance.
53
+ * @defaultValue ''
54
+ */
55
+ name: string;
56
+
57
+ /**
58
+ * The {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray | TypedArray} holding data stored in the buffer.
59
+ * @returns `TypedArray`
60
+ */
61
+ array: TypedArray;
62
+
63
+ /**
64
+ * The length of vectors that are being stored in the {@link BufferAttribute.array | array}.
65
+ * @remarks Expects a `Integer`
66
+ */
67
+ itemSize: number;
68
+
69
+ /**
70
+ * Defines the intended usage pattern of the data store for optimization purposes.
71
+ * Corresponds to the {@link BufferAttribute.usage | usage} parameter of
72
+ * {@link https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData | WebGLRenderingContext.bufferData}.
73
+ * @remarks
74
+ * After the initial use of a buffer, its usage cannot be changed. Instead, instantiate a new one and set the desired usage before the next render.
75
+ * @see {@link https://threejs.org/docs/index.html#api/en/constants/BufferAttributeUsage | Buffer Attribute Usage Constants} for all possible values.
76
+ * @see {@link BufferAttribute.setUsage | setUsage}
77
+ * @defaultValue {@link THREE.StaticDrawUsage | THREE.StaticDrawUsage}.
78
+ */
79
+ usage: Usage;
80
+
81
+ /**
82
+ * Configures the bound GPU type for use in shaders. Either {@link FloatType} or {@link IntType}, default is {@link FloatType}.
83
+ *
84
+ * Note: this only has an effect for integer arrays and is not configurable for float arrays. For lower precision
85
+ * float types, see https://threejs.org/docs/#api/en/core/bufferAttributeTypes/BufferAttributeTypes.
86
+ */
87
+ gpuType: AttributeGPUType;
88
+
89
+ /**
90
+ * This can be used to only update some components of stored vectors (for example, just the component related to color).
91
+ * @defaultValue `{ offset: number = 0; count: number = -1 }`
92
+ * @deprecated Will be removed in r169. Use "addUpdateRange()" instead.
93
+ */
94
+ updateRange: {
95
+ /**
96
+ * Position at which to start update.
97
+ * @defaultValue `0`
98
+ */
99
+ offset: number;
100
+ /** @defaultValue `-1`, which means don't use update ranges. */
101
+ count: number;
102
+ };
103
+
104
+ /**
105
+ * This can be used to only update some components of stored vectors (for example, just the component related to
106
+ * color). Use the {@link .addUpdateRange} function to add ranges to this array.
107
+ */
108
+ updateRanges: Array<{
109
+ /**
110
+ * Position at which to start update.
111
+ */
112
+ start: number;
113
+ /**
114
+ * The number of components to update.
115
+ */
116
+ count: number;
117
+ }>;
118
+
119
+ /**
120
+ * A version number, incremented every time the {@link BufferAttribute.needsUpdate | needsUpdate} property is set to true.
121
+ * @remarks Expects a `Integer`
122
+ * @defaultValue `0`
123
+ */
124
+ version: number;
125
+
126
+ /**
127
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL shader code.
128
+ * @see `constructor` above for details.
129
+ * @defaultValue `false`
130
+ */
131
+ normalized: boolean;
132
+
133
+ /**
134
+ * Represents the number of items this buffer attribute stores. It is internally computed by dividing the
135
+ * {@link BufferAttribute.array | array}'s length by the {@link BufferAttribute.itemSize | itemSize}. Read-only
136
+ * property.
137
+ */
138
+ readonly count: number;
139
+
140
+ /**
141
+ * Flag to indicate that this attribute has changed and should be re-sent to the GPU.
142
+ * Set this to true when you modify the value of the array.
143
+ * @remarks Setting this to true also increments the {@link BufferAttribute.version | version}.
144
+ * @remarks _set-only property_.
145
+ */
146
+ set needsUpdate(value: boolean);
147
+
148
+ /**
149
+ * Read-only flag to check if a given object is of type {@link BufferAttribute}.
150
+ * @remarks This is a _constant_ value
151
+ * @defaultValue `true`
152
+ */
153
+ readonly isBufferAttribute: true;
154
+
155
+ /**
156
+ * A callback function that is executed after the Renderer has transferred the attribute array data to the GPU.
157
+ */
158
+ onUploadCallback: () => void;
159
+
160
+ /**
161
+ * Sets the value of the {@link onUploadCallback} property.
162
+ * @see Example: {@link https://threejs.org/examples/#webgl_buffergeometry | WebGL / BufferGeometry} this is used to free memory after the buffer has been transferred to the GPU.
163
+ * @see {@link onUploadCallback}
164
+ * @param callback function that is executed after the Renderer has transferred the attribute array data to the GPU.
165
+ */
166
+ onUpload(callback: () => void): this;
167
+
168
+ /**
169
+ * Set {@link BufferAttribute.usage | usage}
170
+ * @remarks
171
+ * After the initial use of a buffer, its usage cannot be changed. Instead, instantiate a new one and set the desired usage before the next render.
172
+ * @see {@link https://threejs.org/docs/index.html#api/en/constants/BufferAttributeUsage | Buffer Attribute Usage Constants} for all possible values.
173
+ * @see {@link BufferAttribute.usage | usage}
174
+ * @param value Corresponds to the {@link BufferAttribute.usage | usage} parameter of
175
+ * {@link https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/bufferData | WebGLRenderingContext.bufferData}.
176
+ */
177
+ setUsage(usage: Usage): this;
178
+
179
+ /**
180
+ * Adds a range of data in the data array to be updated on the GPU. Adds an object describing the range to the
181
+ * {@link .updateRanges} array.
182
+ */
183
+ addUpdateRange(start: number, count: number): void;
184
+
185
+ /**
186
+ * Clears the {@link .updateRanges} array.
187
+ */
188
+ clearUpdateRanges(): void;
189
+
190
+ /**
191
+ * @returns a copy of this {@link BufferAttribute}.
192
+ */
193
+ clone(): BufferAttribute;
194
+
195
+ /**
196
+ * Copies another {@link BufferAttribute} to this {@link BufferAttribute}.
197
+ * @param bufferAttribute
198
+ */
199
+ copy(source: BufferAttribute): this;
200
+
201
+ /**
202
+ * Copy a vector from bufferAttribute[index2] to {@link BufferAttribute.array | array}[index1].
203
+ * @param index1
204
+ * @param bufferAttribute
205
+ * @param index2
206
+ */
207
+ copyAt(index1: number, attribute: BufferAttribute, index2: number): this;
208
+
209
+ /**
210
+ * Copy the array given here (which can be a normal array or `TypedArray`) into {@link BufferAttribute.array | array}.
211
+ * @see {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set | TypedArray.set} for notes on requirements if copying a `TypedArray`.
212
+ */
213
+ copyArray(array: ArrayLike<number>): this;
214
+
215
+ /**
216
+ * Applies matrix {@link Matrix3 | m} to every Vector3 element of this {@link BufferAttribute}.
217
+ * @param m
218
+ */
219
+ applyMatrix3(m: Matrix3): this;
220
+
221
+ /**
222
+ * Applies matrix {@link Matrix4 | m} to every Vector3 element of this {@link BufferAttribute}.
223
+ * @param m
224
+ */
225
+ applyMatrix4(m: Matrix4): this;
226
+
227
+ /**
228
+ * Applies normal matrix {@link Matrix3 | m} to every Vector3 element of this {@link BufferAttribute}.
229
+ * @param m
230
+ */
231
+ applyNormalMatrix(m: Matrix3): this;
232
+
233
+ /**
234
+ * Applies matrix {@link Matrix4 | m} to every Vector3 element of this {@link BufferAttribute}, interpreting the elements as a direction vectors.
235
+ * @param m
236
+ */
237
+ transformDirection(m: Matrix4): this;
238
+
239
+ /**
240
+ * Calls {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/set | TypedArray.set}( {@link value}, {@link offset} )
241
+ * on the {@link BufferAttribute.array | array}.
242
+ * @param value {@link Array | Array} or `TypedArray` from which to copy values.
243
+ * @param offset index of the {@link BufferAttribute.array | array} at which to start copying. Expects a `Integer`. Default `0`.
244
+ * @throws `RangeError` When {@link offset} is negative or is too large.
245
+ */
246
+ set(value: ArrayLike<number> | ArrayBufferView, offset?: number): this;
247
+
248
+ /**
249
+ * Returns the given component of the vector at the given index.
250
+ */
251
+ getComponent(index: number, component: number): number;
252
+
253
+ /**
254
+ * Sets the given component of the vector at the given index.
255
+ */
256
+ setComponent(index: number, component: number, value: number): void;
257
+
258
+ /**
259
+ * Returns the x component of the vector at the given index.
260
+ * @param index Expects a `Integer`
261
+ */
262
+ getX(index: number): number;
263
+
264
+ /**
265
+ * Sets the x component of the vector at the given index.
266
+ * @param index Expects a `Integer`
267
+ * @param x
268
+ */
269
+ setX(index: number, x: number): this;
270
+
271
+ /**
272
+ * Returns the y component of the vector at the given index.
273
+ * @param index Expects a `Integer`
274
+ */
275
+ getY(index: number): number;
276
+
277
+ /**
278
+ * Sets the y component of the vector at the given index.
279
+ * @param index Expects a `Integer`
280
+ * @param y
281
+ */
282
+ setY(index: number, y: number): this;
283
+
284
+ /**
285
+ * Returns the z component of the vector at the given index.
286
+ * @param index Expects a `Integer`
287
+ */
288
+ getZ(index: number): number;
289
+
290
+ /**
291
+ * Sets the z component of the vector at the given index.
292
+ * @param index Expects a `Integer`
293
+ * @param z
294
+ */
295
+ setZ(index: number, z: number): this;
296
+
297
+ /**
298
+ * Returns the w component of the vector at the given index.
299
+ * @param index Expects a `Integer`
300
+ */
301
+ getW(index: number): number;
302
+
303
+ /**
304
+ * Sets the w component of the vector at the given index.
305
+ * @param index Expects a `Integer`
306
+ * @param w
307
+ */
308
+ setW(index: number, z: number): this;
309
+
310
+ /**
311
+ * Sets the x and y components of the vector at the given index.
312
+ * @param index Expects a `Integer`
313
+ * @param x
314
+ * @param y
315
+ */
316
+ setXY(index: number, x: number, y: number): this;
317
+
318
+ /**
319
+ * Sets the x, y and z components of the vector at the given index.
320
+ * @param index Expects a `Integer`
321
+ * @param x
322
+ * @param y
323
+ * @param z
324
+ */
325
+ setXYZ(index: number, x: number, y: number, z: number): this;
326
+
327
+ /**
328
+ * Sets the x, y, z and w components of the vector at the given index.
329
+ * @param index Expects a `Integer`
330
+ * @param x
331
+ * @param y
332
+ * @param z
333
+ * @param w
334
+ */
335
+ setXYZW(index: number, x: number, y: number, z: number, w: number): this;
336
+
337
+ /**
338
+ * Convert this object to three.js to the `data.attributes` part of {@link https://github.com/mrdoob/three.js/wiki/JSON-Geometry-format-4 | JSON Geometry format v4},
339
+ */
340
+ toJSON(): BufferAttributeJSON;
350
341
  }
351
342
 
352
343
  /**
@@ -357,27 +348,23 @@ export class BufferAttribute {
357
348
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
358
349
  */
359
350
  export class Int8BufferAttribute extends BufferAttribute {
360
- /**
361
- * This creates a new {@link THREE.Int8BufferAttribute | Int8BufferAttribute} object.
362
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int8Array`.
363
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
364
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
365
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
366
- * then itemSize should be `3`.
367
- * @param normalized Applies to integer data only.
368
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
369
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
370
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
371
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
372
- * If normalized is false, the values will be converted to floats unmodified,
373
- * i.e. `32767` becomes `32767.0f`.
374
- * Default `false`.
375
- */
376
- constructor(
377
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
378
- itemSize: number,
379
- normalized?: boolean,
380
- );
351
+ /**
352
+ * This creates a new {@link THREE.Int8BufferAttribute | Int8BufferAttribute} object.
353
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int8Array`.
354
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
355
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
356
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
357
+ * then itemSize should be `3`.
358
+ * @param normalized Applies to integer data only.
359
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
360
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
361
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
362
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
363
+ * If normalized is false, the values will be converted to floats unmodified,
364
+ * i.e. `32767` becomes `32767.0f`.
365
+ * Default `false`.
366
+ */
367
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
381
368
  }
382
369
 
383
370
  /**
@@ -388,28 +375,24 @@ export class Int8BufferAttribute extends BufferAttribute {
388
375
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
389
376
  */
390
377
  export class Uint8BufferAttribute extends BufferAttribute {
391
- /**
392
- * This creates a new {@link THREE.Uint8BufferAttribute | Uint8BufferAttribute} object.
393
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint8Array`.
394
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
395
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
396
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
397
- * then itemSize should be `3`.
398
- * @param normalized Applies to integer data only.
399
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
400
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
401
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
402
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
403
- * If normalized is false, the values will be converted to floats unmodified,
404
- * i.e. `32767` becomes `32767.0f`.
405
- * Default `false`.
406
- * @see {@link THREE.BufferAttribute | BufferAttribute}
407
- */
408
- constructor(
409
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
410
- itemSize: number,
411
- normalized?: boolean,
412
- );
378
+ /**
379
+ * This creates a new {@link THREE.Uint8BufferAttribute | Uint8BufferAttribute} object.
380
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint8Array`.
381
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
382
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
383
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
384
+ * then itemSize should be `3`.
385
+ * @param normalized Applies to integer data only.
386
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
387
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
388
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
389
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
390
+ * If normalized is false, the values will be converted to floats unmodified,
391
+ * i.e. `32767` becomes `32767.0f`.
392
+ * Default `false`.
393
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
394
+ */
395
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
413
396
  }
414
397
 
415
398
  /**
@@ -420,28 +403,24 @@ export class Uint8BufferAttribute extends BufferAttribute {
420
403
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
421
404
  */
422
405
  export class Uint8ClampedBufferAttribute extends BufferAttribute {
423
- /**
424
- * This creates a new {@link THREE.Uint8ClampedBufferAttribute | Uint8ClampedBufferAttribute} object.
425
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint8ClampedArray`.
426
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
427
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
428
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
429
- * then itemSize should be `3`.
430
- * @param normalized Applies to integer data only.
431
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
432
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
433
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
434
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
435
- * If normalized is false, the values will be converted to floats unmodified,
436
- * i.e. `32767` becomes `32767.0f`.
437
- * Default `false`.
438
- * @see {@link THREE.BufferAttribute | BufferAttribute}
439
- */
440
- constructor(
441
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
442
- itemSize: number,
443
- normalized?: boolean,
444
- );
406
+ /**
407
+ * This creates a new {@link THREE.Uint8ClampedBufferAttribute | Uint8ClampedBufferAttribute} object.
408
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint8ClampedArray`.
409
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
410
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
411
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
412
+ * then itemSize should be `3`.
413
+ * @param normalized Applies to integer data only.
414
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
415
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
416
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
417
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
418
+ * If normalized is false, the values will be converted to floats unmodified,
419
+ * i.e. `32767` becomes `32767.0f`.
420
+ * Default `false`.
421
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
422
+ */
423
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
445
424
  }
446
425
 
447
426
  /**
@@ -452,28 +431,24 @@ export class Uint8ClampedBufferAttribute extends BufferAttribute {
452
431
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
453
432
  */
454
433
  export class Int16BufferAttribute extends BufferAttribute {
455
- /**
456
- * This creates a new {@link THREE.Int16BufferAttribute | Int16BufferAttribute} object.
457
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int16Array`.
458
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
459
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
460
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
461
- * then itemSize should be `3`.
462
- * @param normalized Applies to integer data only.
463
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
464
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
465
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
466
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
467
- * If normalized is false, the values will be converted to floats unmodified,
468
- * i.e. `32767` becomes `32767.0f`.
469
- * Default `false`.
470
- * @see {@link THREE.BufferAttribute | BufferAttribute}
471
- */
472
- constructor(
473
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
474
- itemSize: number,
475
- normalized?: boolean,
476
- );
434
+ /**
435
+ * This creates a new {@link THREE.Int16BufferAttribute | Int16BufferAttribute} object.
436
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int16Array`.
437
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
438
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
439
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
440
+ * then itemSize should be `3`.
441
+ * @param normalized Applies to integer data only.
442
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
443
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
444
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
445
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
446
+ * If normalized is false, the values will be converted to floats unmodified,
447
+ * i.e. `32767` becomes `32767.0f`.
448
+ * Default `false`.
449
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
450
+ */
451
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
477
452
  }
478
453
 
479
454
  /**
@@ -484,28 +459,24 @@ export class Int16BufferAttribute extends BufferAttribute {
484
459
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
485
460
  */
486
461
  export class Uint16BufferAttribute extends BufferAttribute {
487
- /**
488
- * This creates a new {@link THREE.Uint16BufferAttribute | Uint16BufferAttribute} object.
489
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint16Array`.
490
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
491
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
492
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
493
- * then itemSize should be `3`.
494
- * @param normalized Applies to integer data only.
495
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
496
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
497
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
498
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
499
- * If normalized is false, the values will be converted to floats unmodified,
500
- * i.e. `32767` becomes `32767.0f`.
501
- * Default `false`.
502
- * @see {@link THREE.BufferAttribute | BufferAttribute}
503
- */
504
- constructor(
505
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
506
- itemSize: number,
507
- normalized?: boolean,
508
- );
462
+ /**
463
+ * This creates a new {@link THREE.Uint16BufferAttribute | Uint16BufferAttribute} object.
464
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint16Array`.
465
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
466
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
467
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
468
+ * then itemSize should be `3`.
469
+ * @param normalized Applies to integer data only.
470
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
471
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
472
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
473
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
474
+ * If normalized is false, the values will be converted to floats unmodified,
475
+ * i.e. `32767` becomes `32767.0f`.
476
+ * Default `false`.
477
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
478
+ */
479
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
509
480
  }
510
481
 
511
482
  /**
@@ -516,28 +487,24 @@ export class Uint16BufferAttribute extends BufferAttribute {
516
487
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
517
488
  */
518
489
  export class Int32BufferAttribute extends BufferAttribute {
519
- /**
520
- * This creates a new {@link THREE.Int32BufferAttribute | Int32BufferAttribute} object.
521
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int32Array`.
522
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
523
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
524
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
525
- * then itemSize should be `3`.
526
- * @param normalized Applies to integer data only.
527
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
528
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
529
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
530
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
531
- * If normalized is false, the values will be converted to floats unmodified,
532
- * i.e. `32767` becomes `32767.0f`.
533
- * Default `false`.
534
- * @see {@link THREE.BufferAttribute | BufferAttribute}
535
- */
536
- constructor(
537
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
538
- itemSize: number,
539
- normalized?: boolean,
540
- );
490
+ /**
491
+ * This creates a new {@link THREE.Int32BufferAttribute | Int32BufferAttribute} object.
492
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Int32Array`.
493
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
494
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
495
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
496
+ * then itemSize should be `3`.
497
+ * @param normalized Applies to integer data only.
498
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
499
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
500
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
501
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
502
+ * If normalized is false, the values will be converted to floats unmodified,
503
+ * i.e. `32767` becomes `32767.0f`.
504
+ * Default `false`.
505
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
506
+ */
507
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
541
508
  }
542
509
 
543
510
  /**
@@ -548,28 +515,24 @@ export class Int32BufferAttribute extends BufferAttribute {
548
515
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
549
516
  */
550
517
  export class Uint32BufferAttribute extends BufferAttribute {
551
- /**
552
- * This creates a new {@link THREE.Uint32BufferAttribute | Uint32BufferAttribute} object.
553
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint32Array`.
554
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
555
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
556
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
557
- * then itemSize should be `3`.
558
- * @param normalized Applies to integer data only.
559
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
560
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
561
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
562
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
563
- * If normalized is false, the values will be converted to floats unmodified,
564
- * i.e. `32767` becomes `32767.0f`.
565
- * Default `false`.
566
- * @see {@link THREE.BufferAttribute | BufferAttribute}
567
- */
568
- constructor(
569
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
570
- itemSize: number,
571
- normalized?: boolean,
572
- );
518
+ /**
519
+ * This creates a new {@link THREE.Uint32BufferAttribute | Uint32BufferAttribute} object.
520
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint32Array`.
521
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
522
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
523
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
524
+ * then itemSize should be `3`.
525
+ * @param normalized Applies to integer data only.
526
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
527
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
528
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
529
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
530
+ * If normalized is false, the values will be converted to floats unmodified,
531
+ * i.e. `32767` becomes `32767.0f`.
532
+ * Default `false`.
533
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
534
+ */
535
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
573
536
  }
574
537
 
575
538
  /**
@@ -580,28 +543,24 @@ export class Uint32BufferAttribute extends BufferAttribute {
580
543
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
581
544
  */
582
545
  export class Float16BufferAttribute extends BufferAttribute {
583
- /**
584
- * This creates a new {@link THREE.Float16BufferAttribute | Float16BufferAttribute} object.
585
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint16Array`.
586
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
587
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
588
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
589
- * then itemSize should be `3`.
590
- * @param normalized Applies to integer data only.
591
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
592
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
593
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
594
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
595
- * If normalized is false, the values will be converted to floats unmodified,
596
- * i.e. `32767` becomes `32767.0f`.
597
- * Default `false`.
598
- * @see {@link THREE.BufferAttribute | BufferAttribute}
599
- */
600
- constructor(
601
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
602
- itemSize: number,
603
- normalized?: boolean,
604
- );
546
+ /**
547
+ * This creates a new {@link THREE.Float16BufferAttribute | Float16BufferAttribute} object.
548
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Uint16Array`.
549
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
550
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
551
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
552
+ * then itemSize should be `3`.
553
+ * @param normalized Applies to integer data only.
554
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
555
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
556
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
557
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
558
+ * If normalized is false, the values will be converted to floats unmodified,
559
+ * i.e. `32767` becomes `32767.0f`.
560
+ * Default `false`.
561
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
562
+ */
563
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
605
564
  }
606
565
 
607
566
  /**
@@ -612,26 +571,22 @@ export class Float16BufferAttribute extends BufferAttribute {
612
571
  * @see {@link https://github.com/mrdoob/three.js/blob/master/src/core/BufferAttribute.js | Source}
613
572
  */
614
573
  export class Float32BufferAttribute extends BufferAttribute {
615
- /**
616
- * This creates a new {@link THREE.Float32BufferAttribute | Float32BufferAttribute} object.
617
- * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Float32Array`.
618
- * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
619
- * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
620
- * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
621
- * then itemSize should be `3`.
622
- * @param normalized Applies to integer data only.
623
- * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
624
- * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
625
- * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
626
- * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
627
- * If normalized is false, the values will be converted to floats unmodified,
628
- * i.e. `32767` becomes `32767.0f`.
629
- * Default `false`.
630
- * @see {@link THREE.BufferAttribute | BufferAttribute}
631
- */
632
- constructor(
633
- array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number,
634
- itemSize: number,
635
- normalized?: boolean,
636
- );
574
+ /**
575
+ * This creates a new {@link THREE.Float32BufferAttribute | Float32BufferAttribute} object.
576
+ * @param array This can be a typed or untyped (normal) array or an integer length. An array value will be converted to `Float32Array`.
577
+ * If a length is given a new `TypedArray` will created, initialized with all elements set to zero.
578
+ * @param itemSize the number of values of the {@link array} that should be associated with a particular vertex.
579
+ * For instance, if this attribute is storing a 3-component vector (such as a _position_, _normal_, or _color_),
580
+ * then itemSize should be `3`.
581
+ * @param normalized Applies to integer data only.
582
+ * Indicates how the underlying data in the buffer maps to the values in the GLSL code.
583
+ * For instance, if {@link array} is an instance of `UInt16Array`, and {@link normalized} is true,
584
+ * the values `0` - `+65535` in the array data will be mapped to `0.0f` - `+1.0f` in the GLSL attribute.
585
+ * An `Int16Array` (signed) would map from `-32768` - `+32767` to `-1.0f` - `+1.0f`.
586
+ * If normalized is false, the values will be converted to floats unmodified,
587
+ * i.e. `32767` becomes `32767.0f`.
588
+ * Default `false`.
589
+ * @see {@link THREE.BufferAttribute | BufferAttribute}
590
+ */
591
+ constructor(array: Iterable<number> | ArrayLike<number> | ArrayBuffer | number, itemSize: number, normalized?: boolean);
637
592
  }