three-stdlib 2.15.2 → 2.16.1

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 (1218) hide show
  1. package/BufferGeometryUtils-1a7a235c.js +655 -0
  2. package/BufferGeometryUtils-971dfde3.js +1 -0
  3. package/Nodes-4f766d71.js +471 -0
  4. package/Nodes-9aa16d74.js +1 -0
  5. package/animation/AnimationClipCreator.cjs.js +1 -0
  6. package/animation/AnimationClipCreator.js +52 -32
  7. package/animation/CCDIKSolver.cjs.js +1 -0
  8. package/animation/CCDIKSolver.js +275 -207
  9. package/animation/MMDAnimationHelper.cjs.js +1 -0
  10. package/animation/MMDAnimationHelper.js +341 -150
  11. package/animation/MMDPhysics.cjs.js +1 -0
  12. package/animation/MMDPhysics.js +361 -154
  13. package/cameras/CinematicCamera.cjs.js +1 -0
  14. package/cameras/CinematicCamera.js +77 -67
  15. package/controls/ArcballControls.cjs.js +1 -0
  16. package/controls/ArcballControls.js +1449 -544
  17. package/controls/DeviceOrientationControls.cjs.js +1 -0
  18. package/controls/DeviceOrientationControls.js +97 -52
  19. package/controls/DragControls.cjs.js +1 -0
  20. package/controls/DragControls.js +187 -85
  21. package/controls/FirstPersonControls.cjs.js +1 -0
  22. package/controls/FirstPersonControls.js +193 -123
  23. package/controls/FlyControls.cjs.js +1 -0
  24. package/controls/FlyControls.js +152 -82
  25. package/controls/OrbitControls.cjs.js +1 -0
  26. package/controls/OrbitControls.js +481 -232
  27. package/controls/PointerLockControls.cjs.js +1 -0
  28. package/controls/PointerLockControls.js +99 -63
  29. package/controls/TrackballControls.cjs.js +1 -0
  30. package/controls/TrackballControls.js +383 -211
  31. package/controls/TransformControls.cjs.js +1 -0
  32. package/controls/TransformControls.js +782 -575
  33. package/controls/experimental/CameraControls.cjs.js +1 -0
  34. package/controls/experimental/CameraControls.js +609 -329
  35. package/csm/CSM.cjs.js +1 -0
  36. package/csm/CSM.js +108 -47
  37. package/csm/CSMFrustum.cjs.js +1 -0
  38. package/csm/CSMFrustum.js +29 -14
  39. package/csm/CSMHelper.cjs.js +1 -0
  40. package/csm/CSMHelper.js +34 -20
  41. package/csm/CSMShader.cjs.js +1 -0
  42. package/csm/CSMShader.js +11 -7
  43. package/curves/CurveExtras.cjs.js +1 -0
  44. package/curves/CurveExtras.js +115 -73
  45. package/curves/NURBSCurve.cjs.js +1 -0
  46. package/curves/NURBSCurve.js +43 -15
  47. package/curves/NURBSSurface.cjs.js +1 -0
  48. package/curves/NURBSSurface.js +27 -11
  49. package/curves/NURBSUtils.cjs.js +1 -0
  50. package/curves/NURBSUtils.js +203 -54
  51. package/custom.d.cjs.js +1 -0
  52. package/{shaders/types.mjs → custom.d.js} +0 -0
  53. package/deprecated/Geometry.cjs.js +1 -0
  54. package/deprecated/Geometry.js +486 -191
  55. package/effects/AnaglyphEffect.cjs.js +1 -0
  56. package/effects/AnaglyphEffect.js +60 -95
  57. package/effects/AsciiEffect.cjs.js +1 -0
  58. package/effects/AsciiEffect.js +110 -80
  59. package/effects/OutlineEffect.cjs.js +1 -0
  60. package/effects/OutlineEffect.js +204 -121
  61. package/effects/ParallaxBarrierEffect.cjs.js +1 -0
  62. package/effects/ParallaxBarrierEffect.js +38 -39
  63. package/effects/PeppersGhostEffect.cjs.js +1 -0
  64. package/effects/PeppersGhostEffect.js +68 -19
  65. package/effects/StereoEffect.cjs.js +1 -0
  66. package/effects/StereoEffect.js +16 -12
  67. package/environments/RoomEnvironment.cjs.js +1 -0
  68. package/environments/RoomEnvironment.js +47 -52
  69. package/exporters/ColladaExporter.cjs.js +1 -0
  70. package/exporters/ColladaExporter.js +241 -115
  71. package/exporters/DRACOExporter.cjs.js +1 -0
  72. package/exporters/DRACOExporter.js +121 -67
  73. package/exporters/GLTFExporter.cjs.js +1 -0
  74. package/exporters/GLTFExporter.js +1014 -463
  75. package/exporters/MMDExporter.cjs.js +1 -0
  76. package/exporters/MMDExporter.js +102 -44
  77. package/exporters/OBJExporter.cjs.js +1 -0
  78. package/exporters/OBJExporter.js +140 -78
  79. package/exporters/PLYExporter.cjs.js +1 -0
  80. package/exporters/PLYExporter.js +154 -93
  81. package/exporters/STLExporter.cjs.js +1 -0
  82. package/exporters/STLExporter.js +81 -30
  83. package/exporters/USDZExporter.cjs.js +1 -0
  84. package/exporters/USDZExporter.js +144 -84
  85. package/geometries/BoxLineGeometry.cjs.js +1 -0
  86. package/geometries/BoxLineGeometry.js +14 -7
  87. package/geometries/ConvexGeometry.cjs.js +1 -0
  88. package/geometries/ConvexGeometry.js +23 -14
  89. package/geometries/DecalGeometry.cjs.js +1 -0
  90. package/geometries/DecalGeometry.js +162 -108
  91. package/geometries/LightningStrike.cjs.js +1 -0
  92. package/geometries/LightningStrike.js +294 -101
  93. package/geometries/ParametricGeometries.cjs.js +1 -0
  94. package/geometries/ParametricGeometries.js +76 -26
  95. package/geometries/ParametricGeometry.cjs.js +1 -0
  96. package/geometries/ParametricGeometry.js +48 -24
  97. package/geometries/RoundedBoxGeometry.cjs.js +1 -0
  98. package/geometries/RoundedBoxGeometry.js +64 -33
  99. package/geometries/TeapotGeometry.cjs.js +1 -0
  100. package/geometries/TeapotGeometry.js +174 -1434
  101. package/geometries/TextGeometry.cjs.js +1 -0
  102. package/geometries/TextGeometry.js +17 -9
  103. package/helpers/LightProbeHelper.cjs.js +1 -0
  104. package/helpers/LightProbeHelper.js +21 -53
  105. package/helpers/PositionalAudioHelper.cjs.js +1 -0
  106. package/helpers/PositionalAudioHelper.js +30 -23
  107. package/helpers/RectAreaLightHelper.cjs.js +1 -0
  108. package/helpers/RectAreaLightHelper.js +33 -17
  109. package/helpers/VertexNormalsHelper.cjs.js +1 -0
  110. package/helpers/VertexNormalsHelper.js +41 -20
  111. package/helpers/VertexTangentsHelper.cjs.js +1 -0
  112. package/helpers/VertexTangentsHelper.js +36 -18
  113. package/index.cjs.js +1 -0
  114. package/index.js +333 -968
  115. package/interactive/InteractiveGroup.cjs.js +1 -0
  116. package/interactive/InteractiveGroup.d.ts +5 -0
  117. package/interactive/InteractiveGroup.js +87 -0
  118. package/interactive/SelectionBox.cjs.js +1 -0
  119. package/interactive/SelectionBox.js +46 -31
  120. package/interactive/SelectionHelper.cjs.js +1 -0
  121. package/interactive/SelectionHelper.js +21 -16
  122. package/libs/MeshoptDecoder.cjs.js +1 -0
  123. package/libs/MeshoptDecoder.js +58 -147
  124. package/libs/MotionControllers.cjs.js +1 -0
  125. package/libs/MotionControllers.js +208 -66
  126. package/lights/LightProbeGenerator.cjs.js +1 -0
  127. package/lights/LightProbeGenerator.js +96 -40
  128. package/lights/RectAreaLightUniformsLib.cjs.js +1 -0
  129. package/lights/RectAreaLightUniformsLib.js +9 -32842
  130. package/lines/Line2.cjs.js +1 -0
  131. package/lines/Line2.js +12 -9
  132. package/lines/LineGeometry.cjs.js +1 -0
  133. package/lines/LineGeometry.js +19 -7
  134. package/lines/LineMaterial.cjs.js +1 -0
  135. package/lines/LineMaterial.js +89 -51
  136. package/lines/LineSegments2.cjs.js +1 -0
  137. package/lines/LineSegments2.js +165 -56
  138. package/lines/LineSegmentsGeometry.cjs.js +1 -0
  139. package/lines/LineSegmentsGeometry.js +71 -29
  140. package/lines/Wireframe.cjs.js +1 -0
  141. package/lines/Wireframe.js +29 -15
  142. package/lines/WireframeGeometry2.cjs.js +1 -0
  143. package/lines/WireframeGeometry2.js +9 -8
  144. package/loaders/3DMLoader.cjs.js +1 -0
  145. package/loaders/3DMLoader.js +469 -234
  146. package/loaders/3MFLoader.cjs.js +1 -0
  147. package/loaders/3MFLoader.js +555 -340
  148. package/loaders/AMFLoader.cjs.js +1 -0
  149. package/loaders/AMFLoader.js +219 -114
  150. package/loaders/AssimpLoader.cjs.js +1 -0
  151. package/loaders/AssimpLoader.js +725 -328
  152. package/loaders/BVHLoader.cjs.js +1 -0
  153. package/loaders/BVHLoader.js +200 -94
  154. package/loaders/BasisTextureLoader.cjs.js +1 -0
  155. package/loaders/BasisTextureLoader.js +357 -229
  156. package/loaders/ColladaLoader.cjs.js +1 -0
  157. package/loaders/ColladaLoader.js +1522 -932
  158. package/loaders/DDSLoader.cjs.js +1 -0
  159. package/loaders/DDSLoader.js +108 -42
  160. package/loaders/DRACOLoader.cjs.js +1 -0
  161. package/loaders/DRACOLoader.js +210 -103
  162. package/loaders/EXRLoader.cjs.js +1 -0
  163. package/loaders/EXRLoader.js +809 -461
  164. package/loaders/FBXLoader.cjs.js +1 -0
  165. package/loaders/FBXLoader.js +1397 -842
  166. package/loaders/FontLoader.cjs.js +1 -0
  167. package/loaders/FontLoader.js +66 -33
  168. package/loaders/GCodeLoader.cjs.js +1 -0
  169. package/loaders/GCodeLoader.js +111 -63
  170. package/loaders/GLTFLoader.cjs.js +1 -0
  171. package/loaders/GLTFLoader.js +1484 -771
  172. package/loaders/HDRCubeTextureLoader.cjs.js +1 -0
  173. package/loaders/HDRCubeTextureLoader.js +50 -45
  174. package/loaders/KMZLoader.cjs.js +1 -0
  175. package/loaders/KMZLoader.js +55 -42
  176. package/loaders/KTX2Loader.cjs.js +1 -0
  177. package/loaders/KTX2Loader.js +362 -229
  178. package/loaders/KTXLoader.cjs.js +1 -0
  179. package/loaders/KTXLoader.js +99 -37
  180. package/loaders/LDrawLoader.cjs.js +1 -0
  181. package/loaders/LDrawLoader.js +746 -313
  182. package/loaders/LUT3dlLoader.cjs.js +1 -0
  183. package/loaders/LUT3dlLoader.js +62 -50
  184. package/loaders/LUTCubeLoader.cjs.js +1 -0
  185. package/loaders/LUTCubeLoader.js +56 -45
  186. package/loaders/LWOLoader.cjs.js +1 -0
  187. package/loaders/LWOLoader.js +339 -227
  188. package/loaders/LottieLoader.cjs.js +1 -0
  189. package/loaders/LottieLoader.js +38 -36
  190. package/loaders/MD2Loader.cjs.js +1 -0
  191. package/loaders/MD2Loader.js +91 -248
  192. package/loaders/MDDLoader.cjs.js +1 -0
  193. package/loaders/MDDLoader.js +45 -25
  194. package/loaders/MMDLoader.cjs.js +1 -0
  195. package/loaders/MMDLoader.js +795 -359
  196. package/loaders/MTLLoader.cjs.js +1 -0
  197. package/loaders/MTLLoader.js +201 -91
  198. package/loaders/NRRDLoader.cjs.js +1 -0
  199. package/loaders/NRRDLoader.js +263 -182
  200. package/loaders/NodeMaterialLoader.cjs.js +1 -0
  201. package/loaders/NodeMaterialLoader.js +14 -121
  202. package/loaders/OBJLoader.cjs.js +1 -0
  203. package/loaders/OBJLoader.js +283 -161
  204. package/loaders/PCDLoader.cjs.js +1 -0
  205. package/loaders/PCDLoader.js +164 -145
  206. package/loaders/PDBLoader.cjs.js +1 -0
  207. package/loaders/PDBLoader.js +63 -45
  208. package/loaders/PLYLoader.cjs.js +1 -0
  209. package/loaders/PLYLoader.js +203 -106
  210. package/loaders/PRWMLoader.cjs.js +1 -0
  211. package/loaders/PRWMLoader.js +110 -73
  212. package/loaders/PVRLoader.cjs.js +1 -0
  213. package/loaders/PVRLoader.js +93 -32
  214. package/loaders/RGBELoader.cjs.js +1 -0
  215. package/loaders/RGBELoader.js +233 -96
  216. package/loaders/RGBMLoader.cjs.js +1 -0
  217. package/loaders/RGBMLoader.js +514 -344
  218. package/loaders/STLLoader.cjs.js +1 -0
  219. package/loaders/STLLoader.js +165 -59
  220. package/loaders/SVGLoader.cjs.js +1 -0
  221. package/loaders/SVGLoader.js +851 -481
  222. package/loaders/TDSLoader.cjs.js +1 -0
  223. package/loaders/TDSLoader.js +527 -137
  224. package/loaders/TGALoader.cjs.js +1 -0
  225. package/loaders/TGALoader.js +205 -94
  226. package/loaders/TTFLoader.cjs.js +1 -0
  227. package/loaders/TTFLoader.js +79 -58
  228. package/loaders/TiltLoader.cjs.js +1 -0
  229. package/loaders/TiltLoader.js +167 -129
  230. package/loaders/VOXLoader.cjs.js +1 -0
  231. package/loaders/VOXLoader.js +84 -320
  232. package/loaders/VRMLLoader.cjs.js +1 -0
  233. package/loaders/VRMLLoader.js +1268 -786
  234. package/loaders/VRMLoader.cjs.js +1 -0
  235. package/loaders/VRMLoader.js +31 -23
  236. package/loaders/VTKLoader.cjs.js +1 -0
  237. package/loaders/VTKLoader.js +407 -219
  238. package/loaders/XLoader.cjs.js +1 -0
  239. package/loaders/XLoader.js +1259 -1083
  240. package/loaders/XYZLoader.cjs.js +1 -0
  241. package/loaders/XYZLoader.js +34 -28
  242. package/loaders/lwo/IFFParser.cjs.js +1 -0
  243. package/loaders/lwo/IFFParser.js +492 -238
  244. package/loaders/lwo/LWO2Parser.cjs.js +1 -0
  245. package/loaders/lwo/LWO2Parser.js +279 -176
  246. package/loaders/lwo/LWO3Parser.cjs.js +1 -0
  247. package/loaders/lwo/LWO3Parser.js +247 -160
  248. package/math/Capsule.cjs.js +1 -0
  249. package/math/Capsule.js +43 -56
  250. package/math/ColorConverter.cjs.js +1 -0
  251. package/math/ColorConverter.js +32 -18
  252. package/math/ConvexHull.cjs.js +1 -0
  253. package/math/ConvexHull.js +357 -97
  254. package/math/ImprovedNoise.cjs.js +1 -0
  255. package/math/ImprovedNoise.js +32 -282
  256. package/math/Lut.cjs.js +1 -0
  257. package/math/Lut.js +35 -51
  258. package/math/MeshSurfaceSampler.cjs.js +1 -0
  259. package/math/MeshSurfaceSampler.js +68 -25
  260. package/math/OBB.cjs.js +1 -0
  261. package/math/OBB.js +152 -91
  262. package/math/Octree.cjs.js +1 -0
  263. package/math/Octree.js +139 -76
  264. package/math/SimplexNoise.cjs.js +1 -0
  265. package/math/SimplexNoise.js +238 -217
  266. package/misc/ConvexObjectBreaker.cjs.js +1 -0
  267. package/misc/ConvexObjectBreaker.js +185 -79
  268. package/misc/GPUComputationRenderer.cjs.js +1 -0
  269. package/misc/GPUComputationRenderer.js +194 -69
  270. package/misc/Gyroscope.cjs.js +1 -0
  271. package/misc/Gyroscope.js +22 -16
  272. package/misc/MD2Character.cjs.js +1 -0
  273. package/misc/MD2Character.js +74 -52
  274. package/misc/MD2CharacterComplex.cjs.js +1 -0
  275. package/misc/MD2CharacterComplex.js +163 -112
  276. package/misc/MorphAnimMesh.cjs.js +1 -0
  277. package/misc/MorphAnimMesh.js +28 -20
  278. package/misc/MorphBlendMesh.cjs.js +1 -0
  279. package/misc/MorphBlendMesh.js +69 -45
  280. package/misc/ProgressiveLightmap.cjs.js +1 -0
  281. package/misc/ProgressiveLightmap.js +187 -70
  282. package/misc/RollerCoaster.cjs.js +1 -0
  283. package/misc/RollerCoaster.js +135 -106
  284. package/misc/TubePainter.cjs.js +1 -0
  285. package/misc/TubePainter.js +92 -74
  286. package/misc/Volume.cjs.js +1 -0
  287. package/misc/Volume.js +270 -108
  288. package/misc/VolumeSlice.cjs.js +1 -0
  289. package/misc/VolumeSlice.js +122 -34
  290. package/misc/WebGL.cjs.js +1 -0
  291. package/misc/WebGL.js +34 -37
  292. package/modifiers/CurveModifier.cjs.js +1 -0
  293. package/modifiers/CurveModifier.js +151 -46
  294. package/modifiers/EdgeSplitModifier.cjs.js +1 -0
  295. package/modifiers/EdgeSplitModifier.js +90 -46
  296. package/modifiers/SimplifyModifier.cjs.js +1 -0
  297. package/modifiers/SimplifyModifier.js +202 -77
  298. package/modifiers/TessellateModifier.cjs.js +1 -0
  299. package/modifiers/TessellateModifier.js +90 -65
  300. package/nodes/Nodes.cjs.js +1 -0
  301. package/nodes/Nodes.js +140 -274
  302. package/nodes/ShaderNode.cjs.js +1 -0
  303. package/nodes/ShaderNode.js +196 -296
  304. package/nodes/accessors/BufferNode.cjs.js +1 -0
  305. package/nodes/accessors/BufferNode.js +8 -4
  306. package/nodes/accessors/CameraNode.cjs.js +1 -0
  307. package/nodes/accessors/CameraNode.js +25 -20
  308. package/nodes/accessors/CubeTextureNode.cjs.js +1 -0
  309. package/nodes/accessors/CubeTextureNode.js +26 -14
  310. package/nodes/accessors/MaterialNode.cjs.js +1 -0
  311. package/nodes/accessors/MaterialNode.js +53 -43
  312. package/nodes/accessors/MaterialReferenceNode.cjs.js +1 -0
  313. package/nodes/accessors/MaterialReferenceNode.js +6 -3
  314. package/nodes/accessors/ModelNode.cjs.js +1 -0
  315. package/nodes/accessors/ModelNode.js +5 -3
  316. package/nodes/accessors/ModelViewProjectionNode.cjs.js +1 -0
  317. package/nodes/accessors/ModelViewProjectionNode.js +13 -14
  318. package/nodes/accessors/NormalNode.cjs.js +1 -0
  319. package/nodes/accessors/NormalNode.js +39 -40
  320. package/nodes/accessors/Object3DNode.cjs.js +1 -0
  321. package/nodes/accessors/Object3DNode.js +50 -40
  322. package/nodes/accessors/PointUVNode.cjs.js +1 -0
  323. package/nodes/accessors/PointUVNode.js +9 -5
  324. package/nodes/accessors/PositionNode.cjs.js +1 -0
  325. package/nodes/accessors/PositionNode.js +41 -42
  326. package/nodes/accessors/ReferenceNode.cjs.js +1 -0
  327. package/nodes/accessors/ReferenceNode.js +17 -10
  328. package/nodes/accessors/ReflectNode.cjs.js +1 -0
  329. package/nodes/accessors/ReflectNode.js +26 -23
  330. package/nodes/accessors/SkinningNode.cjs.js +1 -0
  331. package/nodes/accessors/SkinningNode.js +48 -46
  332. package/nodes/accessors/TextureNode.cjs.js +1 -0
  333. package/nodes/accessors/TextureNode.js +29 -14
  334. package/nodes/accessors/UVNode.cjs.js +1 -0
  335. package/nodes/accessors/UVNode.js +11 -5
  336. package/nodes/core/ArrayUniformNode.cjs.js +1 -0
  337. package/nodes/core/ArrayUniformNode.js +7 -3
  338. package/nodes/core/AttributeNode.cjs.js +1 -0
  339. package/nodes/core/AttributeNode.js +12 -5
  340. package/nodes/core/BypassNode.cjs.js +1 -0
  341. package/nodes/core/BypassNode.js +12 -5
  342. package/nodes/core/CodeNode.cjs.js +1 -0
  343. package/nodes/core/CodeNode.js +12 -4
  344. package/nodes/core/ConstNode.cjs.js +1 -0
  345. package/nodes/core/ConstNode.js +7 -3
  346. package/nodes/core/ContextNode.cjs.js +1 -0
  347. package/nodes/core/ContextNode.js +8 -3
  348. package/nodes/core/ExpressionNode.cjs.js +1 -0
  349. package/nodes/core/ExpressionNode.js +9 -5
  350. package/nodes/core/FunctionCallNode.cjs.js +1 -0
  351. package/nodes/core/FunctionCallNode.js +15 -6
  352. package/nodes/core/FunctionNode.cjs.js +1 -0
  353. package/nodes/core/FunctionNode.js +25 -10
  354. package/nodes/core/InputNode.cjs.js +1 -0
  355. package/nodes/core/InputNode.js +23 -12
  356. package/nodes/core/Node.cjs.js +1 -0
  357. package/nodes/core/Node.js +75 -35
  358. package/nodes/core/NodeAttribute.cjs.js +1 -0
  359. package/nodes/core/NodeAttribute.js +4 -2
  360. package/nodes/core/NodeBuilder.cjs.js +1 -0
  361. package/nodes/core/NodeBuilder.js +224 -110
  362. package/nodes/core/NodeCode.cjs.js +1 -0
  363. package/nodes/core/NodeCode.js +7 -4
  364. package/nodes/core/NodeFrame.cjs.js +1 -0
  365. package/nodes/core/NodeFrame.js +12 -9
  366. package/nodes/core/NodeFunction.cjs.js +1 -0
  367. package/nodes/core/NodeFunction.js +17 -0
  368. package/nodes/core/NodeFunctionInput.cjs.js +1 -0
  369. package/nodes/core/NodeFunctionInput.js +5 -3
  370. package/nodes/core/NodeKeywords.cjs.js +1 -0
  371. package/nodes/core/NodeKeywords.js +16 -5
  372. package/nodes/core/NodeParser.cjs.js +1 -0
  373. package/nodes/core/NodeParser.js +8 -0
  374. package/nodes/core/NodeUniform.cjs.js +1 -0
  375. package/nodes/core/NodeUniform.js +7 -3
  376. package/nodes/core/NodeUtils.cjs.js +1 -0
  377. package/nodes/core/NodeUtils.js +43 -39
  378. package/nodes/core/NodeVar.cjs.js +1 -0
  379. package/nodes/core/NodeVar.js +4 -2
  380. package/nodes/core/NodeVary.cjs.js +1 -0
  381. package/nodes/core/NodeVary.js +4 -2
  382. package/nodes/core/PropertyNode.cjs.js +1 -0
  383. package/nodes/core/PropertyNode.js +10 -4
  384. package/nodes/core/TempNode.cjs.js +1 -0
  385. package/nodes/core/TempNode.js +11 -5
  386. package/nodes/core/UniformNode.cjs.js +1 -0
  387. package/nodes/core/UniformNode.js +10 -4
  388. package/nodes/core/VarNode.cjs.js +1 -0
  389. package/nodes/core/VarNode.js +11 -3
  390. package/nodes/core/VaryNode.cjs.js +1 -0
  391. package/nodes/core/VaryNode.js +15 -6
  392. package/nodes/core/constants.cjs.js +1 -0
  393. package/nodes/core/constants.js +7 -20
  394. package/nodes/display/ColorSpaceNode.cjs.js +1 -0
  395. package/nodes/display/ColorSpaceNode.js +38 -34
  396. package/nodes/display/NormalMapNode.cjs.js +1 -0
  397. package/nodes/display/NormalMapNode.js +53 -35
  398. package/nodes/fog/FogNode.cjs.js +1 -0
  399. package/nodes/fog/FogNode.js +9 -5
  400. package/nodes/fog/FogRangeNode.cjs.js +1 -0
  401. package/nodes/fog/FogRangeNode.js +9 -5
  402. package/nodes/functions/BSDFs.cjs.js +1 -0
  403. package/nodes/functions/BSDFs.js +118 -61
  404. package/nodes/functions/PhysicalMaterialFunctions.cjs.js +1 -0
  405. package/nodes/functions/PhysicalMaterialFunctions.js +57 -0
  406. package/nodes/lights/LightContextNode.cjs.js +1 -0
  407. package/nodes/lights/LightContextNode.js +23 -14
  408. package/nodes/lights/LightNode.cjs.js +1 -0
  409. package/nodes/lights/LightNode.js +31 -27
  410. package/nodes/lights/LightsNode.cjs.js +1 -0
  411. package/nodes/lights/LightsNode.js +28 -9
  412. package/nodes/loaders/NodeLoader.cjs.js +1 -0
  413. package/nodes/loaders/NodeLoader.js +42 -27
  414. package/nodes/loaders/NodeMaterialLoader.cjs.js +1 -0
  415. package/nodes/loaders/NodeMaterialLoader.js +10 -4
  416. package/nodes/loaders/NodeObjectLoader.cjs.js +1 -0
  417. package/nodes/loaders/NodeObjectLoader.js +19 -9
  418. package/nodes/materials/LineBasicNodeMaterial.cjs.js +1 -0
  419. package/nodes/materials/LineBasicNodeMaterial.js +10 -5
  420. package/nodes/materials/Materials.cjs.js +1 -0
  421. package/nodes/materials/Materials.js +17 -14
  422. package/nodes/materials/MeshBasicNodeMaterial.cjs.js +1 -0
  423. package/nodes/materials/MeshBasicNodeMaterial.js +10 -5
  424. package/nodes/materials/MeshStandardNodeMaterial.cjs.js +1 -0
  425. package/nodes/materials/MeshStandardNodeMaterial.js +8 -5
  426. package/nodes/materials/NodeMaterial.cjs.js +1 -0
  427. package/nodes/materials/NodeMaterial.js +36 -20
  428. package/nodes/materials/PointsNodeMaterial.cjs.js +1 -0
  429. package/nodes/materials/PointsNodeMaterial.js +10 -5
  430. package/nodes/math/CondNode.cjs.js +1 -0
  431. package/nodes/math/CondNode.js +23 -11
  432. package/nodes/math/MathNode.cjs.js +1 -0
  433. package/nodes/math/MathNode.js +142 -98
  434. package/nodes/math/OperatorNode.cjs.js +1 -0
  435. package/nodes/math/OperatorNode.js +46 -24
  436. package/nodes/parsers/GLSLNodeFunction.cjs.js +1 -0
  437. package/nodes/parsers/GLSLNodeFunction.js +101 -0
  438. package/nodes/parsers/GLSLNodeParser.cjs.js +1 -0
  439. package/nodes/parsers/GLSLNodeParser.js +13 -0
  440. package/nodes/parsers/WGSLNodeFunction.cjs.js +1 -0
  441. package/nodes/parsers/WGSLNodeFunction.js +71 -0
  442. package/nodes/parsers/WGSLNodeParser.cjs.js +1 -0
  443. package/nodes/parsers/WGSLNodeParser.js +13 -0
  444. package/nodes/procedural/CheckerNode.cjs.js +1 -0
  445. package/nodes/procedural/CheckerNode.js +19 -13
  446. package/nodes/utils/ArrayElementNode.cjs.js +1 -0
  447. package/nodes/utils/ArrayElementNode.js +8 -4
  448. package/nodes/utils/ConvertNode.cjs.js +1 -0
  449. package/nodes/utils/ConvertNode.js +8 -3
  450. package/nodes/utils/JoinNode.cjs.js +1 -0
  451. package/nodes/utils/JoinNode.js +11 -7
  452. package/nodes/utils/MatcapUVNode.cjs.js +1 -0
  453. package/nodes/utils/MatcapUVNode.js +11 -8
  454. package/nodes/utils/OscNode.cjs.js +1 -0
  455. package/nodes/utils/OscNode.js +33 -27
  456. package/nodes/utils/SplitNode.cjs.js +1 -0
  457. package/nodes/utils/SplitNode.js +20 -6
  458. package/nodes/utils/SpriteSheetUVNode.cjs.js +1 -0
  459. package/nodes/utils/SpriteSheetUVNode.js +23 -23
  460. package/nodes/utils/TimerNode.cjs.js +1 -0
  461. package/nodes/utils/TimerNode.js +24 -20
  462. package/objects/GroundProjectedEnv.cjs.js +1 -0
  463. package/objects/GroundProjectedEnv.js +37 -22
  464. package/objects/Lensflare.cjs.js +1 -0
  465. package/objects/Lensflare.js +156 -86
  466. package/objects/LightningStorm.cjs.js +1 -0
  467. package/objects/LightningStorm.js +102 -38
  468. package/objects/MarchingCubes.cjs.js +1 -0
  469. package/objects/MarchingCubes.js +303 -150
  470. package/objects/Reflector.cjs.js +1 -0
  471. package/objects/Reflector.js +72 -50
  472. package/objects/ReflectorForSSRPass.cjs.js +1 -0
  473. package/objects/ReflectorForSSRPass.js +131 -80
  474. package/objects/ReflectorRTT.cjs.js +1 -0
  475. package/objects/ReflectorRTT.js +7 -6
  476. package/objects/Refractor.cjs.js +1 -0
  477. package/objects/Refractor.js +106 -64
  478. package/objects/ShadowMesh.cjs.js +1 -0
  479. package/objects/ShadowMesh.js +17 -8
  480. package/objects/Sky.cjs.js +1 -0
  481. package/objects/Sky.js +80 -119
  482. package/objects/Water.cjs.js +1 -0
  483. package/objects/Water.js +127 -83
  484. package/objects/Water2.cjs.js +1 -0
  485. package/objects/Water2.js +108 -72
  486. package/offscreen/jank.cjs.js +1 -0
  487. package/offscreen/jank.js +14 -10
  488. package/offscreen/offscreen.cjs.js +1 -0
  489. package/offscreen/offscreen.js +5 -4
  490. package/offscreen/scene.cjs.js +1 -0
  491. package/offscreen/scene.js +48 -45
  492. package/package.json +3 -3
  493. package/physics/AmmoPhysics.cjs.js +1 -0
  494. package/physics/AmmoPhysics.js +71 -30
  495. package/postprocessing/AdaptiveToneMappingPass.cjs.js +1 -0
  496. package/postprocessing/AdaptiveToneMappingPass.js +123 -97
  497. package/postprocessing/AfterimagePass.cjs.js +1 -0
  498. package/postprocessing/AfterimagePass.js +49 -28
  499. package/postprocessing/BloomPass.cjs.js +1 -0
  500. package/postprocessing/BloomPass.js +69 -43
  501. package/postprocessing/BokehPass.cjs.js +1 -0
  502. package/postprocessing/BokehPass.js +69 -39
  503. package/postprocessing/ClearPass.cjs.js +1 -0
  504. package/postprocessing/ClearPass.js +25 -10
  505. package/postprocessing/CubeTexturePass.cjs.js +1 -0
  506. package/postprocessing/CubeTexturePass.js +27 -28
  507. package/postprocessing/DotScreenPass.cjs.js +1 -0
  508. package/postprocessing/DotScreenPass.js +32 -24
  509. package/postprocessing/EffectComposer.cjs.js +1 -0
  510. package/postprocessing/EffectComposer.js +86 -39
  511. package/postprocessing/FilmPass.cjs.js +1 -0
  512. package/postprocessing/FilmPass.js +30 -25
  513. package/postprocessing/GlitchPass.cjs.js +1 -0
  514. package/postprocessing/GlitchPass.js +61 -38
  515. package/postprocessing/HalftonePass.cjs.js +1 -0
  516. package/postprocessing/HalftonePass.js +39 -19
  517. package/postprocessing/LUTPass.cjs.js +1 -0
  518. package/postprocessing/LUTPass.js +38 -13
  519. package/postprocessing/MaskPass.cjs.js +1 -0
  520. package/postprocessing/MaskPass.js +38 -19
  521. package/postprocessing/OutlinePass.cjs.js +1 -0
  522. package/postprocessing/OutlinePass.js +277 -135
  523. package/postprocessing/Pass.cjs.js +1 -0
  524. package/postprocessing/Pass.js +44 -20
  525. package/postprocessing/RenderPass.cjs.js +1 -0
  526. package/postprocessing/RenderPass.js +36 -13
  527. package/postprocessing/RenderPixelatedPass.cjs.js +1 -0
  528. package/postprocessing/RenderPixelatedPass.js +58 -44
  529. package/postprocessing/SAOPass.cjs.js +1 -0
  530. package/postprocessing/SAOPass.js +189 -154
  531. package/postprocessing/SMAAPass.cjs.js +1 -0
  532. package/postprocessing/SMAAPass.js +84 -64
  533. package/postprocessing/SSAARenderPass.cjs.js +1 -0
  534. package/postprocessing/SSAARenderPass.js +69 -121
  535. package/postprocessing/SSAOPass.cjs.js +1 -0
  536. package/postprocessing/SSAOPass.js +172 -123
  537. package/postprocessing/SSRPass.cjs.js +1 -0
  538. package/postprocessing/SSRPass.js +280 -211
  539. package/postprocessing/SavePass.cjs.js +1 -0
  540. package/postprocessing/SavePass.js +25 -20
  541. package/postprocessing/ShaderPass.cjs.js +1 -0
  542. package/postprocessing/ShaderPass.js +30 -14
  543. package/postprocessing/TAARenderPass.cjs.js +1 -0
  544. package/postprocessing/TAARenderPass.js +61 -42
  545. package/postprocessing/TexturePass.cjs.js +1 -0
  546. package/postprocessing/TexturePass.js +22 -21
  547. package/postprocessing/UnrealBloomPass.cjs.js +1 -0
  548. package/postprocessing/UnrealBloomPass.js +213 -105
  549. package/renderers/CSS2DRenderer.cjs.js +1 -0
  550. package/renderers/CSS2DRenderer.js +56 -44
  551. package/renderers/CSS3DRenderer.cjs.js +1 -0
  552. package/renderers/CSS3DRenderer.js +86 -53
  553. package/renderers/Projector.cjs.js +1 -0
  554. package/renderers/Projector.js +274 -107
  555. package/renderers/SVGRenderer.cjs.js +1 -0
  556. package/renderers/SVGRenderer.js +182 -72
  557. package/renderers/nodes/accessors/CameraNode.cjs.js +1 -0
  558. package/renderers/nodes/accessors/CameraNode.js +40 -29
  559. package/renderers/nodes/accessors/ModelNode.cjs.js +1 -0
  560. package/renderers/nodes/accessors/ModelNode.js +37 -28
  561. package/renderers/nodes/accessors/ModelViewProjectionNode.cjs.js +1 -0
  562. package/renderers/nodes/accessors/ModelViewProjectionNode.js +23 -10
  563. package/renderers/nodes/accessors/NormalNode.cjs.js +1 -0
  564. package/renderers/nodes/accessors/NormalNode.js +45 -35
  565. package/renderers/nodes/accessors/PositionNode.cjs.js +1 -0
  566. package/renderers/nodes/accessors/PositionNode.js +19 -18
  567. package/renderers/nodes/accessors/UVNode.cjs.js +1 -0
  568. package/renderers/nodes/accessors/UVNode.js +10 -5
  569. package/renderers/nodes/core/AttributeNode.cjs.js +1 -0
  570. package/renderers/nodes/core/AttributeNode.js +14 -5
  571. package/renderers/nodes/core/InputNode.cjs.js +1 -0
  572. package/renderers/nodes/core/InputNode.js +14 -4
  573. package/renderers/nodes/core/Node.cjs.js +1 -0
  574. package/renderers/nodes/core/Node.js +17 -7
  575. package/renderers/nodes/core/NodeAttribute.cjs.js +1 -0
  576. package/renderers/nodes/core/NodeAttribute.js +6 -3
  577. package/renderers/nodes/core/NodeBuilder.cjs.js +1 -0
  578. package/renderers/nodes/core/NodeBuilder.js +154 -87
  579. package/renderers/nodes/core/NodeFrame.cjs.js +1 -0
  580. package/renderers/nodes/core/NodeFrame.js +12 -9
  581. package/renderers/nodes/core/NodeSlot.cjs.js +1 -0
  582. package/renderers/nodes/core/NodeSlot.js +3 -2
  583. package/renderers/nodes/core/NodeUniform.cjs.js +1 -0
  584. package/renderers/nodes/core/NodeUniform.js +9 -4
  585. package/renderers/nodes/core/NodeVary.cjs.js +1 -0
  586. package/renderers/nodes/core/NodeVary.js +7 -4
  587. package/renderers/nodes/core/VaryNode.cjs.js +1 -0
  588. package/renderers/nodes/core/VaryNode.js +12 -6
  589. package/renderers/nodes/core/constants.cjs.js +1 -0
  590. package/renderers/nodes/core/constants.js +13 -16
  591. package/renderers/nodes/inputs/ColorNode.cjs.js +1 -0
  592. package/renderers/nodes/inputs/ColorNode.js +11 -5
  593. package/renderers/nodes/inputs/FloatNode.cjs.js +1 -0
  594. package/renderers/nodes/inputs/FloatNode.js +11 -5
  595. package/renderers/nodes/inputs/Matrix3Node.cjs.js +1 -0
  596. package/renderers/nodes/inputs/Matrix3Node.js +13 -7
  597. package/renderers/nodes/inputs/Matrix4Node.cjs.js +1 -0
  598. package/renderers/nodes/inputs/Matrix4Node.js +13 -7
  599. package/renderers/nodes/inputs/TextureNode.cjs.js +1 -0
  600. package/renderers/nodes/inputs/TextureNode.js +15 -7
  601. package/renderers/nodes/inputs/Vector2Node.cjs.js +1 -0
  602. package/renderers/nodes/inputs/Vector2Node.js +11 -5
  603. package/renderers/nodes/inputs/Vector3Node.cjs.js +1 -0
  604. package/renderers/nodes/inputs/Vector3Node.js +13 -7
  605. package/renderers/nodes/inputs/Vector4Node.cjs.js +1 -0
  606. package/renderers/nodes/inputs/Vector4Node.js +13 -7
  607. package/renderers/nodes/math/MathNode.cjs.js +1 -0
  608. package/renderers/nodes/math/MathNode.js +30 -20
  609. package/renderers/nodes/math/OperatorNode.cjs.js +1 -0
  610. package/renderers/nodes/math/OperatorNode.js +20 -4
  611. package/renderers/nodes/utils/SwitchNode.cjs.js +1 -0
  612. package/renderers/nodes/utils/SwitchNode.js +9 -4
  613. package/renderers/nodes/utils/TimerNode.cjs.js +1 -0
  614. package/renderers/nodes/utils/TimerNode.js +10 -5
  615. package/renderers/webgpu/WebGPU.cjs.js +1 -0
  616. package/renderers/webgpu/WebGPU.js +16 -14
  617. package/renderers/webgpu/WebGPUAttributes.cjs.js +1 -0
  618. package/renderers/webgpu/WebGPUAttributes.js +23 -16
  619. package/renderers/webgpu/WebGPUBackground.cjs.js +1 -0
  620. package/renderers/webgpu/WebGPUBackground.js +30 -13
  621. package/renderers/webgpu/WebGPUBinding.cjs.js +1 -0
  622. package/renderers/webgpu/WebGPUBinding.js +7 -4
  623. package/renderers/webgpu/WebGPUBindings.cjs.js +1 -0
  624. package/renderers/webgpu/WebGPUBindings.js +57 -21
  625. package/renderers/webgpu/WebGPUComputePipelines.cjs.js +1 -0
  626. package/renderers/webgpu/WebGPUComputePipelines.js +25 -14
  627. package/renderers/webgpu/WebGPUGeometries.cjs.js +1 -0
  628. package/renderers/webgpu/WebGPUGeometries.js +15 -5
  629. package/renderers/webgpu/WebGPUInfo.cjs.js +1 -0
  630. package/renderers/webgpu/WebGPUInfo.js +8 -3
  631. package/renderers/webgpu/WebGPUObjects.cjs.js +1 -0
  632. package/renderers/webgpu/WebGPUObjects.js +10 -5
  633. package/renderers/webgpu/WebGPUProperties.cjs.js +1 -0
  634. package/renderers/webgpu/WebGPUProperties.js +11 -5
  635. package/renderers/webgpu/WebGPURenderLists.cjs.js +1 -0
  636. package/renderers/webgpu/WebGPURenderLists.js +36 -20
  637. package/renderers/webgpu/WebGPURenderPipelines.cjs.js +1 -0
  638. package/renderers/webgpu/WebGPURenderPipelines.js +387 -260
  639. package/renderers/webgpu/WebGPURenderer.cjs.js +1 -0
  640. package/renderers/webgpu/WebGPURenderer.js +262 -124
  641. package/renderers/webgpu/WebGPUSampledTexture.cjs.js +1 -0
  642. package/renderers/webgpu/WebGPUSampledTexture.js +31 -18
  643. package/renderers/webgpu/WebGPUSampler.cjs.js +1 -0
  644. package/renderers/webgpu/WebGPUSampler.js +12 -7
  645. package/renderers/webgpu/WebGPUStorageBuffer.cjs.js +1 -0
  646. package/renderers/webgpu/WebGPUStorageBuffer.js +12 -7
  647. package/renderers/webgpu/WebGPUTextureRenderer.cjs.js +1 -0
  648. package/renderers/webgpu/WebGPUTextureRenderer.js +11 -5
  649. package/renderers/webgpu/WebGPUTextureUtils.cjs.js +1 -0
  650. package/renderers/webgpu/WebGPUTextureUtils.js +40 -29
  651. package/renderers/webgpu/WebGPUTextures.cjs.js +1 -0
  652. package/renderers/webgpu/WebGPUTextures.js +333 -186
  653. package/renderers/webgpu/WebGPUUniform.cjs.js +1 -0
  654. package/renderers/webgpu/WebGPUUniform.js +51 -25
  655. package/renderers/webgpu/WebGPUUniformsGroup.cjs.js +1 -0
  656. package/renderers/webgpu/WebGPUUniformsGroup.js +72 -32
  657. package/renderers/webgpu/constants.cjs.js +1 -0
  658. package/renderers/webgpu/constants.js +181 -190
  659. package/renderers/webgpu/nodes/ShaderLib.cjs.js +1 -0
  660. package/renderers/webgpu/nodes/ShaderLib.js +2 -2
  661. package/renderers/webgpu/nodes/WebGPUNodeBuilder.cjs.js +1 -0
  662. package/renderers/webgpu/nodes/WebGPUNodeBuilder.js +124 -53
  663. package/renderers/webgpu/nodes/WebGPUNodeUniform.cjs.js +1 -0
  664. package/renderers/webgpu/nodes/WebGPUNodeUniform.js +31 -17
  665. package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.cjs.js +1 -0
  666. package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.js +9 -8
  667. package/renderers/webgpu/nodes/WebGPUNodes.cjs.js +1 -0
  668. package/renderers/webgpu/nodes/WebGPUNodes.js +45 -7
  669. package/shaders/ACESFilmicToneMappingShader.cjs.js +1 -0
  670. package/shaders/ACESFilmicToneMappingShader.js +24 -44
  671. package/shaders/AfterimageShader.cjs.js +1 -0
  672. package/shaders/AfterimageShader.js +18 -28
  673. package/shaders/BasicShader.cjs.js +1 -0
  674. package/shaders/BasicShader.js +7 -9
  675. package/shaders/BleachBypassShader.cjs.js +1 -0
  676. package/shaders/BleachBypassShader.js +15 -31
  677. package/shaders/BlendShader.cjs.js +1 -0
  678. package/shaders/BlendShader.js +19 -26
  679. package/shaders/BokehShader.cjs.js +1 -0
  680. package/shaders/BokehShader.js +36 -98
  681. package/shaders/BokehShader2.cjs.js +1 -0
  682. package/shaders/BokehShader2.js +90 -261
  683. package/shaders/BrightnessContrastShader.cjs.js +1 -0
  684. package/shaders/BrightnessContrastShader.js +19 -28
  685. package/shaders/ColorCorrectionShader.cjs.js +1 -0
  686. package/shaders/ColorCorrectionShader.js +22 -26
  687. package/shaders/ColorifyShader.cjs.js +1 -0
  688. package/shaders/ColorifyShader.js +16 -24
  689. package/shaders/ConvolutionShader.cjs.js +1 -0
  690. package/shaders/ConvolutionShader.js +36 -40
  691. package/shaders/CopyShader.cjs.js +1 -0
  692. package/shaders/CopyShader.js +13 -21
  693. package/shaders/DOFMipMapShader.cjs.js +1 -0
  694. package/shaders/DOFMipMapShader.js +21 -28
  695. package/shaders/DepthLimitedBlurShader.cjs.js +1 -0
  696. package/shaders/DepthLimitedBlurShader.js +40 -85
  697. package/shaders/DigitalGlitch.cjs.js +1 -0
  698. package/shaders/DigitalGlitch.js +46 -74
  699. package/shaders/DotScreenShader.cjs.js +1 -0
  700. package/shaders/DotScreenShader.js +27 -35
  701. package/shaders/FXAAShader.cjs.js +1 -0
  702. package/shaders/FXAAShader.js +19 -1094
  703. package/shaders/FilmShader.cjs.js +1 -0
  704. package/shaders/FilmShader.js +52 -38
  705. package/shaders/FocusShader.cjs.js +1 -0
  706. package/shaders/FocusShader.js +24 -51
  707. package/shaders/FreiChenShader.cjs.js +1 -0
  708. package/shaders/FreiChenShader.js +24 -57
  709. package/shaders/FresnelShader.cjs.js +1 -0
  710. package/shaders/FresnelShader.js +22 -43
  711. package/shaders/GammaCorrectionShader.cjs.js +1 -0
  712. package/shaders/GammaCorrectionShader.js +11 -19
  713. package/shaders/GodRaysShader.cjs.js +1 -0
  714. package/shaders/GodRaysShader.js +94 -103
  715. package/shaders/HalftoneShader.cjs.js +1 -0
  716. package/shaders/HalftoneShader.js +65 -208
  717. package/shaders/HorizontalBlurShader.cjs.js +1 -0
  718. package/shaders/HorizontalBlurShader.js +23 -7
  719. package/shaders/HorizontalTiltShiftShader.cjs.js +1 -0
  720. package/shaders/HorizontalTiltShiftShader.js +21 -33
  721. package/shaders/HueSaturationShader.cjs.js +1 -0
  722. package/shaders/HueSaturationShader.js +21 -37
  723. package/shaders/KaleidoShader.cjs.js +1 -0
  724. package/shaders/KaleidoShader.js +22 -30
  725. package/shaders/LuminosityHighPassShader.cjs.js +1 -0
  726. package/shaders/LuminosityHighPassShader.js +27 -33
  727. package/shaders/LuminosityShader.cjs.js +1 -0
  728. package/shaders/LuminosityShader.js +11 -21
  729. package/shaders/MirrorShader.cjs.js +1 -0
  730. package/shaders/MirrorShader.js +16 -31
  731. package/shaders/NormalMapShader.cjs.js +1 -0
  732. package/shaders/NormalMapShader.js +23 -27
  733. package/shaders/ParallaxShader.cjs.js +1 -0
  734. package/shaders/ParallaxShader.js +48 -107
  735. package/shaders/PixelShader.cjs.js +1 -0
  736. package/shaders/PixelShader.js +16 -24
  737. package/shaders/RGBShiftShader.cjs.js +1 -0
  738. package/shaders/RGBShiftShader.js +22 -26
  739. package/shaders/SAOShader.cjs.js +1 -0
  740. package/shaders/SAOShader.js +48 -132
  741. package/shaders/SMAAShader.cjs.js +1 -0
  742. package/shaders/SMAAShader.js +135 -256
  743. package/shaders/SSAOShader.cjs.js +1 -0
  744. package/shaders/SSAOShader.js +81 -153
  745. package/shaders/SSRShader.cjs.js +1 -0
  746. package/shaders/SSRShader.js +87 -32
  747. package/shaders/SepiaShader.cjs.js +1 -0
  748. package/shaders/SepiaShader.js +15 -25
  749. package/shaders/SobelOperatorShader.cjs.js +1 -0
  750. package/shaders/SobelOperatorShader.js +29 -40
  751. package/shaders/SubsurfaceScatteringShader.cjs.js +1 -0
  752. package/shaders/SubsurfaceScatteringShader.js +39 -53
  753. package/shaders/TechnicolorShader.cjs.js +1 -0
  754. package/shaders/TechnicolorShader.js +13 -20
  755. package/shaders/ToneMapShader.cjs.js +1 -0
  756. package/shaders/ToneMapShader.js +28 -44
  757. package/shaders/ToonShader.cjs.js +1 -0
  758. package/shaders/ToonShader.js +96 -172
  759. package/shaders/TriangleBlurShader.cjs.js +1 -0
  760. package/shaders/TriangleBlurShader.js +23 -32
  761. package/shaders/UnpackDepthRGBAShader.cjs.js +1 -0
  762. package/shaders/UnpackDepthRGBAShader.js +14 -22
  763. package/shaders/VerticalBlurShader.cjs.js +1 -0
  764. package/shaders/VerticalBlurShader.js +23 -7
  765. package/shaders/VerticalTiltShiftShader.cjs.js +1 -0
  766. package/shaders/VerticalTiltShiftShader.js +21 -33
  767. package/shaders/VignetteShader.cjs.js +1 -0
  768. package/shaders/VignetteShader.js +28 -24
  769. package/shaders/VolumeShader.cjs.js +1 -0
  770. package/shaders/VolumeShader.js +77 -174
  771. package/shaders/WaterRefractionShader.cjs.js +1 -0
  772. package/shaders/WaterRefractionShader.js +6 -38
  773. package/shaders/types.cjs.js +1 -0
  774. package/shaders/types.js +1 -1
  775. package/textures/FlakesTexture.cjs.js +1 -0
  776. package/textures/FlakesTexture.js +10 -8
  777. package/types/helpers.cjs.js +1 -0
  778. package/types/helpers.js +2 -3
  779. package/types/shared.cjs.js +1 -0
  780. package/types/shared.js +1 -0
  781. package/types/utils.cjs.js +1 -0
  782. package/types/utils.js +1 -0
  783. package/utils/BufferGeometryUtils.cjs.js +1 -0
  784. package/utils/BufferGeometryUtils.js +325 -251
  785. package/utils/GeometryCompressionUtils.cjs.js +1 -0
  786. package/utils/GeometryCompressionUtils.js +239 -241
  787. package/utils/GeometryUtils.cjs.js +1 -0
  788. package/utils/GeometryUtils.js +94 -41
  789. package/utils/LDrawUtils.cjs.js +1 -0
  790. package/utils/LDrawUtils.d.ts +5 -0
  791. package/utils/LDrawUtils.js +144 -0
  792. package/utils/RoughnessMipmapper.cjs.js +1 -0
  793. package/utils/RoughnessMipmapper.js +82 -38
  794. package/utils/SceneUtils.cjs.js +1 -0
  795. package/utils/SceneUtils.js +20 -15
  796. package/utils/ShadowMapViewer.cjs.js +1 -0
  797. package/utils/ShadowMapViewer.js +95 -49
  798. package/utils/SkeletonUtils.cjs.js +1 -0
  799. package/utils/SkeletonUtils.js +165 -74
  800. package/utils/UVsDebug.cjs.js +1 -0
  801. package/utils/UVsDebug.js +62 -32
  802. package/utils/WorkerPool.cjs.js +1 -0
  803. package/utils/WorkerPool.js +33 -13
  804. package/webxr/ARButton.cjs.js +1 -0
  805. package/webxr/ARButton.js +98 -72
  806. package/webxr/OculusHandModel.cjs.js +1 -0
  807. package/webxr/OculusHandModel.js +37 -18
  808. package/webxr/OculusHandPointerModel.cjs.js +1 -0
  809. package/webxr/OculusHandPointerModel.js +80 -58
  810. package/webxr/Text2D.cjs.js +1 -0
  811. package/webxr/Text2D.js +19 -37
  812. package/webxr/VRButton.cjs.js +1 -0
  813. package/webxr/VRButton.js +90 -59
  814. package/webxr/XRControllerModelFactory.cjs.js +1 -0
  815. package/webxr/XRControllerModelFactory.js +116 -58
  816. package/webxr/XREstimatedLight.cjs.js +1 -0
  817. package/webxr/XREstimatedLight.js +66 -39
  818. package/webxr/XRHandMeshModel.cjs.js +1 -0
  819. package/webxr/XRHandMeshModel.js +29 -40
  820. package/webxr/XRHandModelFactory.cjs.js +1 -0
  821. package/webxr/XRHandModelFactory.js +31 -28
  822. package/webxr/XRHandPrimitiveModel.cjs.js +1 -0
  823. package/webxr/XRHandPrimitiveModel.js +27 -41
  824. package/animation/AnimationClipCreator.mjs +0 -57
  825. package/animation/CCDIKSolver.mjs +0 -234
  826. package/animation/MMDAnimationHelper.mjs +0 -514
  827. package/animation/MMDPhysics.mjs +0 -769
  828. package/cameras/CinematicCamera.mjs +0 -129
  829. package/controls/ArcballControls.mjs +0 -1737
  830. package/controls/DeviceOrientationControls.mjs +0 -74
  831. package/controls/DragControls.mjs +0 -172
  832. package/controls/FirstPersonControls.mjs +0 -220
  833. package/controls/FlyControls.mjs +0 -239
  834. package/controls/OrbitControls.mjs +0 -731
  835. package/controls/PointerLockControls.mjs +0 -88
  836. package/controls/TrackballControls.mjs +0 -481
  837. package/controls/TransformControls.mjs +0 -1068
  838. package/controls/experimental/CameraControls.mjs +0 -673
  839. package/csm/CSM.mjs +0 -244
  840. package/csm/CSMFrustum.mjs +0 -75
  841. package/csm/CSMHelper.mjs +0 -114
  842. package/csm/CSMShader.mjs +0 -251
  843. package/curves/CurveExtras.mjs +0 -224
  844. package/curves/NURBSCurve.mjs +0 -35
  845. package/curves/NURBSSurface.mjs +0 -28
  846. package/curves/NURBSUtils.mjs +0 -226
  847. package/deprecated/Geometry.mjs +0 -966
  848. package/effects/AnaglyphEffect.mjs +0 -120
  849. package/effects/AsciiEffect.mjs +0 -173
  850. package/effects/OutlineEffect.mjs +0 -295
  851. package/effects/ParallaxBarrierEffect.mjs +0 -64
  852. package/effects/PeppersGhostEffect.mjs +0 -85
  853. package/effects/StereoEffect.mjs +0 -32
  854. package/environments/RoomEnvironment.mjs +0 -78
  855. package/exporters/ColladaExporter.mjs +0 -299
  856. package/exporters/DRACOExporter.mjs +0 -132
  857. package/exporters/GLTFExporter.mjs +0 -1381
  858. package/exporters/MMDExporter.mjs +0 -102
  859. package/exporters/OBJExporter.mjs +0 -166
  860. package/exporters/PLYExporter.mjs +0 -278
  861. package/exporters/STLExporter.mjs +0 -129
  862. package/exporters/USDZExporter.mjs +0 -328
  863. package/geometries/BoxLineGeometry.mjs +0 -45
  864. package/geometries/ConvexGeometry.mjs +0 -29
  865. package/geometries/DecalGeometry.mjs +0 -184
  866. package/geometries/LightningStrike.mjs +0 -547
  867. package/geometries/ParametricGeometries.mjs +0 -129
  868. package/geometries/ParametricGeometry.mjs +0 -63
  869. package/geometries/RoundedBoxGeometry.mjs +0 -91
  870. package/geometries/TeapotGeometry.mjs +0 -1557
  871. package/geometries/TextGeometry.mjs +0 -23
  872. package/helpers/LightProbeHelper.mjs +0 -72
  873. package/helpers/PositionalAudioHelper.mjs +0 -68
  874. package/helpers/RectAreaLightHelper.mjs +0 -44
  875. package/helpers/VertexNormalsHelper.mjs +0 -54
  876. package/helpers/VertexTangentsHelper.mjs +0 -45
  877. package/index.mjs +0 -968
  878. package/interactive/SelectionBox.mjs +0 -137
  879. package/interactive/SelectionHelper.mjs +0 -54
  880. package/libs/MeshoptDecoder.mjs +0 -210
  881. package/libs/MotionControllers.mjs +0 -261
  882. package/lights/LightProbeGenerator.mjs +0 -145
  883. package/lights/RectAreaLightUniformsLib.mjs +0 -32842
  884. package/lines/Line2.mjs +0 -13
  885. package/lines/LineGeometry.mjs +0 -44
  886. package/lines/LineMaterial.mjs +0 -539
  887. package/lines/LineSegments2.mjs +0 -202
  888. package/lines/LineSegmentsGeometry.mjs +0 -124
  889. package/lines/Wireframe.mjs +0 -31
  890. package/lines/WireframeGeometry2.mjs +0 -13
  891. package/loaders/3DMLoader.mjs +0 -802
  892. package/loaders/3MFLoader.mjs +0 -837
  893. package/loaders/AMFLoader.mjs +0 -284
  894. package/loaders/AssimpLoader.mjs +0 -1396
  895. package/loaders/BVHLoader.mjs +0 -207
  896. package/loaders/BasisTextureLoader.mjs +0 -474
  897. package/loaders/ColladaLoader.mjs +0 -2403
  898. package/loaders/DDSLoader.mjs +0 -148
  899. package/loaders/DRACOLoader.mjs +0 -340
  900. package/loaders/EXRLoader.mjs +0 -1351
  901. package/loaders/FBXLoader.mjs +0 -2362
  902. package/loaders/FontLoader.mjs +0 -111
  903. package/loaders/GCodeLoader.mjs +0 -141
  904. package/loaders/GLTFLoader.mjs +0 -2316
  905. package/loaders/HDRCubeTextureLoader.mjs +0 -77
  906. package/loaders/KMZLoader.mjs +0 -75
  907. package/loaders/KTX2Loader.mjs +0 -427
  908. package/loaders/KTXLoader.mjs +0 -87
  909. package/loaders/LDrawLoader.mjs +0 -1409
  910. package/loaders/LUT3dlLoader.mjs +0 -100
  911. package/loaders/LUTCubeLoader.mjs +0 -104
  912. package/loaders/LWOLoader.mjs +0 -625
  913. package/loaders/LottieLoader.mjs +0 -47
  914. package/loaders/MD2Loader.mjs +0 -359
  915. package/loaders/MDDLoader.mjs +0 -58
  916. package/loaders/MMDLoader.mjs +0 -998
  917. package/loaders/MTLLoader.mjs +0 -280
  918. package/loaders/NRRDLoader.mjs +0 -401
  919. package/loaders/NodeMaterialLoader.mjs +0 -146
  920. package/loaders/OBJLoader.mjs +0 -487
  921. package/loaders/PCDLoader.mjs +0 -248
  922. package/loaders/PDBLoader.mjs +0 -246
  923. package/loaders/PLYLoader.mjs +0 -317
  924. package/loaders/PRWMLoader.mjs +0 -160
  925. package/loaders/PVRLoader.mjs +0 -131
  926. package/loaders/RGBELoader.mjs +0 -244
  927. package/loaders/RGBMLoader.mjs +0 -998
  928. package/loaders/STLLoader.mjs +0 -190
  929. package/loaders/SVGLoader.mjs +0 -1709
  930. package/loaders/TDSLoader.mjs +0 -480
  931. package/loaders/TGALoader.mjs +0 -285
  932. package/loaders/TTFLoader.mjs +0 -131
  933. package/loaders/TiltLoader.mjs +0 -373
  934. package/loaders/VOXLoader.mjs +0 -431
  935. package/loaders/VRMLLoader.mjs +0 -2093
  936. package/loaders/VRMLoader.mjs +0 -38
  937. package/loaders/VTKLoader.mjs +0 -646
  938. package/loaders/XLoader.mjs +0 -1258
  939. package/loaders/XYZLoader.mjs +0 -60
  940. package/loaders/lwo/IFFParser.mjs +0 -697
  941. package/loaders/lwo/LWO2Parser.mjs +0 -327
  942. package/loaders/lwo/LWO3Parser.mjs +0 -298
  943. package/math/Capsule.mjs +0 -100
  944. package/math/ColorConverter.mjs +0 -51
  945. package/math/ConvexHull.mjs +0 -574
  946. package/math/ImprovedNoise.mjs +0 -302
  947. package/math/Lut.mjs +0 -135
  948. package/math/MeshSurfaceSampler.mjs +0 -107
  949. package/math/OBB.mjs +0 -235
  950. package/math/Octree.mjs +0 -278
  951. package/math/SimplexNoise.mjs +0 -425
  952. package/misc/ConvexObjectBreaker.mjs +0 -292
  953. package/misc/GPUComputationRenderer.mjs +0 -171
  954. package/misc/Gyroscope.mjs +0 -35
  955. package/misc/MD2Character.mjs +0 -162
  956. package/misc/MD2CharacterComplex.mjs +0 -328
  957. package/misc/MorphAnimMesh.mjs +0 -40
  958. package/misc/MorphBlendMesh.mjs +0 -179
  959. package/misc/ProgressiveLightmap.mjs +0 -166
  960. package/misc/RollerCoaster.mjs +0 -346
  961. package/misc/TubePainter.mjs +0 -123
  962. package/misc/Volume.mjs +0 -244
  963. package/misc/VolumeSlice.mjs +0 -106
  964. package/misc/WebGL.mjs +0 -74
  965. package/modifiers/CurveModifier.mjs +0 -182
  966. package/modifiers/EdgeSplitModifier.mjs +0 -162
  967. package/modifiers/SimplifyModifier.mjs +0 -282
  968. package/modifiers/TessellateModifier.mjs +0 -206
  969. package/nodes/Nodes.mjs +0 -400
  970. package/nodes/ShaderNode.mjs +0 -408
  971. package/nodes/accessors/BufferNode.mjs +0 -15
  972. package/nodes/accessors/CameraNode.mjs +0 -44
  973. package/nodes/accessors/CubeTextureNode.mjs +0 -42
  974. package/nodes/accessors/MaterialNode.mjs +0 -71
  975. package/nodes/accessors/MaterialReferenceNode.mjs +0 -14
  976. package/nodes/accessors/ModelNode.mjs +0 -9
  977. package/nodes/accessors/ModelViewProjectionNode.mjs +0 -24
  978. package/nodes/accessors/NormalNode.mjs +0 -62
  979. package/nodes/accessors/Object3DNode.mjs +0 -76
  980. package/nodes/accessors/PointUVNode.mjs +0 -13
  981. package/nodes/accessors/PositionNode.mjs +0 -65
  982. package/nodes/accessors/ReferenceNode.mjs +0 -37
  983. package/nodes/accessors/ReflectNode.mjs +0 -43
  984. package/nodes/accessors/SkinningNode.mjs +0 -58
  985. package/nodes/accessors/TextureNode.mjs +0 -54
  986. package/nodes/accessors/UVNode.mjs +0 -23
  987. package/nodes/core/ArrayUniformNode.mjs +0 -14
  988. package/nodes/core/AttributeNode.mjs +0 -30
  989. package/nodes/core/BypassNode.mjs +0 -22
  990. package/nodes/core/CodeNode.mjs +0 -28
  991. package/nodes/core/ConstNode.mjs +0 -14
  992. package/nodes/core/ContextNode.mjs +0 -22
  993. package/nodes/core/ExpressionNode.mjs +0 -19
  994. package/nodes/core/FunctionCallNode.mjs +0 -37
  995. package/nodes/core/FunctionNode.mjs +0 -56
  996. package/nodes/core/InputNode.mjs +0 -38
  997. package/nodes/core/Node.mjs +0 -139
  998. package/nodes/core/NodeAttribute.mjs +0 -10
  999. package/nodes/core/NodeBuilder.mjs +0 -395
  1000. package/nodes/core/NodeCode.mjs +0 -11
  1001. package/nodes/core/NodeFrame.mjs +0 -35
  1002. package/nodes/core/NodeFunctionInput.mjs +0 -13
  1003. package/nodes/core/NodeKeywords.mjs +0 -44
  1004. package/nodes/core/NodeUniform.mjs +0 -18
  1005. package/nodes/core/NodeUtils.mjs +0 -57
  1006. package/nodes/core/NodeVar.mjs +0 -10
  1007. package/nodes/core/NodeVary.mjs +0 -10
  1008. package/nodes/core/PropertyNode.mjs +0 -21
  1009. package/nodes/core/TempNode.mjs +0 -25
  1010. package/nodes/core/UniformNode.mjs +0 -23
  1011. package/nodes/core/VarNode.mjs +0 -31
  1012. package/nodes/core/VaryNode.mjs +0 -30
  1013. package/nodes/core/constants.mjs +0 -24
  1014. package/nodes/display/ColorSpaceNode.mjs +0 -63
  1015. package/nodes/display/NormalMapNode.mjs +0 -54
  1016. package/nodes/fog/FogNode.mjs +0 -15
  1017. package/nodes/fog/FogRangeNode.mjs +0 -17
  1018. package/nodes/functions/BSDFs.mjs +0 -64
  1019. package/nodes/lights/LightContextNode.mjs +0 -35
  1020. package/nodes/lights/LightNode.mjs +0 -58
  1021. package/nodes/lights/LightsNode.mjs +0 -59
  1022. package/nodes/loaders/NodeLoader.mjs +0 -66
  1023. package/nodes/loaders/NodeMaterialLoader.mjs +0 -24
  1024. package/nodes/loaders/NodeObjectLoader.mjs +0 -40
  1025. package/nodes/materials/LineBasicNodeMaterial.mjs +0 -27
  1026. package/nodes/materials/Materials.mjs +0 -28
  1027. package/nodes/materials/MeshBasicNodeMaterial.mjs +0 -28
  1028. package/nodes/materials/MeshStandardNodeMaterial.mjs +0 -41
  1029. package/nodes/materials/NodeMaterial.mjs +0 -64
  1030. package/nodes/materials/PointsNodeMaterial.mjs +0 -30
  1031. package/nodes/math/CondNode.mjs +0 -38
  1032. package/nodes/math/MathNode.mjs +0 -163
  1033. package/nodes/math/OperatorNode.mjs +0 -103
  1034. package/nodes/procedural/CheckerNode.mjs +0 -21
  1035. package/nodes/utils/ArrayElementNode.mjs +0 -19
  1036. package/nodes/utils/ConvertNode.mjs +0 -25
  1037. package/nodes/utils/JoinNode.mjs +0 -26
  1038. package/nodes/utils/MatcapUVNode.mjs +0 -16
  1039. package/nodes/utils/OscNode.mjs +0 -50
  1040. package/nodes/utils/SplitNode.mjs +0 -45
  1041. package/nodes/utils/SpriteSheetUVNode.mjs +0 -40
  1042. package/nodes/utils/TimerNode.mjs +0 -44
  1043. package/objects/GroundProjectedEnv.mjs +0 -130
  1044. package/objects/Lensflare.mjs +0 -262
  1045. package/objects/LightningStorm.mjs +0 -110
  1046. package/objects/MarchingCubes.mjs +0 -457
  1047. package/objects/Reflector.mjs +0 -166
  1048. package/objects/ReflectorForSSRPass.mjs +0 -247
  1049. package/objects/ReflectorRTT.mjs +0 -10
  1050. package/objects/Refractor.mjs +0 -178
  1051. package/objects/ShadowMesh.mjs +0 -41
  1052. package/objects/Sky.mjs +0 -124
  1053. package/objects/Water.mjs +0 -235
  1054. package/objects/Water2.mjs +0 -252
  1055. package/offscreen/jank.mjs +0 -27
  1056. package/offscreen/offscreen.mjs +0 -5
  1057. package/offscreen/scene.mjs +0 -52
  1058. package/physics/AmmoPhysics.mjs +0 -165
  1059. package/postprocessing/AdaptiveToneMappingPass.mjs +0 -221
  1060. package/postprocessing/AfterimagePass.mjs +0 -55
  1061. package/postprocessing/BloomPass.mjs +0 -90
  1062. package/postprocessing/BokehPass.mjs +0 -76
  1063. package/postprocessing/ClearPass.mjs +0 -27
  1064. package/postprocessing/CubeTexturePass.mjs +0 -49
  1065. package/postprocessing/DotScreenPass.mjs +0 -40
  1066. package/postprocessing/EffectComposer.mjs +0 -139
  1067. package/postprocessing/FilmPass.mjs +0 -42
  1068. package/postprocessing/GlitchPass.mjs +0 -75
  1069. package/postprocessing/HalftonePass.mjs +0 -44
  1070. package/postprocessing/LUTPass.mjs +0 -136
  1071. package/postprocessing/MaskPass.mjs +0 -60
  1072. package/postprocessing/OutlinePass.mjs +0 -438
  1073. package/postprocessing/Pass.mjs +0 -37
  1074. package/postprocessing/RenderPass.mjs +0 -48
  1075. package/postprocessing/RenderPixelatedPass.mjs +0 -199
  1076. package/postprocessing/SAOPass.mjs +0 -282
  1077. package/postprocessing/SMAAPass.mjs +0 -112
  1078. package/postprocessing/SSAARenderPass.mjs +0 -170
  1079. package/postprocessing/SSAOPass.mjs +0 -265
  1080. package/postprocessing/SSRPass.mjs +0 -432
  1081. package/postprocessing/SavePass.mjs +0 -37
  1082. package/postprocessing/ShaderPass.mjs +0 -39
  1083. package/postprocessing/TAARenderPass.mjs +0 -88
  1084. package/postprocessing/TexturePass.mjs +0 -39
  1085. package/postprocessing/UnrealBloomPass.mjs +0 -220
  1086. package/renderers/CSS2DRenderer.mjs +0 -112
  1087. package/renderers/CSS3DRenderer.mjs +0 -133
  1088. package/renderers/Projector.mjs +0 -511
  1089. package/renderers/SVGRenderer.mjs +0 -306
  1090. package/renderers/nodes/accessors/CameraNode.mjs +0 -63
  1091. package/renderers/nodes/accessors/ModelNode.mjs +0 -61
  1092. package/renderers/nodes/accessors/ModelViewProjectionNode.mjs +0 -21
  1093. package/renderers/nodes/accessors/NormalNode.mjs +0 -61
  1094. package/renderers/nodes/accessors/PositionNode.mjs +0 -30
  1095. package/renderers/nodes/accessors/UVNode.mjs +0 -13
  1096. package/renderers/nodes/core/AttributeNode.mjs +0 -35
  1097. package/renderers/nodes/core/InputNode.mjs +0 -31
  1098. package/renderers/nodes/core/Node.mjs +0 -34
  1099. package/renderers/nodes/core/NodeAttribute.mjs +0 -10
  1100. package/renderers/nodes/core/NodeBuilder.mjs +0 -243
  1101. package/renderers/nodes/core/NodeFrame.mjs +0 -35
  1102. package/renderers/nodes/core/NodeSlot.mjs +0 -10
  1103. package/renderers/nodes/core/NodeUniform.mjs +0 -18
  1104. package/renderers/nodes/core/NodeVary.mjs +0 -11
  1105. package/renderers/nodes/core/VaryNode.mjs +0 -22
  1106. package/renderers/nodes/core/constants.mjs +0 -22
  1107. package/renderers/nodes/inputs/ColorNode.mjs +0 -11
  1108. package/renderers/nodes/inputs/FloatNode.mjs +0 -11
  1109. package/renderers/nodes/inputs/Matrix3Node.mjs +0 -12
  1110. package/renderers/nodes/inputs/Matrix4Node.mjs +0 -12
  1111. package/renderers/nodes/inputs/TextureNode.mjs +0 -20
  1112. package/renderers/nodes/inputs/Vector2Node.mjs +0 -11
  1113. package/renderers/nodes/inputs/Vector3Node.mjs +0 -12
  1114. package/renderers/nodes/inputs/Vector4Node.mjs +0 -12
  1115. package/renderers/nodes/math/MathNode.mjs +0 -55
  1116. package/renderers/nodes/math/OperatorNode.mjs +0 -42
  1117. package/renderers/nodes/utils/SwitchNode.mjs +0 -20
  1118. package/renderers/nodes/utils/TimerNode.mjs +0 -14
  1119. package/renderers/webgpu/WebGPU.mjs +0 -24
  1120. package/renderers/webgpu/WebGPUAttributes.mjs +0 -69
  1121. package/renderers/webgpu/WebGPUBackground.mjs +0 -61
  1122. package/renderers/webgpu/WebGPUBinding.mjs +0 -14
  1123. package/renderers/webgpu/WebGPUBindings.mjs +0 -155
  1124. package/renderers/webgpu/WebGPUComputePipelines.mjs +0 -44
  1125. package/renderers/webgpu/WebGPUGeometries.mjs +0 -41
  1126. package/renderers/webgpu/WebGPUInfo.mjs +0 -46
  1127. package/renderers/webgpu/WebGPUObjects.mjs +0 -25
  1128. package/renderers/webgpu/WebGPUProperties.mjs +0 -22
  1129. package/renderers/webgpu/WebGPURenderLists.mjs +0 -119
  1130. package/renderers/webgpu/WebGPURenderPipelines.mjs +0 -545
  1131. package/renderers/webgpu/WebGPURenderer.mjs +0 -574
  1132. package/renderers/webgpu/WebGPUSampledTexture.mjs +0 -40
  1133. package/renderers/webgpu/WebGPUSampler.mjs +0 -15
  1134. package/renderers/webgpu/WebGPUStorageBuffer.mjs +0 -15
  1135. package/renderers/webgpu/WebGPUTextureRenderer.mjs +0 -23
  1136. package/renderers/webgpu/WebGPUTextureUtils.mjs +0 -98
  1137. package/renderers/webgpu/WebGPUTextures.mjs +0 -484
  1138. package/renderers/webgpu/WebGPUUniform.mjs +0 -81
  1139. package/renderers/webgpu/WebGPUUniformsGroup.mjs +0 -176
  1140. package/renderers/webgpu/constants.mjs +0 -230
  1141. package/renderers/webgpu/nodes/ShaderLib.mjs +0 -42
  1142. package/renderers/webgpu/nodes/WebGPUNodeBuilder.mjs +0 -165
  1143. package/renderers/webgpu/nodes/WebGPUNodeUniform.mjs +0 -73
  1144. package/renderers/webgpu/nodes/WebGPUNodeUniformsGroup.mjs +0 -15
  1145. package/renderers/webgpu/nodes/WebGPUNodes.mjs +0 -40
  1146. package/shaders/ACESFilmicToneMappingShader.mjs +0 -48
  1147. package/shaders/AfterimageShader.mjs +0 -32
  1148. package/shaders/BasicShader.mjs +0 -12
  1149. package/shaders/BleachBypassShader.mjs +0 -35
  1150. package/shaders/BlendShader.mjs +0 -30
  1151. package/shaders/BokehShader.mjs +0 -106
  1152. package/shaders/BokehShader2.mjs +0 -269
  1153. package/shaders/BrightnessContrastShader.mjs +0 -32
  1154. package/shaders/ColorCorrectionShader.mjs +0 -30
  1155. package/shaders/ColorifyShader.mjs +0 -28
  1156. package/shaders/ConvolutionShader.mjs +0 -55
  1157. package/shaders/CopyShader.mjs +0 -25
  1158. package/shaders/DOFMipMapShader.mjs +0 -32
  1159. package/shaders/DepthLimitedBlurShader.mjs +0 -114
  1160. package/shaders/DigitalGlitch.mjs +0 -78
  1161. package/shaders/DotScreenShader.mjs +0 -39
  1162. package/shaders/FXAAShader.mjs +0 -1098
  1163. package/shaders/FilmShader.mjs +0 -42
  1164. package/shaders/FocusShader.mjs +0 -55
  1165. package/shaders/FreiChenShader.mjs +0 -61
  1166. package/shaders/FresnelShader.mjs +0 -47
  1167. package/shaders/GammaCorrectionShader.mjs +0 -23
  1168. package/shaders/GodRaysShader.mjs +0 -146
  1169. package/shaders/HalftoneShader.mjs +0 -212
  1170. package/shaders/HorizontalBlurShader.mjs +0 -43
  1171. package/shaders/HorizontalTiltShiftShader.mjs +0 -37
  1172. package/shaders/HueSaturationShader.mjs +0 -41
  1173. package/shaders/KaleidoShader.mjs +0 -34
  1174. package/shaders/LuminosityHighPassShader.mjs +0 -37
  1175. package/shaders/LuminosityShader.mjs +0 -25
  1176. package/shaders/MirrorShader.mjs +0 -35
  1177. package/shaders/NormalMapShader.mjs +0 -31
  1178. package/shaders/ParallaxShader.mjs +0 -113
  1179. package/shaders/PixelShader.mjs +0 -28
  1180. package/shaders/RGBShiftShader.mjs +0 -30
  1181. package/shaders/SAOShader.mjs +0 -144
  1182. package/shaders/SMAAShader.mjs +0 -272
  1183. package/shaders/SSAOShader.mjs +0 -172
  1184. package/shaders/SSRShader.mjs +0 -324
  1185. package/shaders/SepiaShader.mjs +0 -29
  1186. package/shaders/SobelOperatorShader.mjs +0 -44
  1187. package/shaders/SubsurfaceScatteringShader.mjs +0 -59
  1188. package/shaders/TechnicolorShader.mjs +0 -24
  1189. package/shaders/ToneMapShader.mjs +0 -48
  1190. package/shaders/ToonShader.mjs +0 -188
  1191. package/shaders/TriangleBlurShader.mjs +0 -36
  1192. package/shaders/UnpackDepthRGBAShader.mjs +0 -26
  1193. package/shaders/VerticalBlurShader.mjs +0 -44
  1194. package/shaders/VerticalTiltShiftShader.mjs +0 -37
  1195. package/shaders/VignetteShader.mjs +0 -28
  1196. package/shaders/VolumeShader.mjs +0 -178
  1197. package/shaders/WaterRefractionShader.mjs +0 -57
  1198. package/textures/FlakesTexture.mjs +0 -30
  1199. package/types/helpers.mjs +0 -4
  1200. package/utils/BufferGeometryUtils.mjs +0 -570
  1201. package/utils/GeometryCompressionUtils.mjs +0 -547
  1202. package/utils/GeometryUtils.mjs +0 -108
  1203. package/utils/RoughnessMipmapper.mjs +0 -213
  1204. package/utils/SceneUtils.mjs +0 -36
  1205. package/utils/ShadowMapViewer.mjs +0 -114
  1206. package/utils/SkeletonUtils.mjs +0 -292
  1207. package/utils/UVsDebug.mjs +0 -85
  1208. package/utils/WorkerPool.mjs +0 -62
  1209. package/webxr/ARButton.mjs +0 -119
  1210. package/webxr/OculusHandModel.mjs +0 -71
  1211. package/webxr/OculusHandPointerModel.mjs +0 -207
  1212. package/webxr/Text2D.mjs +0 -31
  1213. package/webxr/VRButton.mjs +0 -105
  1214. package/webxr/XRControllerModelFactory.mjs +0 -146
  1215. package/webxr/XREstimatedLight.mjs +0 -126
  1216. package/webxr/XRHandMeshModel.mjs +0 -73
  1217. package/webxr/XRHandModelFactory.mjs +0 -61
  1218. package/webxr/XRHandPrimitiveModel.mjs +0 -68
@@ -1,65 +1,68 @@
1
- "use strict";
2
- Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
3
- const THREE = require("three");
4
- class RGBMLoader extends THREE.DataTextureLoader {
1
+ import { DataTextureLoader, HalfFloatType, CubeTexture, RGBAFormat, LinearFilter, DataUtils } from 'three';
2
+
3
+ class RGBMLoader extends DataTextureLoader {
5
4
  constructor(manager) {
6
5
  super(manager);
7
- this.type = THREE.HalfFloatType;
8
- this.maxRange = 7;
6
+ this.type = HalfFloatType;
7
+ this.maxRange = 7; // more information about this property at https://iwasbeingirony.blogspot.com/2010/06/difference-between-rgbm-and-rgbd.html
9
8
  }
9
+
10
10
  setDataType(value) {
11
11
  this.type = value;
12
12
  return this;
13
13
  }
14
+
14
15
  setMaxRange(value) {
15
16
  this.maxRange = value;
16
17
  return this;
17
18
  }
19
+
18
20
  loadCubemap(urls, onLoad, onProgress, onError) {
19
- const texture = new THREE.CubeTexture();
21
+ const texture = new CubeTexture();
20
22
  let loaded = 0;
21
23
  const scope = this;
24
+
22
25
  function loadTexture(i) {
23
- scope.load(
24
- urls[i],
25
- function(image) {
26
- texture.images[i] = image;
27
- loaded++;
28
- if (loaded === 6) {
29
- texture.needsUpdate = true;
30
- if (onLoad)
31
- onLoad(texture);
32
- }
33
- },
34
- void 0,
35
- onError
36
- );
26
+ scope.load(urls[i], function (image) {
27
+ texture.images[i] = image;
28
+ loaded++;
29
+
30
+ if (loaded === 6) {
31
+ texture.needsUpdate = true;
32
+ if (onLoad) onLoad(texture);
33
+ }
34
+ }, undefined, onError);
37
35
  }
36
+
38
37
  for (let i = 0; i < urls.length; ++i) {
39
38
  loadTexture(i);
40
39
  }
40
+
41
41
  texture.type = this.type;
42
- texture.format = THREE.RGBAFormat;
43
- texture.minFilter = THREE.LinearFilter;
42
+ texture.format = RGBAFormat;
43
+ texture.minFilter = LinearFilter;
44
44
  texture.generateMipmaps = false;
45
45
  return texture;
46
46
  }
47
+
47
48
  parse(buffer) {
48
49
  const img = UPNG.decode(buffer);
49
50
  const rgba = UPNG.toRGBA8(img)[0];
50
51
  const data = new Uint8Array(rgba);
51
52
  const size = img.width * img.height * 4;
52
- const output = this.type === THREE.HalfFloatType ? new Uint16Array(size) : new Float32Array(size);
53
+ const output = this.type === HalfFloatType ? new Uint16Array(size) : new Float32Array(size); // decode RGBM
54
+
53
55
  for (let i = 0; i < data.length; i += 4) {
54
56
  const r = data[i + 0] / 255;
55
57
  const g = data[i + 1] / 255;
56
58
  const b = data[i + 2] / 255;
57
59
  const a = data[i + 3] / 255;
58
- if (this.type === THREE.HalfFloatType) {
59
- output[i + 0] = THREE.DataUtils.toHalfFloat(Math.min(r * a * this.maxRange, 65504));
60
- output[i + 1] = THREE.DataUtils.toHalfFloat(Math.min(g * a * this.maxRange, 65504));
61
- output[i + 2] = THREE.DataUtils.toHalfFloat(Math.min(b * a * this.maxRange, 65504));
62
- output[i + 3] = THREE.DataUtils.toHalfFloat(1);
60
+
61
+ if (this.type === HalfFloatType) {
62
+ output[i + 0] = DataUtils.toHalfFloat(Math.min(r * a * this.maxRange, 65504));
63
+ output[i + 1] = DataUtils.toHalfFloat(Math.min(g * a * this.maxRange, 65504));
64
+ output[i + 2] = DataUtils.toHalfFloat(Math.min(b * a * this.maxRange, 65504));
65
+ output[i + 3] = DataUtils.toHalfFloat(1);
63
66
  } else {
64
67
  output[i + 0] = r * a * this.maxRange;
65
68
  output[i + 1] = g * a * this.maxRange;
@@ -67,53 +70,65 @@ class RGBMLoader extends THREE.DataTextureLoader {
67
70
  output[i + 3] = 1;
68
71
  }
69
72
  }
73
+
70
74
  return {
71
75
  width: img.width,
72
76
  height: img.height,
73
77
  data: output,
74
- format: THREE.RGBAFormat,
78
+ format: RGBAFormat,
75
79
  type: this.type,
76
80
  flipY: true
77
81
  };
78
82
  }
79
- }
83
+
84
+ } // from https://github.com/photopea/UPNG.js (MIT License)
85
+
86
+
80
87
  var UPNG = {};
81
- UPNG.toRGBA8 = function(out) {
82
- var w = out.width, h = out.height;
83
- if (out.tabs.acTL == null)
84
- return [UPNG.toRGBA8.decodeImage(out.data, w, h, out).buffer];
88
+
89
+ UPNG.toRGBA8 = function (out) {
90
+ var w = out.width,
91
+ h = out.height;
92
+ if (out.tabs.acTL == null) return [UPNG.toRGBA8.decodeImage(out.data, w, h, out).buffer];
85
93
  var frms = [];
86
- if (out.frames[0].data == null)
87
- out.frames[0].data = out.data;
88
- var len = w * h * 4, img = new Uint8Array(len), empty = new Uint8Array(len), prev = new Uint8Array(len);
94
+ if (out.frames[0].data == null) out.frames[0].data = out.data;
95
+ var len = w * h * 4,
96
+ img = new Uint8Array(len),
97
+ empty = new Uint8Array(len),
98
+ prev = new Uint8Array(len);
99
+
89
100
  for (var i = 0; i < out.frames.length; i++) {
90
101
  var frm = out.frames[i];
91
- var fx = frm.rect.x, fy = frm.rect.y, fw = frm.rect.width, fh = frm.rect.height;
102
+ var fx = frm.rect.x,
103
+ fy = frm.rect.y,
104
+ fw = frm.rect.width,
105
+ fh = frm.rect.height;
92
106
  var fdata = UPNG.toRGBA8.decodeImage(frm.data, fw, fh, out);
93
- if (i != 0)
94
- for (var j = 0; j < len; j++)
95
- prev[j] = img[j];
96
- if (frm.blend == 0)
97
- UPNG._copyTile(fdata, fw, fh, img, w, h, fx, fy, 0);
98
- else if (frm.blend == 1)
99
- UPNG._copyTile(fdata, fw, fh, img, w, h, fx, fy, 1);
107
+ if (i != 0) for (var j = 0; j < len; j++) prev[j] = img[j];
108
+ if (frm.blend == 0) UPNG._copyTile(fdata, fw, fh, img, w, h, fx, fy, 0);else if (frm.blend == 1) UPNG._copyTile(fdata, fw, fh, img, w, h, fx, fy, 1);
100
109
  frms.push(img.buffer.slice(0));
101
- if (frm.dispose == 1)
102
- UPNG._copyTile(empty, fw, fh, img, w, h, fx, fy, 0);
103
- else if (frm.dispose == 2)
104
- for (var j = 0; j < len; j++)
105
- img[j] = prev[j];
110
+ if (frm.dispose == 1) UPNG._copyTile(empty, fw, fh, img, w, h, fx, fy, 0);else if (frm.dispose == 2) for (var j = 0; j < len; j++) img[j] = prev[j];
106
111
  }
112
+
107
113
  return frms;
108
114
  };
109
- UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
110
- var area = w * h, bpp = UPNG.decode._getBPP(out);
111
- var bpl = Math.ceil(w * bpp / 8);
112
- var bf = new Uint8Array(area * 4), bf32 = new Uint32Array(bf.buffer);
113
- var ctype = out.ctype, depth = out.depth;
115
+
116
+ UPNG.toRGBA8.decodeImage = function (data, w, h, out) {
117
+ var area = w * h,
118
+ bpp = UPNG.decode._getBPP(out);
119
+
120
+ var bpl = Math.ceil(w * bpp / 8); // bytes per line
121
+
122
+ var bf = new Uint8Array(area * 4),
123
+ bf32 = new Uint32Array(bf.buffer);
124
+ var ctype = out.ctype,
125
+ depth = out.depth;
114
126
  var rs = UPNG._bin.readUshort;
127
+
115
128
  if (ctype == 6) {
129
+ // RGB + alpha
116
130
  var qarea = area << 2;
131
+
117
132
  if (depth == 8) {
118
133
  for (var i = 0; i < qarea; i += 4) {
119
134
  bf[i] = data[i];
@@ -122,13 +137,16 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
122
137
  bf[i + 3] = data[i + 3];
123
138
  }
124
139
  }
140
+
125
141
  if (depth == 16) {
126
142
  for (var i = 0; i < qarea; i++) {
127
143
  bf[i] = data[i << 1];
128
144
  }
129
145
  }
130
146
  } else if (ctype == 2) {
131
- var ts = out.tabs["tRNS"];
147
+ // RGB
148
+ var ts = out.tabs['tRNS'];
149
+
132
150
  if (ts == null) {
133
151
  if (depth == 8) {
134
152
  for (var i = 0; i < area; i++) {
@@ -136,6 +154,7 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
136
154
  bf32[i] = 255 << 24 | data[ti + 2] << 16 | data[ti + 1] << 8 | data[ti];
137
155
  }
138
156
  }
157
+
139
158
  if (depth == 16) {
140
159
  for (var i = 0; i < area; i++) {
141
160
  var ti = i * 6;
@@ -143,31 +162,43 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
143
162
  }
144
163
  }
145
164
  } else {
146
- var tr = ts[0], tg = ts[1], tb = ts[2];
165
+ var tr = ts[0],
166
+ tg = ts[1],
167
+ tb = ts[2];
168
+
147
169
  if (depth == 8) {
148
170
  for (var i = 0; i < area; i++) {
149
- var qi = i << 2, ti = i * 3;
171
+ var qi = i << 2,
172
+ ti = i * 3;
150
173
  bf32[i] = 255 << 24 | data[ti + 2] << 16 | data[ti + 1] << 8 | data[ti];
151
- if (data[ti] == tr && data[ti + 1] == tg && data[ti + 2] == tb)
152
- bf[qi + 3] = 0;
174
+ if (data[ti] == tr && data[ti + 1] == tg && data[ti + 2] == tb) bf[qi + 3] = 0;
153
175
  }
154
176
  }
177
+
155
178
  if (depth == 16) {
156
179
  for (var i = 0; i < area; i++) {
157
- var qi = i << 2, ti = i * 6;
180
+ var qi = i << 2,
181
+ ti = i * 6;
158
182
  bf32[i] = 255 << 24 | data[ti + 4] << 16 | data[ti + 2] << 8 | data[ti];
159
- if (rs(data, ti) == tr && rs(data, ti + 2) == tg && rs(data, ti + 4) == tb)
160
- bf[qi + 3] = 0;
183
+ if (rs(data, ti) == tr && rs(data, ti + 2) == tg && rs(data, ti + 4) == tb) bf[qi + 3] = 0;
161
184
  }
162
185
  }
163
186
  }
164
187
  } else if (ctype == 3) {
165
- var p = out.tabs["PLTE"], ap = out.tabs["tRNS"], tl = ap ? ap.length : 0;
188
+ // palette
189
+ var p = out.tabs['PLTE'],
190
+ ap = out.tabs['tRNS'],
191
+ tl = ap ? ap.length : 0; //console.log(p, ap);
192
+
166
193
  if (depth == 1) {
167
194
  for (var y = 0; y < h; y++) {
168
- var s0 = y * bpl, t0 = y * w;
195
+ var s0 = y * bpl,
196
+ t0 = y * w;
197
+
169
198
  for (var i = 0; i < w; i++) {
170
- var qi = t0 + i << 2, j = data[s0 + (i >> 3)] >> 7 - ((i & 7) << 0) & 1, cj = 3 * j;
199
+ var qi = t0 + i << 2,
200
+ j = data[s0 + (i >> 3)] >> 7 - ((i & 7) << 0) & 1,
201
+ cj = 3 * j;
171
202
  bf[qi] = p[cj];
172
203
  bf[qi + 1] = p[cj + 1];
173
204
  bf[qi + 2] = p[cj + 2];
@@ -175,11 +206,16 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
175
206
  }
176
207
  }
177
208
  }
209
+
178
210
  if (depth == 2) {
179
211
  for (var y = 0; y < h; y++) {
180
- var s0 = y * bpl, t0 = y * w;
212
+ var s0 = y * bpl,
213
+ t0 = y * w;
214
+
181
215
  for (var i = 0; i < w; i++) {
182
- var qi = t0 + i << 2, j = data[s0 + (i >> 2)] >> 6 - ((i & 3) << 1) & 3, cj = 3 * j;
216
+ var qi = t0 + i << 2,
217
+ j = data[s0 + (i >> 2)] >> 6 - ((i & 3) << 1) & 3,
218
+ cj = 3 * j;
183
219
  bf[qi] = p[cj];
184
220
  bf[qi + 1] = p[cj + 1];
185
221
  bf[qi + 2] = p[cj + 2];
@@ -187,11 +223,16 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
187
223
  }
188
224
  }
189
225
  }
226
+
190
227
  if (depth == 4) {
191
228
  for (var y = 0; y < h; y++) {
192
- var s0 = y * bpl, t0 = y * w;
229
+ var s0 = y * bpl,
230
+ t0 = y * w;
231
+
193
232
  for (var i = 0; i < w; i++) {
194
- var qi = t0 + i << 2, j = data[s0 + (i >> 1)] >> 4 - ((i & 1) << 2) & 15, cj = 3 * j;
233
+ var qi = t0 + i << 2,
234
+ j = data[s0 + (i >> 1)] >> 4 - ((i & 1) << 2) & 15,
235
+ cj = 3 * j;
195
236
  bf[qi] = p[cj];
196
237
  bf[qi + 1] = p[cj + 1];
197
238
  bf[qi + 2] = p[cj + 2];
@@ -199,9 +240,12 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
199
240
  }
200
241
  }
201
242
  }
243
+
202
244
  if (depth == 8) {
203
245
  for (var i = 0; i < area; i++) {
204
- var qi = i << 2, j = data[i], cj = 3 * j;
246
+ var qi = i << 2,
247
+ j = data[i],
248
+ cj = 3 * j;
205
249
  bf[qi] = p[cj];
206
250
  bf[qi + 1] = p[cj + 1];
207
251
  bf[qi + 2] = p[cj + 2];
@@ -209,18 +253,24 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
209
253
  }
210
254
  }
211
255
  } else if (ctype == 4) {
256
+ // gray + alpha
212
257
  if (depth == 8) {
213
258
  for (var i = 0; i < area; i++) {
214
- var qi = i << 2, di = i << 1, gr = data[di];
259
+ var qi = i << 2,
260
+ di = i << 1,
261
+ gr = data[di];
215
262
  bf[qi] = gr;
216
263
  bf[qi + 1] = gr;
217
264
  bf[qi + 2] = gr;
218
265
  bf[qi + 3] = data[di + 1];
219
266
  }
220
267
  }
268
+
221
269
  if (depth == 16) {
222
270
  for (var i = 0; i < area; i++) {
223
- var qi = i << 2, di = i << 2, gr = data[di];
271
+ var qi = i << 2,
272
+ di = i << 2,
273
+ gr = data[di];
224
274
  bf[qi] = gr;
225
275
  bf[qi + 1] = gr;
226
276
  bf[qi + 2] = gr;
@@ -228,71 +278,99 @@ UPNG.toRGBA8.decodeImage = function(data, w, h, out) {
228
278
  }
229
279
  }
230
280
  } else if (ctype == 0) {
231
- var tr = out.tabs["tRNS"] ? out.tabs["tRNS"] : -1;
281
+ // gray
282
+ var tr = out.tabs['tRNS'] ? out.tabs['tRNS'] : -1;
283
+
232
284
  for (var y = 0; y < h; y++) {
233
- var off = y * bpl, to = y * w;
285
+ var off = y * bpl,
286
+ to = y * w;
287
+
234
288
  if (depth == 1) {
235
289
  for (var x = 0; x < w; x++) {
236
- var gr = 255 * (data[off + (x >>> 3)] >>> 7 - (x & 7) & 1), al = gr == tr * 255 ? 0 : 255;
290
+ var gr = 255 * (data[off + (x >>> 3)] >>> 7 - (x & 7) & 1),
291
+ al = gr == tr * 255 ? 0 : 255;
237
292
  bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
238
293
  }
239
294
  } else if (depth == 2) {
240
295
  for (var x = 0; x < w; x++) {
241
- var gr = 85 * (data[off + (x >>> 2)] >>> 6 - ((x & 3) << 1) & 3), al = gr == tr * 85 ? 0 : 255;
296
+ var gr = 85 * (data[off + (x >>> 2)] >>> 6 - ((x & 3) << 1) & 3),
297
+ al = gr == tr * 85 ? 0 : 255;
242
298
  bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
243
299
  }
244
300
  } else if (depth == 4) {
245
301
  for (var x = 0; x < w; x++) {
246
- var gr = 17 * (data[off + (x >>> 1)] >>> 4 - ((x & 1) << 2) & 15), al = gr == tr * 17 ? 0 : 255;
302
+ var gr = 17 * (data[off + (x >>> 1)] >>> 4 - ((x & 1) << 2) & 15),
303
+ al = gr == tr * 17 ? 0 : 255;
247
304
  bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
248
305
  }
249
306
  } else if (depth == 8) {
250
307
  for (var x = 0; x < w; x++) {
251
- var gr = data[off + x], al = gr == tr ? 0 : 255;
308
+ var gr = data[off + x],
309
+ al = gr == tr ? 0 : 255;
252
310
  bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
253
311
  }
254
312
  } else if (depth == 16) {
255
313
  for (var x = 0; x < w; x++) {
256
- var gr = data[off + (x << 1)], al = rs(data, off + (x << 1)) == tr ? 0 : 255;
314
+ var gr = data[off + (x << 1)],
315
+ al = rs(data, off + (x << 1)) == tr ? 0 : 255;
257
316
  bf32[to + x] = al << 24 | gr << 16 | gr << 8 | gr;
258
317
  }
259
318
  }
260
319
  }
261
- }
320
+ } //console.log(Date.now()-time);
321
+
322
+
262
323
  return bf;
263
324
  };
264
- UPNG.decode = function(buff) {
265
- var data = new Uint8Array(buff), offset = 8, bin = UPNG._bin, rUs = bin.readUshort, rUi = bin.readUint;
266
- var out = { tabs: {}, frames: [] };
267
- var dd = new Uint8Array(data.length), doff = 0;
268
- var fd, foff = 0;
325
+
326
+ UPNG.decode = function (buff) {
327
+ var data = new Uint8Array(buff),
328
+ offset = 8,
329
+ bin = UPNG._bin,
330
+ rUs = bin.readUshort,
331
+ rUi = bin.readUint;
332
+ var out = {
333
+ tabs: {},
334
+ frames: []
335
+ };
336
+ var dd = new Uint8Array(data.length),
337
+ doff = 0; // put all IDAT data into it
338
+
339
+ var fd,
340
+ foff = 0; // frames
341
+
269
342
  var text, keyw, bfr;
270
- var mgck = [137, 80, 78, 71, 13, 10, 26, 10];
271
- for (var i = 0; i < 8; i++)
272
- if (data[i] != mgck[i])
273
- throw new Error("The input is not a PNG file!");
343
+ var mgck = [0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a];
344
+
345
+ for (var i = 0; i < 8; i++) if (data[i] != mgck[i]) throw new Error('The input is not a PNG file!');
346
+
274
347
  while (offset < data.length) {
275
348
  var len = bin.readUint(data, offset);
276
349
  offset += 4;
277
350
  var type = bin.readASCII(data, offset, 4);
278
- offset += 4;
279
- if (type == "IHDR") {
351
+ offset += 4; //console.log(type,len);
352
+
353
+ if (type == 'IHDR') {
280
354
  UPNG.decode._IHDR(data, offset, out);
281
- } else if (type == "CgBI") {
355
+ } else if (type == 'CgBI') {
282
356
  out.tabs[type] = data.slice(offset, offset + 4);
283
- } else if (type == "IDAT") {
284
- for (var i = 0; i < len; i++)
285
- dd[doff + i] = data[offset + i];
357
+ } else if (type == 'IDAT') {
358
+ for (var i = 0; i < len; i++) dd[doff + i] = data[offset + i];
359
+
286
360
  doff += len;
287
- } else if (type == "acTL") {
288
- out.tabs[type] = { num_frames: rUi(data, offset), num_plays: rUi(data, offset + 4) };
361
+ } else if (type == 'acTL') {
362
+ out.tabs[type] = {
363
+ num_frames: rUi(data, offset),
364
+ num_plays: rUi(data, offset + 4)
365
+ };
289
366
  fd = new Uint8Array(data.length);
290
- } else if (type == "fcTL") {
367
+ } else if (type == 'fcTL') {
291
368
  if (foff != 0) {
292
369
  var fr = out.frames[out.frames.length - 1];
293
370
  fr.data = UPNG.decode._decompress(out, fd.slice(0, foff), fr.rect.width, fr.rect.height);
294
371
  foff = 0;
295
372
  }
373
+
296
374
  var rct = {
297
375
  x: rUi(data, offset + 12),
298
376
  y: rUi(data, offset + 16),
@@ -301,35 +379,42 @@ UPNG.decode = function(buff) {
301
379
  };
302
380
  var del = rUs(data, offset + 22);
303
381
  del = rUs(data, offset + 20) / (del == 0 ? 100 : del);
304
- var frm = { rect: rct, delay: Math.round(del * 1e3), dispose: data[offset + 24], blend: data[offset + 25] };
382
+ var frm = {
383
+ rect: rct,
384
+ delay: Math.round(del * 1000),
385
+ dispose: data[offset + 24],
386
+ blend: data[offset + 25]
387
+ }; //console.log(frm);
388
+
305
389
  out.frames.push(frm);
306
- } else if (type == "fdAT") {
307
- for (var i = 0; i < len - 4; i++)
308
- fd[foff + i] = data[offset + i + 4];
390
+ } else if (type == 'fdAT') {
391
+ for (var i = 0; i < len - 4; i++) fd[foff + i] = data[offset + i + 4];
392
+
309
393
  foff += len - 4;
310
- } else if (type == "pHYs") {
394
+ } else if (type == 'pHYs') {
311
395
  out.tabs[type] = [bin.readUint(data, offset), bin.readUint(data, offset + 4), data[offset + 8]];
312
- } else if (type == "cHRM") {
396
+ } else if (type == 'cHRM') {
313
397
  out.tabs[type] = [];
314
- for (var i = 0; i < 8; i++)
315
- out.tabs[type].push(bin.readUint(data, offset + i * 4));
316
- } else if (type == "tEXt" || type == "zTXt") {
317
- if (out.tabs[type] == null)
318
- out.tabs[type] = {};
398
+
399
+ for (var i = 0; i < 8; i++) out.tabs[type].push(bin.readUint(data, offset + i * 4));
400
+ } else if (type == 'tEXt' || type == 'zTXt') {
401
+ if (out.tabs[type] == null) out.tabs[type] = {};
319
402
  var nz = bin.nextZero(data, offset);
320
403
  keyw = bin.readASCII(data, offset, nz - offset);
321
404
  var tl = offset + len - nz - 1;
322
- if (type == "tEXt") {
405
+
406
+ if (type == 'tEXt') {
323
407
  text = bin.readASCII(data, nz + 1, tl);
324
408
  } else {
325
409
  bfr = UPNG.decode._inflate(data.slice(nz + 2, nz + 2 + tl));
326
410
  text = bin.readUTF8(bfr, 0, bfr.length);
327
411
  }
412
+
328
413
  out.tabs[type][keyw] = text;
329
- } else if (type == "iTXt") {
330
- if (out.tabs[type] == null)
331
- out.tabs[type] = {};
332
- var nz = 0, off = offset;
414
+ } else if (type == 'iTXt') {
415
+ if (out.tabs[type] == null) out.tabs[type] = {};
416
+ var nz = 0,
417
+ off = offset;
333
418
  nz = bin.nextZero(data, off);
334
419
  keyw = bin.readASCII(data, off, nz - off);
335
420
  off = nz + 1;
@@ -342,32 +427,29 @@ UPNG.decode = function(buff) {
342
427
  bin.readUTF8(data, off, nz - off);
343
428
  off = nz + 1;
344
429
  var tl = len - (off - offset);
430
+
345
431
  if (cflag == 0) {
346
432
  text = bin.readUTF8(data, off, tl);
347
433
  } else {
348
434
  bfr = UPNG.decode._inflate(data.slice(off, off + tl));
349
435
  text = bin.readUTF8(bfr, 0, bfr.length);
350
436
  }
437
+
351
438
  out.tabs[type][keyw] = text;
352
- } else if (type == "PLTE") {
439
+ } else if (type == 'PLTE') {
353
440
  out.tabs[type] = bin.readBytes(data, offset, len);
354
- } else if (type == "hIST") {
355
- var pl = out.tabs["PLTE"].length / 3;
441
+ } else if (type == 'hIST') {
442
+ var pl = out.tabs['PLTE'].length / 3;
356
443
  out.tabs[type] = [];
357
- for (var i = 0; i < pl; i++)
358
- out.tabs[type].push(rUs(data, offset + i * 2));
359
- } else if (type == "tRNS") {
360
- if (out.ctype == 3)
361
- out.tabs[type] = bin.readBytes(data, offset, len);
362
- else if (out.ctype == 0)
363
- out.tabs[type] = rUs(data, offset);
364
- else if (out.ctype == 2)
365
- out.tabs[type] = [rUs(data, offset), rUs(data, offset + 2), rUs(data, offset + 4)];
366
- } else if (type == "gAMA") {
367
- out.tabs[type] = bin.readUint(data, offset) / 1e5;
368
- } else if (type == "sRGB") {
444
+
445
+ for (var i = 0; i < pl; i++) out.tabs[type].push(rUs(data, offset + i * 2));
446
+ } else if (type == 'tRNS') {
447
+ if (out.ctype == 3) out.tabs[type] = bin.readBytes(data, offset, len);else if (out.ctype == 0) out.tabs[type] = rUs(data, offset);else if (out.ctype == 2) out.tabs[type] = [rUs(data, offset), rUs(data, offset + 2), rUs(data, offset + 4)]; //else console.log("tRNS for unsupported color type",out.ctype, len);
448
+ } else if (type == 'gAMA') {
449
+ out.tabs[type] = bin.readUint(data, offset) / 100000;
450
+ } else if (type == 'sRGB') {
369
451
  out.tabs[type] = data[offset];
370
- } else if (type == "bKGD") {
452
+ } else if (type == 'bKGD') {
371
453
  if (out.ctype == 0 || out.ctype == 4) {
372
454
  out.tabs[type] = [rUs(data, offset)];
373
455
  } else if (out.ctype == 2 || out.ctype == 6) {
@@ -375,88 +457,115 @@ UPNG.decode = function(buff) {
375
457
  } else if (out.ctype == 3) {
376
458
  out.tabs[type] = data[offset];
377
459
  }
378
- } else if (type == "IEND") {
460
+ } else if (type == 'IEND') {
379
461
  break;
380
- }
462
+ } //else { console.log("unknown chunk type", type, len); out.tabs[type]=data.slice(offset,offset+len); }
463
+
464
+
381
465
  offset += len;
382
466
  bin.readUint(data, offset);
383
467
  offset += 4;
384
468
  }
469
+
385
470
  if (foff != 0) {
386
471
  var fr = out.frames[out.frames.length - 1];
387
472
  fr.data = UPNG.decode._decompress(out, fd.slice(0, foff), fr.rect.width, fr.rect.height);
388
473
  }
474
+
389
475
  out.data = UPNG.decode._decompress(out, dd, out.width, out.height);
390
476
  delete out.compress;
391
477
  delete out.interlace;
392
478
  delete out.filter;
393
479
  return out;
394
480
  };
395
- UPNG.decode._decompress = function(out, dd, w, h) {
396
- var bpp = UPNG.decode._getBPP(out), bpl = Math.ceil(w * bpp / 8), buff = new Uint8Array((bpl + 1 + out.interlace) * h);
397
- if (out.tabs["CgBI"])
398
- dd = UPNG.inflateRaw(dd, buff);
399
- else
400
- dd = UPNG.decode._inflate(dd, buff);
401
- if (out.interlace == 0)
402
- dd = UPNG.decode._filterZero(dd, out, 0, w, h);
403
- else if (out.interlace == 1)
404
- dd = UPNG.decode._readInterlace(dd, out);
481
+
482
+ UPNG.decode._decompress = function (out, dd, w, h) {
483
+ var bpp = UPNG.decode._getBPP(out),
484
+ bpl = Math.ceil(w * bpp / 8),
485
+ buff = new Uint8Array((bpl + 1 + out.interlace) * h);
486
+
487
+ if (out.tabs['CgBI']) dd = UPNG.inflateRaw(dd, buff);else dd = UPNG.decode._inflate(dd, buff);
488
+ if (out.interlace == 0) dd = UPNG.decode._filterZero(dd, out, 0, w, h);else if (out.interlace == 1) dd = UPNG.decode._readInterlace(dd, out);
405
489
  return dd;
406
490
  };
407
- UPNG.decode._inflate = function(data, buff) {
408
- var out = UPNG["inflateRaw"](new Uint8Array(data.buffer, 2, data.length - 6), buff);
491
+
492
+ UPNG.decode._inflate = function (data, buff) {
493
+ var out = UPNG['inflateRaw'](new Uint8Array(data.buffer, 2, data.length - 6), buff);
409
494
  return out;
410
495
  };
411
- UPNG.inflateRaw = function() {
496
+
497
+ UPNG.inflateRaw = function () {
412
498
  var H = {};
413
499
  H.H = {};
414
- H.H.N = function(N, W) {
415
- var R = Uint8Array, i = 0, m = 0, J = 0, h = 0, Q = 0, X = 0, u = 0, w = 0, d = 0, v, C;
416
- if (N[0] == 3 && N[1] == 0)
417
- return W ? W : new R(0);
418
- var V = H.H, n = V.b, A = V.e, l = V.R, M = V.n, I = V.A, e = V.Z, b = V.m, Z = W == null;
419
- if (Z)
420
- W = new R(N.length >>> 2 << 5);
500
+
501
+ H.H.N = function (N, W) {
502
+ var R = Uint8Array,
503
+ i = 0,
504
+ m = 0,
505
+ J = 0,
506
+ h = 0,
507
+ Q = 0,
508
+ X = 0,
509
+ u = 0,
510
+ w = 0,
511
+ d = 0,
512
+ v,
513
+ C;
514
+ if (N[0] == 3 && N[1] == 0) return W ? W : new R(0);
515
+ var V = H.H,
516
+ n = V.b,
517
+ A = V.e,
518
+ l = V.R,
519
+ M = V.n,
520
+ I = V.A,
521
+ e = V.Z,
522
+ b = V.m,
523
+ Z = W == null;
524
+ if (Z) W = new R(N.length >>> 2 << 5);
525
+
421
526
  while (i == 0) {
422
527
  i = n(N, d, 1);
423
528
  m = n(N, d + 1, 2);
424
529
  d += 3;
530
+
425
531
  if (m == 0) {
426
- if ((d & 7) != 0)
427
- d += 8 - (d & 7);
428
- var D = (d >>> 3) + 4, q = N[D - 4] | N[D - 3] << 8;
429
- if (Z)
430
- W = H.H.W(W, w + q);
532
+ if ((d & 7) != 0) d += 8 - (d & 7);
533
+ var D = (d >>> 3) + 4,
534
+ q = N[D - 4] | N[D - 3] << 8;
535
+ if (Z) W = H.H.W(W, w + q);
431
536
  W.set(new R(N.buffer, N.byteOffset + D, q), w);
432
537
  d = D + q << 3;
433
538
  w += q;
434
539
  continue;
435
540
  }
436
- if (Z)
437
- W = H.H.W(W, w + (1 << 17));
541
+
542
+ if (Z) W = H.H.W(W, w + (1 << 17));
543
+
438
544
  if (m == 1) {
439
545
  v = b.J;
440
546
  C = b.h;
441
547
  X = (1 << 9) - 1;
442
548
  u = (1 << 5) - 1;
443
549
  }
550
+
444
551
  if (m == 2) {
445
552
  J = A(N, d, 5) + 257;
446
553
  h = A(N, d + 5, 5) + 1;
447
554
  Q = A(N, d + 10, 4) + 4;
448
555
  d += 14;
449
556
  var j = 1;
557
+
450
558
  for (var c = 0; c < 38; c += 2) {
451
559
  b.Q[c] = 0;
452
560
  b.Q[c + 1] = 0;
453
561
  }
562
+
454
563
  for (var c = 0; c < Q; c++) {
455
564
  var K = A(N, d + c * 3, 3);
456
565
  b.Q[(b.X[c] << 1) + 1] = K;
457
- if (K > j)
458
- j = K;
566
+ if (K > j) j = K;
459
567
  }
568
+
460
569
  d += 3 * Q;
461
570
  M(b.Q, j);
462
571
  I(b.Q, j, b.u);
@@ -472,56 +581,72 @@ UPNG.inflateRaw = function() {
472
581
  M(b.D, S);
473
582
  I(b.D, S, C);
474
583
  }
475
- while (true) {
584
+
585
+ while (!0) {
476
586
  var T = v[e(N, d) & X];
477
587
  d += T & 15;
478
588
  var p = T >>> 4;
589
+
479
590
  if (p >>> 8 == 0) {
480
591
  W[w++] = p;
481
592
  } else if (p == 256) {
482
593
  break;
483
594
  } else {
484
595
  var z = w + p - 254;
596
+
485
597
  if (p > 264) {
486
598
  var _ = b.q[p - 257];
487
599
  z = w + (_ >>> 3) + A(N, d, _ & 7);
488
600
  d += _ & 7;
489
601
  }
602
+
490
603
  var $ = C[e(N, d) & u];
491
604
  d += $ & 15;
492
- var s = $ >>> 4, Y = b.c[s], a = (Y >>> 4) + n(N, d, Y & 15);
605
+ var s = $ >>> 4,
606
+ Y = b.c[s],
607
+ a = (Y >>> 4) + n(N, d, Y & 15);
493
608
  d += Y & 15;
609
+
494
610
  while (w < z) {
495
611
  W[w] = W[w++ - a];
496
612
  W[w] = W[w++ - a];
497
613
  W[w] = W[w++ - a];
498
614
  W[w] = W[w++ - a];
499
615
  }
616
+
500
617
  w = z;
501
618
  }
502
619
  }
503
620
  }
621
+
504
622
  return W.length == w ? W : W.slice(0, w);
505
623
  };
506
- H.H.W = function(N, W) {
624
+
625
+ H.H.W = function (N, W) {
507
626
  var R = N.length;
508
- if (W <= R)
509
- return N;
627
+ if (W <= R) return N;
510
628
  var V = new Uint8Array(R << 1);
511
629
  V.set(N, 0);
512
630
  return V;
513
631
  };
514
- H.H.R = function(N, W, R, V, n, A) {
515
- var l = H.H.e, M = H.H.Z, I = 0;
632
+
633
+ H.H.R = function (N, W, R, V, n, A) {
634
+ var l = H.H.e,
635
+ M = H.H.Z,
636
+ I = 0;
637
+
516
638
  while (I < R) {
517
639
  var e = N[M(V, n) & W];
518
640
  n += e & 15;
519
641
  var b = e >>> 4;
642
+
520
643
  if (b <= 15) {
521
644
  A[I] = b;
522
645
  I++;
523
646
  } else {
524
- var Z = 0, m = 0;
647
+ var Z = 0,
648
+ m = 0;
649
+
525
650
  if (b == 16) {
526
651
  m = 3 + l(V, n, 2);
527
652
  n += 2;
@@ -533,58 +658,88 @@ UPNG.inflateRaw = function() {
533
658
  m = 11 + l(V, n, 7);
534
659
  n += 7;
535
660
  }
661
+
536
662
  var J = I + m;
663
+
537
664
  while (I < J) {
538
665
  A[I] = Z;
539
666
  I++;
540
667
  }
541
668
  }
542
669
  }
670
+
543
671
  return n;
544
672
  };
545
- H.H.V = function(N, W, R, V) {
546
- var n = 0, A = 0, l = V.length >>> 1;
673
+
674
+ H.H.V = function (N, W, R, V) {
675
+ var n = 0,
676
+ A = 0,
677
+ l = V.length >>> 1;
678
+
547
679
  while (A < R) {
548
680
  var M = N[A + W];
549
681
  V[A << 1] = 0;
550
682
  V[(A << 1) + 1] = M;
551
- if (M > n)
552
- n = M;
683
+ if (M > n) n = M;
553
684
  A++;
554
685
  }
686
+
555
687
  while (A < l) {
556
688
  V[A << 1] = 0;
557
689
  V[(A << 1) + 1] = 0;
558
690
  A++;
559
691
  }
692
+
560
693
  return n;
561
694
  };
562
- H.H.n = function(N, W) {
563
- var R = H.H.m, V = N.length, n, A, l, M, I, e = R.j;
564
- for (var M = 0; M <= W; M++)
565
- e[M] = 0;
566
- for (M = 1; M < V; M += 2)
567
- e[N[M]]++;
695
+
696
+ H.H.n = function (N, W) {
697
+ var R = H.H.m,
698
+ V = N.length,
699
+ n,
700
+ A,
701
+ l,
702
+ M,
703
+ I,
704
+ e = R.j;
705
+
706
+ for (var M = 0; M <= W; M++) e[M] = 0;
707
+
708
+ for (M = 1; M < V; M += 2) e[N[M]]++;
709
+
568
710
  var b = R.K;
569
711
  n = 0;
570
712
  e[0] = 0;
713
+
571
714
  for (A = 1; A <= W; A++) {
572
715
  n = n + e[A - 1] << 1;
573
716
  b[A] = n;
574
717
  }
718
+
575
719
  for (l = 0; l < V; l += 2) {
576
720
  I = N[l + 1];
721
+
577
722
  if (I != 0) {
578
723
  N[l] = b[I];
579
724
  b[I]++;
580
725
  }
581
726
  }
582
727
  };
583
- H.H.A = function(N, W, R) {
584
- var V = N.length, n = H.H.m, A = n.r;
728
+
729
+ H.H.A = function (N, W, R) {
730
+ var V = N.length,
731
+ n = H.H.m,
732
+ A = n.r;
733
+
585
734
  for (var l = 0; l < V; l += 2) {
586
735
  if (N[l + 1] != 0) {
587
- var M = l >> 1, I = N[l + 1], e = M << 4 | I, b = W - I, Z = N[l] << b, m = Z + (1 << b);
736
+ var M = l >> 1,
737
+ I = N[l + 1],
738
+ e = M << 4 | I,
739
+ b = W - I,
740
+ Z = N[l] << b,
741
+ m = Z + (1 << b);
742
+
588
743
  while (Z != m) {
589
744
  var J = A[Z] >>> 15 - W;
590
745
  R[J] = e;
@@ -593,114 +748,59 @@ UPNG.inflateRaw = function() {
593
748
  }
594
749
  }
595
750
  };
596
- H.H.l = function(N, W) {
597
- var R = H.H.m.r, V = 15 - W;
751
+
752
+ H.H.l = function (N, W) {
753
+ var R = H.H.m.r,
754
+ V = 15 - W;
755
+
598
756
  for (var n = 0; n < N.length; n += 2) {
599
757
  var A = N[n] << W - N[n + 1];
600
758
  N[n] = R[A] >>> V;
601
759
  }
602
760
  };
603
- H.H.M = function(N, W, R) {
761
+
762
+ H.H.M = function (N, W, R) {
604
763
  R = R << (W & 7);
605
764
  var V = W >>> 3;
606
765
  N[V] |= R;
607
766
  N[V + 1] |= R >>> 8;
608
767
  };
609
- H.H.I = function(N, W, R) {
768
+
769
+ H.H.I = function (N, W, R) {
610
770
  R = R << (W & 7);
611
771
  var V = W >>> 3;
612
772
  N[V] |= R;
613
773
  N[V + 1] |= R >>> 8;
614
774
  N[V + 2] |= R >>> 16;
615
775
  };
616
- H.H.e = function(N, W, R) {
776
+
777
+ H.H.e = function (N, W, R) {
617
778
  return (N[W >>> 3] | N[(W >>> 3) + 1] << 8) >>> (W & 7) & (1 << R) - 1;
618
779
  };
619
- H.H.b = function(N, W, R) {
780
+
781
+ H.H.b = function (N, W, R) {
620
782
  return (N[W >>> 3] | N[(W >>> 3) + 1] << 8 | N[(W >>> 3) + 2] << 16) >>> (W & 7) & (1 << R) - 1;
621
783
  };
622
- H.H.Z = function(N, W) {
784
+
785
+ H.H.Z = function (N, W) {
623
786
  return (N[W >>> 3] | N[(W >>> 3) + 1] << 8 | N[(W >>> 3) + 2] << 16) >>> (W & 7);
624
787
  };
625
- H.H.i = function(N, W) {
788
+
789
+ H.H.i = function (N, W) {
626
790
  return (N[W >>> 3] | N[(W >>> 3) + 1] << 8 | N[(W >>> 3) + 2] << 16 | N[(W >>> 3) + 3] << 24) >>> (W & 7);
627
791
  };
628
- H.H.m = function() {
629
- var N = Uint16Array, W = Uint32Array;
792
+
793
+ H.H.m = function () {
794
+ var N = Uint16Array,
795
+ W = Uint32Array;
630
796
  return {
631
797
  K: new N(16),
632
798
  j: new N(16),
633
799
  X: [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15],
634
- S: [
635
- 3,
636
- 4,
637
- 5,
638
- 6,
639
- 7,
640
- 8,
641
- 9,
642
- 10,
643
- 11,
644
- 13,
645
- 15,
646
- 17,
647
- 19,
648
- 23,
649
- 27,
650
- 31,
651
- 35,
652
- 43,
653
- 51,
654
- 59,
655
- 67,
656
- 83,
657
- 99,
658
- 115,
659
- 131,
660
- 163,
661
- 195,
662
- 227,
663
- 258,
664
- 999,
665
- 999,
666
- 999
667
- ],
800
+ S: [3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 999, 999, 999],
668
801
  T: [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 0, 0, 0],
669
802
  q: new N(32),
670
- p: [
671
- 1,
672
- 2,
673
- 3,
674
- 4,
675
- 5,
676
- 7,
677
- 9,
678
- 13,
679
- 17,
680
- 25,
681
- 33,
682
- 49,
683
- 65,
684
- 97,
685
- 129,
686
- 193,
687
- 257,
688
- 385,
689
- 513,
690
- 769,
691
- 1025,
692
- 1537,
693
- 2049,
694
- 3073,
695
- 4097,
696
- 6145,
697
- 8193,
698
- 12289,
699
- 16385,
700
- 24577,
701
- 65535,
702
- 65535
703
- ],
803
+ p: [1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, 8193, 12289, 16385, 24577, 65535, 65535],
704
804
  z: [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13, 0, 0],
705
805
  c: new W(32),
706
806
  J: new N(512),
@@ -723,8 +823,11 @@ UPNG.inflateRaw = function() {
723
823
  g: new N(1 << 15)
724
824
  };
725
825
  }();
726
- (function() {
727
- var N = H.H.m, W = 1 << 15;
826
+
827
+ (function () {
828
+ var N = H.H.m,
829
+ W = 1 << 15;
830
+
728
831
  for (var R = 0; R < W; R++) {
729
832
  var V = R;
730
833
  V = (V & 2863311530) >>> 1 | (V & 1431655765) << 1;
@@ -733,14 +836,16 @@ UPNG.inflateRaw = function() {
733
836
  V = (V & 4278255360) >>> 8 | (V & 16711935) << 8;
734
837
  N.r[R] = (V >>> 16 | V << 16) >>> 17;
735
838
  }
839
+
736
840
  function n(A, l, M) {
737
- while (l-- != 0)
738
- A.push(0, M);
841
+ while (l-- != 0) A.push(0, M);
739
842
  }
843
+
740
844
  for (var R = 0; R < 32; R++) {
741
845
  N.q[R] = N.S[R] << 3 | N.T[R];
742
846
  N.c[R] = N.p[R] << 4 | N.z[R];
743
847
  }
848
+
744
849
  n(N._, 144, 8);
745
850
  n(N._, 255 - 143, 9);
746
851
  n(N._, 279 - 255, 7);
@@ -757,11 +862,18 @@ UPNG.inflateRaw = function() {
757
862
  n(N.D, 30, 0);
758
863
  n(N.v, 320, 0);
759
864
  })();
865
+
760
866
  return H.H.N;
761
867
  }();
762
- UPNG.decode._readInterlace = function(data, out) {
763
- var w = out.width, h = out.height;
764
- var bpp = UPNG.decode._getBPP(out), cbpp = bpp >> 3, bpl = Math.ceil(w * bpp / 8);
868
+
869
+ UPNG.decode._readInterlace = function (data, out) {
870
+ var w = out.width,
871
+ h = out.height;
872
+
873
+ var bpp = UPNG.decode._getBPP(out),
874
+ cbpp = bpp >> 3,
875
+ bpl = Math.ceil(w * bpp / 8);
876
+
765
877
  var img = new Uint8Array(h * bpl);
766
878
  var di = 0;
767
879
  var starting_row = [0, 0, 4, 0, 2, 0, 1];
@@ -769,112 +881,136 @@ UPNG.decode._readInterlace = function(data, out) {
769
881
  var row_increment = [8, 8, 8, 4, 4, 2, 2];
770
882
  var col_increment = [8, 8, 4, 4, 2, 2, 1];
771
883
  var pass = 0;
884
+
772
885
  while (pass < 7) {
773
- var ri = row_increment[pass], ci = col_increment[pass];
774
- var sw = 0, sh = 0;
886
+ var ri = row_increment[pass],
887
+ ci = col_increment[pass];
888
+ var sw = 0,
889
+ sh = 0;
775
890
  var cr = starting_row[pass];
891
+
776
892
  while (cr < h) {
777
893
  cr += ri;
778
894
  sh++;
779
895
  }
896
+
780
897
  var cc = starting_col[pass];
898
+
781
899
  while (cc < w) {
782
900
  cc += ci;
783
901
  sw++;
784
902
  }
903
+
785
904
  var bpll = Math.ceil(sw * bpp / 8);
905
+
786
906
  UPNG.decode._filterZero(data, out, di, sw, sh);
787
- var y = 0, row = starting_row[pass];
907
+
908
+ var y = 0,
909
+ row = starting_row[pass];
788
910
  var val;
911
+
789
912
  while (row < h) {
790
913
  var col = starting_col[pass];
791
914
  var cdi = di + y * bpll << 3;
915
+
792
916
  while (col < w) {
793
917
  if (bpp == 1) {
794
918
  val = data[cdi >> 3];
795
919
  val = val >> 7 - (cdi & 7) & 1;
796
920
  img[row * bpl + (col >> 3)] |= val << 7 - ((col & 7) << 0);
797
921
  }
922
+
798
923
  if (bpp == 2) {
799
924
  val = data[cdi >> 3];
800
925
  val = val >> 6 - (cdi & 7) & 3;
801
926
  img[row * bpl + (col >> 2)] |= val << 6 - ((col & 3) << 1);
802
927
  }
928
+
803
929
  if (bpp == 4) {
804
930
  val = data[cdi >> 3];
805
931
  val = val >> 4 - (cdi & 7) & 15;
806
932
  img[row * bpl + (col >> 1)] |= val << 4 - ((col & 1) << 2);
807
933
  }
934
+
808
935
  if (bpp >= 8) {
809
936
  var ii = row * bpl + col * cbpp;
810
- for (var j = 0; j < cbpp; j++)
811
- img[ii + j] = data[(cdi >> 3) + j];
937
+
938
+ for (var j = 0; j < cbpp; j++) img[ii + j] = data[(cdi >> 3) + j];
812
939
  }
940
+
813
941
  cdi += bpp;
814
942
  col += ci;
815
943
  }
944
+
816
945
  y++;
817
946
  row += ri;
818
947
  }
819
- if (sw * sh != 0)
820
- di += sh * (1 + bpll);
948
+
949
+ if (sw * sh != 0) di += sh * (1 + bpll);
821
950
  pass = pass + 1;
822
951
  }
952
+
823
953
  return img;
824
954
  };
825
- UPNG.decode._getBPP = function(out) {
955
+
956
+ UPNG.decode._getBPP = function (out) {
826
957
  var noc = [1, null, 3, 1, 2, null, 4][out.ctype];
827
958
  return noc * out.depth;
828
959
  };
829
- UPNG.decode._filterZero = function(data, out, off, w, h) {
830
- var bpp = UPNG.decode._getBPP(out), bpl = Math.ceil(w * bpp / 8), paeth = UPNG.decode._paeth;
960
+
961
+ UPNG.decode._filterZero = function (data, out, off, w, h) {
962
+ var bpp = UPNG.decode._getBPP(out),
963
+ bpl = Math.ceil(w * bpp / 8),
964
+ paeth = UPNG.decode._paeth;
965
+
831
966
  bpp = Math.ceil(bpp / 8);
832
- var i, di, type = data[off], x = 0;
833
- if (type > 1)
834
- data[off] = [0, 0, 1][type - 2];
835
- if (type == 3)
836
- for (x = bpp; x < bpl; x++)
837
- data[x + 1] = data[x + 1] + (data[x + 1 - bpp] >>> 1) & 255;
967
+ var i,
968
+ di,
969
+ type = data[off],
970
+ x = 0;
971
+ if (type > 1) data[off] = [0, 0, 1][type - 2];
972
+ if (type == 3) for (x = bpp; x < bpl; x++) data[x + 1] = data[x + 1] + (data[x + 1 - bpp] >>> 1) & 255;
973
+
838
974
  for (var y = 0; y < h; y++) {
839
975
  i = off + y * bpl;
840
976
  di = i + y + 1;
841
977
  type = data[di - 1];
842
978
  x = 0;
979
+
843
980
  if (type == 0) {
844
- for (; x < bpl; x++)
845
- data[i + x] = data[di + x];
981
+ for (; x < bpl; x++) data[i + x] = data[di + x];
846
982
  } else if (type == 1) {
847
- for (; x < bpp; x++)
848
- data[i + x] = data[di + x];
849
- for (; x < bpl; x++)
850
- data[i + x] = data[di + x] + data[i + x - bpp];
983
+ for (; x < bpp; x++) data[i + x] = data[di + x];
984
+
985
+ for (; x < bpl; x++) data[i + x] = data[di + x] + data[i + x - bpp];
851
986
  } else if (type == 2) {
852
- for (; x < bpl; x++)
853
- data[i + x] = data[di + x] + data[i + x - bpl];
987
+ for (; x < bpl; x++) data[i + x] = data[di + x] + data[i + x - bpl];
854
988
  } else if (type == 3) {
855
- for (; x < bpp; x++)
856
- data[i + x] = data[di + x] + (data[i + x - bpl] >>> 1);
857
- for (; x < bpl; x++)
858
- data[i + x] = data[di + x] + (data[i + x - bpl] + data[i + x - bpp] >>> 1);
989
+ for (; x < bpp; x++) data[i + x] = data[di + x] + (data[i + x - bpl] >>> 1);
990
+
991
+ for (; x < bpl; x++) data[i + x] = data[di + x] + (data[i + x - bpl] + data[i + x - bpp] >>> 1);
859
992
  } else {
860
- for (; x < bpp; x++)
861
- data[i + x] = data[di + x] + paeth(0, data[i + x - bpl], 0);
993
+ for (; x < bpp; x++) data[i + x] = data[di + x] + paeth(0, data[i + x - bpl], 0);
994
+
862
995
  for (; x < bpl; x++) {
863
996
  data[i + x] = data[di + x] + paeth(data[i + x - bpp], data[i + x - bpl], data[i + x - bpp - bpl]);
864
997
  }
865
998
  }
866
999
  }
1000
+
867
1001
  return data;
868
1002
  };
869
- UPNG.decode._paeth = function(a, b, c) {
870
- var p = a + b - c, pa = p - a, pb = p - b, pc = p - c;
871
- if (pa * pa <= pb * pb && pa * pa <= pc * pc)
872
- return a;
873
- else if (pb * pb <= pc * pc)
874
- return b;
1003
+
1004
+ UPNG.decode._paeth = function (a, b, c) {
1005
+ var p = a + b - c,
1006
+ pa = p - a,
1007
+ pb = p - b,
1008
+ pc = p - c;
1009
+ if (pa * pa <= pb * pb && pa * pa <= pc * pc) return a;else if (pb * pb <= pc * pc) return b;
875
1010
  return c;
876
1011
  };
877
- UPNG.decode._IHDR = function(data, offset, out) {
1012
+
1013
+ UPNG.decode._IHDR = function (data, offset, out) {
878
1014
  var bin = UPNG._bin;
879
1015
  out.width = bin.readUint(data, offset);
880
1016
  offset += 4;
@@ -891,62 +1027,71 @@ UPNG.decode._IHDR = function(data, offset, out) {
891
1027
  out.interlace = data[offset];
892
1028
  offset++;
893
1029
  };
1030
+
894
1031
  UPNG._bin = {
895
- nextZero: function(data, p) {
896
- while (data[p] != 0)
897
- p++;
1032
+ nextZero: function (data, p) {
1033
+ while (data[p] != 0) p++;
1034
+
898
1035
  return p;
899
1036
  },
900
- readUshort: function(buff, p) {
1037
+ readUshort: function (buff, p) {
901
1038
  return buff[p] << 8 | buff[p + 1];
902
1039
  },
903
- writeUshort: function(buff, p, n) {
1040
+ writeUshort: function (buff, p, n) {
904
1041
  buff[p] = n >> 8 & 255;
905
1042
  buff[p + 1] = n & 255;
906
1043
  },
907
- readUint: function(buff, p) {
1044
+ readUint: function (buff, p) {
908
1045
  return buff[p] * (256 * 256 * 256) + (buff[p + 1] << 16 | buff[p + 2] << 8 | buff[p + 3]);
909
1046
  },
910
- writeUint: function(buff, p, n) {
1047
+ writeUint: function (buff, p, n) {
911
1048
  buff[p] = n >> 24 & 255;
912
1049
  buff[p + 1] = n >> 16 & 255;
913
1050
  buff[p + 2] = n >> 8 & 255;
914
1051
  buff[p + 3] = n & 255;
915
1052
  },
916
- readASCII: function(buff, p, l) {
917
- var s = "";
918
- for (var i = 0; i < l; i++)
919
- s += String.fromCharCode(buff[p + i]);
1053
+ readASCII: function (buff, p, l) {
1054
+ var s = '';
1055
+
1056
+ for (var i = 0; i < l; i++) s += String.fromCharCode(buff[p + i]);
1057
+
920
1058
  return s;
921
1059
  },
922
- writeASCII: function(data, p, s) {
923
- for (var i = 0; i < s.length; i++)
924
- data[p + i] = s.charCodeAt(i);
1060
+ writeASCII: function (data, p, s) {
1061
+ for (var i = 0; i < s.length; i++) data[p + i] = s.charCodeAt(i);
925
1062
  },
926
- readBytes: function(buff, p, l) {
1063
+ readBytes: function (buff, p, l) {
927
1064
  var arr = [];
928
- for (var i = 0; i < l; i++)
929
- arr.push(buff[p + i]);
1065
+
1066
+ for (var i = 0; i < l; i++) arr.push(buff[p + i]);
1067
+
930
1068
  return arr;
931
1069
  },
932
- pad: function(n) {
933
- return n.length < 2 ? "0" + n : n;
1070
+ pad: function (n) {
1071
+ return n.length < 2 ? '0' + n : n;
934
1072
  },
935
- readUTF8: function(buff, p, l) {
936
- var s = "", ns;
937
- for (var i = 0; i < l; i++)
938
- s += "%" + UPNG._bin.pad(buff[p + i].toString(16));
1073
+ readUTF8: function (buff, p, l) {
1074
+ var s = '',
1075
+ ns;
1076
+
1077
+ for (var i = 0; i < l; i++) s += '%' + UPNG._bin.pad(buff[p + i].toString(16));
1078
+
939
1079
  try {
940
1080
  ns = decodeURIComponent(s);
941
1081
  } catch (e) {
942
1082
  return UPNG._bin.readASCII(buff, p, l);
943
1083
  }
1084
+
944
1085
  return ns;
945
1086
  }
946
1087
  };
947
- UPNG._copyTile = function(sb, sw, sh, tb, tw, th, xoff, yoff, mode) {
948
- var w = Math.min(sw, tw), h = Math.min(sh, th);
949
- var si = 0, ti = 0;
1088
+
1089
+ UPNG._copyTile = function (sb, sw, sh, tb, tw, th, xoff, yoff, mode) {
1090
+ var w = Math.min(sw, tw),
1091
+ h = Math.min(sh, th);
1092
+ var si = 0,
1093
+ ti = 0;
1094
+
950
1095
  for (var y = 0; y < h; y++) {
951
1096
  for (var x = 0; x < w; x++) {
952
1097
  if (xoff >= 0 && yoff >= 0) {
@@ -956,22 +1101,39 @@ UPNG._copyTile = function(sb, sw, sh, tb, tw, th, xoff, yoff, mode) {
956
1101
  si = (-yoff + y) * sw - xoff + x << 2;
957
1102
  ti = y * tw + x << 2;
958
1103
  }
1104
+
959
1105
  if (mode == 0) {
960
1106
  tb[ti] = sb[si];
961
1107
  tb[ti + 1] = sb[si + 1];
962
1108
  tb[ti + 2] = sb[si + 2];
963
1109
  tb[ti + 3] = sb[si + 3];
964
1110
  } else if (mode == 1) {
965
- var fa = sb[si + 3] * (1 / 255), fr = sb[si] * fa, fg = sb[si + 1] * fa, fb = sb[si + 2] * fa;
966
- var ba = tb[ti + 3] * (1 / 255), br = tb[ti] * ba, bg = tb[ti + 1] * ba, bb = tb[ti + 2] * ba;
967
- var ifa = 1 - fa, oa = fa + ba * ifa, ioa = oa == 0 ? 0 : 1 / oa;
1111
+ var fa = sb[si + 3] * (1 / 255),
1112
+ fr = sb[si] * fa,
1113
+ fg = sb[si + 1] * fa,
1114
+ fb = sb[si + 2] * fa;
1115
+ var ba = tb[ti + 3] * (1 / 255),
1116
+ br = tb[ti] * ba,
1117
+ bg = tb[ti + 1] * ba,
1118
+ bb = tb[ti + 2] * ba;
1119
+ var ifa = 1 - fa,
1120
+ oa = fa + ba * ifa,
1121
+ ioa = oa == 0 ? 0 : 1 / oa;
968
1122
  tb[ti + 3] = 255 * oa;
969
1123
  tb[ti + 0] = (fr + br * ifa) * ioa;
970
1124
  tb[ti + 1] = (fg + bg * ifa) * ioa;
971
1125
  tb[ti + 2] = (fb + bb * ifa) * ioa;
972
1126
  } else if (mode == 2) {
973
- var fa = sb[si + 3], fr = sb[si], fg = sb[si + 1], fb = sb[si + 2];
974
- var ba = tb[ti + 3], br = tb[ti], bg = tb[ti + 1], bb = tb[ti + 2];
1127
+ // copy only differences, otherwise zero
1128
+ var fa = sb[si + 3],
1129
+ fr = sb[si],
1130
+ fg = sb[si + 1],
1131
+ fb = sb[si + 2];
1132
+ var ba = tb[ti + 3],
1133
+ br = tb[ti],
1134
+ bg = tb[ti + 1],
1135
+ bb = tb[ti + 2];
1136
+
975
1137
  if (fa == ba && fr == br && fg == bg && fb == bb) {
976
1138
  tb[ti] = 0;
977
1139
  tb[ti + 1] = 0;
@@ -984,15 +1146,23 @@ UPNG._copyTile = function(sb, sw, sh, tb, tw, th, xoff, yoff, mode) {
984
1146
  tb[ti + 3] = fa;
985
1147
  }
986
1148
  } else if (mode == 3) {
987
- var fa = sb[si + 3], fr = sb[si], fg = sb[si + 1], fb = sb[si + 2];
988
- var ba = tb[ti + 3], br = tb[ti], bg = tb[ti + 1], bb = tb[ti + 2];
989
- if (fa == ba && fr == br && fg == bg && fb == bb)
990
- continue;
991
- if (fa < 220 && ba > 20)
992
- return false;
1149
+ // check if can be blended
1150
+ var fa = sb[si + 3],
1151
+ fr = sb[si],
1152
+ fg = sb[si + 1],
1153
+ fb = sb[si + 2];
1154
+ var ba = tb[ti + 3],
1155
+ br = tb[ti],
1156
+ bg = tb[ti + 1],
1157
+ bb = tb[ti + 2];
1158
+ if (fa == ba && fr == br && fg == bg && fb == bb) continue; //if(fa!=255 && ba!=0) return false;
1159
+
1160
+ if (fa < 220 && ba > 20) return false;
993
1161
  }
994
1162
  }
995
1163
  }
1164
+
996
1165
  return true;
997
1166
  };
998
- exports.RGBMLoader = RGBMLoader;
1167
+
1168
+ export { RGBMLoader };