@plastic-software/three 0.179.0 → 0.181.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 (430) hide show
  1. package/build/three.cjs +1108 -591
  2. package/build/three.core.js +616 -345
  3. package/build/three.core.min.js +1 -1
  4. package/build/three.module.js +488 -250
  5. package/build/three.module.min.js +1 -1
  6. package/build/three.tsl.js +37 -6
  7. package/build/three.tsl.min.js +1 -1
  8. package/build/three.webgpu.js +6576 -2152
  9. package/build/three.webgpu.min.js +1 -1
  10. package/build/three.webgpu.nodes.js +6575 -2151
  11. package/build/three.webgpu.nodes.min.js +1 -1
  12. package/examples/fonts/MPLUSRounded1c/MPLUSRounded1c-Regular.typeface.json.zip +0 -0
  13. package/examples/fonts/MPLUSRounded1c/OFL.txt +91 -0
  14. package/examples/jsm/Addons.js +1 -1
  15. package/examples/jsm/animation/CCDIKSolver.js +1 -1
  16. package/examples/jsm/controls/ArcballControls.js +8 -8
  17. package/examples/jsm/controls/DragControls.js +7 -57
  18. package/examples/jsm/controls/FirstPersonControls.js +3 -3
  19. package/examples/jsm/controls/FlyControls.js +1 -1
  20. package/examples/jsm/controls/OrbitControls.js +2 -2
  21. package/examples/jsm/controls/PointerLockControls.js +2 -10
  22. package/examples/jsm/controls/TrackballControls.js +1 -1
  23. package/examples/jsm/controls/TransformControls.js +1 -1
  24. package/examples/jsm/effects/AsciiEffect.js +8 -8
  25. package/examples/jsm/exporters/DRACOExporter.js +2 -2
  26. package/examples/jsm/exporters/EXRExporter.js +1 -1
  27. package/examples/jsm/exporters/GLTFExporter.js +33 -25
  28. package/examples/jsm/exporters/KTX2Exporter.js +4 -2
  29. package/examples/jsm/exporters/PLYExporter.js +1 -1
  30. package/examples/jsm/exporters/USDZExporter.js +9 -2
  31. package/examples/jsm/geometries/DecalGeometry.js +2 -2
  32. package/examples/jsm/geometries/ParametricGeometry.js +1 -1
  33. package/examples/jsm/geometries/TeapotGeometry.js +2 -2
  34. package/examples/jsm/geometries/TextGeometry.js +3 -2
  35. package/examples/jsm/gpgpu/BitonicSort.js +715 -0
  36. package/examples/jsm/helpers/ViewHelper.js +43 -5
  37. package/examples/jsm/inspector/Inspector.js +427 -0
  38. package/examples/jsm/inspector/RendererInspector.js +415 -0
  39. package/examples/jsm/inspector/tabs/Console.js +204 -0
  40. package/examples/jsm/inspector/tabs/Parameters.js +332 -0
  41. package/examples/jsm/inspector/tabs/Performance.js +268 -0
  42. package/examples/jsm/inspector/tabs/Viewer.js +166 -0
  43. package/examples/jsm/inspector/ui/Graph.js +95 -0
  44. package/examples/jsm/inspector/ui/Item.js +170 -0
  45. package/examples/jsm/inspector/ui/List.js +75 -0
  46. package/examples/jsm/inspector/ui/Profiler.js +170 -0
  47. package/examples/jsm/inspector/ui/Style.js +654 -0
  48. package/examples/jsm/inspector/ui/Tab.js +46 -0
  49. package/examples/jsm/inspector/ui/Values.js +423 -0
  50. package/examples/jsm/inspector/ui/utils.js +56 -0
  51. package/examples/jsm/interactive/HTMLMesh.js +6 -10
  52. package/examples/jsm/interactive/InteractiveGroup.js +1 -1
  53. package/examples/jsm/interactive/SelectionBox.js +30 -0
  54. package/examples/jsm/libs/ktx-parse.module.js +1 -1
  55. package/examples/jsm/lights/RectAreaLightTexturesLib.js +1 -1
  56. package/examples/jsm/lines/Line2.js +3 -3
  57. package/examples/jsm/lines/LineGeometry.js +1 -1
  58. package/examples/jsm/lines/LineSegments2.js +2 -2
  59. package/examples/jsm/lines/Wireframe.js +2 -2
  60. package/examples/jsm/lines/WireframeGeometry2.js +1 -1
  61. package/examples/jsm/lines/webgpu/LineSegments2.js +1 -1
  62. package/examples/jsm/lines/webgpu/Wireframe.js +1 -1
  63. package/examples/jsm/loaders/3MFLoader.js +1 -1
  64. package/examples/jsm/loaders/ColladaLoader.js +3 -3
  65. package/examples/jsm/loaders/DDSLoader.js +1 -1
  66. package/examples/jsm/loaders/DRACOLoader.js +73 -22
  67. package/examples/jsm/loaders/EXRLoader.js +5 -5
  68. package/examples/jsm/loaders/FBXLoader.js +2 -2
  69. package/examples/jsm/loaders/FontLoader.js +23 -5
  70. package/examples/jsm/loaders/GLTFLoader.js +14 -8
  71. package/examples/jsm/loaders/HDRCubeTextureLoader.js +5 -5
  72. package/examples/jsm/loaders/HDRLoader.js +486 -0
  73. package/examples/jsm/loaders/KTX2Loader.js +136 -49
  74. package/examples/jsm/loaders/KTXLoader.js +2 -2
  75. package/examples/jsm/loaders/LDrawLoader.js +1 -1
  76. package/examples/jsm/loaders/LUT3dlLoader.js +2 -2
  77. package/examples/jsm/loaders/LUTCubeLoader.js +1 -1
  78. package/examples/jsm/loaders/LWOLoader.js +2 -2
  79. package/examples/jsm/loaders/MaterialXLoader.js +22 -5
  80. package/examples/jsm/loaders/OBJLoader.js +1 -1
  81. package/examples/jsm/loaders/PDBLoader.js +1 -1
  82. package/examples/jsm/loaders/RGBELoader.js +7 -473
  83. package/examples/jsm/loaders/SVGLoader.js +2 -2
  84. package/examples/jsm/loaders/TTFLoader.js +4 -4
  85. package/examples/jsm/loaders/UltraHDRLoader.js +2 -2
  86. package/examples/jsm/loaders/lwo/IFFParser.js +1 -1
  87. package/examples/jsm/materials/WoodNodeMaterial.js +533 -0
  88. package/examples/jsm/math/ColorSpaces.js +19 -1
  89. package/examples/jsm/math/ConvexHull.js +3 -3
  90. package/examples/jsm/math/ImprovedNoise.js +1 -1
  91. package/examples/jsm/math/Lut.js +2 -2
  92. package/examples/jsm/math/SimplexNoise.js +1 -1
  93. package/examples/jsm/misc/MD2CharacterComplex.js +1 -1
  94. package/examples/jsm/misc/ProgressiveLightMap.js +9 -3
  95. package/examples/jsm/misc/ProgressiveLightMapGPU.js +7 -1
  96. package/examples/jsm/misc/TubePainter.js +383 -40
  97. package/examples/jsm/misc/Volume.js +1 -1
  98. package/examples/jsm/modifiers/SimplifyModifier.js +1 -1
  99. package/examples/jsm/objects/ReflectorForSSRPass.js +1 -0
  100. package/examples/jsm/objects/Sky.js +1 -1
  101. package/examples/jsm/objects/SkyMesh.js +1 -1
  102. package/examples/jsm/objects/Water.js +3 -3
  103. package/examples/jsm/objects/WaterMesh.js +6 -6
  104. package/examples/jsm/postprocessing/GlitchPass.js +2 -2
  105. package/examples/jsm/postprocessing/OutlinePass.js +1 -1
  106. package/examples/jsm/postprocessing/SSRPass.js +37 -8
  107. package/examples/jsm/postprocessing/UnrealBloomPass.js +8 -6
  108. package/examples/jsm/renderers/CSS2DRenderer.js +16 -5
  109. package/examples/jsm/renderers/CSS3DRenderer.js +7 -6
  110. package/examples/jsm/renderers/SVGRenderer.js +1 -1
  111. package/examples/jsm/shaders/ACESFilmicToneMappingShader.js +1 -1
  112. package/examples/jsm/shaders/AfterimageShader.js +1 -1
  113. package/examples/jsm/shaders/BleachBypassShader.js +1 -1
  114. package/examples/jsm/shaders/BokehShader.js +1 -1
  115. package/examples/jsm/shaders/BokehShader2.js +1 -1
  116. package/examples/jsm/shaders/DotScreenShader.js +1 -1
  117. package/examples/jsm/shaders/FocusShader.js +1 -1
  118. package/examples/jsm/shaders/GTAOShader.js +2 -2
  119. package/examples/jsm/shaders/GodRaysShader.js +1 -1
  120. package/examples/jsm/shaders/KaleidoShader.js +1 -1
  121. package/examples/jsm/shaders/PoissonDenoiseShader.js +2 -2
  122. package/examples/jsm/shaders/SSRShader.js +1 -1
  123. package/examples/jsm/shaders/SepiaShader.js +1 -1
  124. package/examples/jsm/shaders/SubsurfaceScatteringShader.js +1 -1
  125. package/examples/jsm/shaders/TriangleBlurShader.js +1 -1
  126. package/examples/jsm/shaders/UnpackDepthRGBAShader.js +1 -1
  127. package/examples/jsm/shaders/VignetteShader.js +1 -1
  128. package/examples/jsm/transpiler/GLSLDecoder.js +22 -19
  129. package/examples/jsm/transpiler/TSLEncoder.js +9 -10
  130. package/examples/jsm/transpiler/WGSLEncoder.js +24 -0
  131. package/examples/jsm/tsl/display/AfterImageNode.js +26 -24
  132. package/examples/jsm/tsl/display/AnamorphicNode.js +28 -4
  133. package/examples/jsm/tsl/display/BloomNode.js +7 -3
  134. package/examples/jsm/tsl/display/ChromaticAberrationNode.js +2 -1
  135. package/examples/jsm/tsl/display/DenoiseNode.js +2 -0
  136. package/examples/jsm/tsl/display/DepthOfFieldNode.js +446 -90
  137. package/examples/jsm/tsl/display/GTAONode.js +53 -5
  138. package/examples/jsm/tsl/display/GaussianBlurNode.js +49 -35
  139. package/examples/jsm/tsl/display/OutlineNode.js +13 -2
  140. package/examples/jsm/tsl/display/SSGINode.js +654 -0
  141. package/examples/jsm/tsl/display/SSRNode.js +182 -65
  142. package/examples/jsm/tsl/display/SSSNode.js +488 -0
  143. package/examples/jsm/tsl/display/TRAANode.js +124 -7
  144. package/examples/jsm/tsl/display/boxBlur.js +65 -0
  145. package/examples/jsm/tsl/display/hashBlur.js +16 -18
  146. package/examples/jsm/tsl/lighting/TiledLightsNode.js +21 -1
  147. package/examples/jsm/utils/BufferGeometryUtils.js +1 -1
  148. package/examples/jsm/utils/ShadowMapViewerGPU.js +12 -5
  149. package/examples/jsm/webxr/OculusHandModel.js +1 -1
  150. package/examples/jsm/webxr/XRControllerModelFactory.js +1 -1
  151. package/examples/jsm/webxr/XRHandModelFactory.js +2 -6
  152. package/package.json +5 -10
  153. package/src/Three.Core.js +4 -2
  154. package/src/Three.TSL.js +36 -5
  155. package/src/Three.WebGPU.Nodes.js +2 -0
  156. package/src/Three.WebGPU.js +2 -0
  157. package/src/animation/AnimationClip.js +20 -4
  158. package/src/animation/AnimationMixer.js +3 -3
  159. package/src/animation/AnimationObjectGroup.js +2 -1
  160. package/src/animation/KeyframeTrack.js +7 -6
  161. package/src/animation/PropertyBinding.js +12 -11
  162. package/src/audio/Audio.js +10 -9
  163. package/src/audio/PositionalAudio.js +1 -1
  164. package/src/cameras/OrthographicCamera.js +1 -1
  165. package/src/cameras/PerspectiveCamera.js +1 -1
  166. package/src/cameras/StereoCamera.js +2 -2
  167. package/src/constants.js +11 -3
  168. package/src/core/BufferGeometry.js +10 -10
  169. package/src/core/EventDispatcher.js +1 -1
  170. package/src/core/InterleavedBuffer.js +1 -1
  171. package/src/core/InterleavedBufferAttribute.js +3 -2
  172. package/src/core/Object3D.js +3 -2
  173. package/src/core/Raycaster.js +2 -1
  174. package/src/core/RenderTarget.js +10 -1
  175. package/src/extras/Controls.js +5 -4
  176. package/src/extras/DataUtils.js +2 -1
  177. package/src/extras/Earcut.js +6 -0
  178. package/src/extras/ImageUtils.js +2 -2
  179. package/src/extras/PMREMGenerator.js +268 -55
  180. package/src/extras/TextureUtils.js +2 -1
  181. package/src/extras/core/Curve.js +2 -1
  182. package/src/extras/core/Interpolations.js +7 -1
  183. package/src/extras/core/ShapePath.js +4 -4
  184. package/src/extras/lib/earcut.js +8 -8
  185. package/src/geometries/BoxGeometry.js +1 -0
  186. package/src/geometries/CapsuleGeometry.js +1 -0
  187. package/src/geometries/CircleGeometry.js +1 -0
  188. package/src/geometries/ConeGeometry.js +1 -0
  189. package/src/geometries/CylinderGeometry.js +1 -0
  190. package/src/geometries/DodecahedronGeometry.js +1 -0
  191. package/src/geometries/ExtrudeGeometry.js +8 -6
  192. package/src/geometries/IcosahedronGeometry.js +1 -0
  193. package/src/geometries/LatheGeometry.js +1 -0
  194. package/src/geometries/OctahedronGeometry.js +1 -0
  195. package/src/geometries/PlaneGeometry.js +1 -0
  196. package/src/geometries/RingGeometry.js +1 -0
  197. package/src/geometries/ShapeGeometry.js +1 -0
  198. package/src/geometries/SphereGeometry.js +1 -0
  199. package/src/geometries/TetrahedronGeometry.js +1 -0
  200. package/src/geometries/TorusGeometry.js +1 -0
  201. package/src/geometries/TorusKnotGeometry.js +1 -0
  202. package/src/geometries/TubeGeometry.js +1 -0
  203. package/src/helpers/CameraHelper.js +1 -1
  204. package/src/lights/webgpu/ProjectorLight.js +1 -1
  205. package/src/loaders/AnimationLoader.js +2 -1
  206. package/src/loaders/AudioLoader.js +2 -1
  207. package/src/loaders/BufferGeometryLoader.js +2 -2
  208. package/src/loaders/Cache.js +2 -2
  209. package/src/loaders/DataTextureLoader.js +1 -1
  210. package/src/loaders/FileLoader.js +3 -2
  211. package/src/loaders/ImageBitmapLoader.js +5 -4
  212. package/src/loaders/ImageLoader.js +1 -1
  213. package/src/loaders/Loader.js +3 -3
  214. package/src/loaders/LoadingManager.js +25 -3
  215. package/src/loaders/MaterialLoader.js +3 -2
  216. package/src/loaders/ObjectLoader.js +13 -13
  217. package/src/loaders/TextureLoader.js +1 -1
  218. package/src/loaders/nodes/NodeLoader.js +3 -2
  219. package/src/materials/Material.js +16 -3
  220. package/src/materials/MeshBasicMaterial.js +1 -0
  221. package/src/materials/MeshDepthMaterial.js +1 -0
  222. package/src/materials/MeshDistanceMaterial.js +1 -1
  223. package/src/materials/MeshLambertMaterial.js +2 -1
  224. package/src/materials/MeshMatcapMaterial.js +22 -0
  225. package/src/materials/MeshNormalMaterial.js +1 -0
  226. package/src/materials/MeshPhongMaterial.js +2 -1
  227. package/src/materials/MeshPhysicalMaterial.js +2 -1
  228. package/src/materials/MeshStandardMaterial.js +8 -7
  229. package/src/materials/MeshToonMaterial.js +1 -0
  230. package/src/materials/PointsMaterial.js +1 -1
  231. package/src/materials/ShaderMaterial.js +2 -2
  232. package/src/materials/nodes/Line2NodeMaterial.js +2 -2
  233. package/src/materials/nodes/MeshSSSNodeMaterial.js +1 -1
  234. package/src/materials/nodes/NodeMaterial.js +62 -22
  235. package/src/materials/nodes/PointsNodeMaterial.js +81 -28
  236. package/src/materials/nodes/SpriteNodeMaterial.js +3 -15
  237. package/src/materials/nodes/manager/NodeMaterialObserver.js +3 -2
  238. package/src/math/Color.js +6 -5
  239. package/src/math/ColorManagement.js +9 -3
  240. package/src/math/Cylindrical.js +1 -1
  241. package/src/math/Euler.js +2 -1
  242. package/src/math/MathUtils.js +13 -11
  243. package/src/math/Matrix2.js +1 -1
  244. package/src/math/Matrix3.js +2 -2
  245. package/src/math/Matrix4.js +7 -7
  246. package/src/math/Plane.js +1 -1
  247. package/src/math/Quaternion.js +68 -66
  248. package/src/math/Spherical.js +1 -1
  249. package/src/nodes/Nodes.js +4 -1
  250. package/src/nodes/TSL.js +4 -1
  251. package/src/nodes/accessors/BufferNode.js +1 -1
  252. package/src/nodes/accessors/Camera.js +133 -7
  253. package/src/nodes/accessors/ClippingNode.js +6 -5
  254. package/src/nodes/accessors/CubeTextureNode.js +5 -4
  255. package/src/nodes/accessors/InstanceNode.js +25 -5
  256. package/src/nodes/accessors/Lights.js +10 -0
  257. package/src/nodes/accessors/Normal.js +5 -4
  258. package/src/nodes/accessors/Object3DNode.js +1 -1
  259. package/src/nodes/accessors/Position.js +18 -2
  260. package/src/nodes/accessors/ReferenceBaseNode.js +1 -1
  261. package/src/nodes/accessors/ReferenceNode.js +3 -2
  262. package/src/nodes/accessors/SceneNode.js +2 -1
  263. package/src/nodes/accessors/StorageBufferNode.js +2 -1
  264. package/src/nodes/accessors/StorageTextureNode.js +22 -0
  265. package/src/nodes/accessors/Texture3DNode.js +14 -1
  266. package/src/nodes/accessors/TextureNode.js +130 -44
  267. package/src/nodes/code/FunctionCallNode.js +24 -4
  268. package/src/nodes/code/FunctionNode.js +23 -0
  269. package/src/nodes/core/ArrayNode.js +1 -0
  270. package/src/nodes/core/AssignNode.js +4 -3
  271. package/src/nodes/core/AttributeNode.js +2 -1
  272. package/src/nodes/core/ContextNode.js +29 -10
  273. package/src/nodes/core/IndexNode.js +2 -2
  274. package/src/nodes/core/InputNode.js +2 -1
  275. package/src/nodes/core/InspectorNode.js +128 -0
  276. package/src/nodes/core/{CacheNode.js → IsolateNode.js} +40 -7
  277. package/src/nodes/core/Node.js +152 -31
  278. package/src/nodes/core/NodeBuilder.js +183 -35
  279. package/src/nodes/core/NodeFrame.js +21 -21
  280. package/src/nodes/core/NodeFunction.js +2 -1
  281. package/src/nodes/core/NodeParser.js +2 -1
  282. package/src/nodes/core/NodeUniform.js +1 -1
  283. package/src/nodes/core/NodeUtils.js +17 -91
  284. package/src/nodes/core/ParameterNode.js +31 -0
  285. package/src/nodes/core/PropertyNode.js +7 -0
  286. package/src/nodes/core/StackNode.js +43 -16
  287. package/src/nodes/core/StructNode.js +5 -5
  288. package/src/nodes/core/StructTypeNode.js +1 -0
  289. package/src/nodes/core/SubBuildNode.js +2 -2
  290. package/src/nodes/core/UniformNode.js +18 -10
  291. package/src/nodes/core/VarNode.js +70 -33
  292. package/src/nodes/core/VaryingNode.js +3 -2
  293. package/src/nodes/display/BlendModes.js +5 -4
  294. package/src/nodes/display/BumpMapNode.js +1 -1
  295. package/src/nodes/display/ColorAdjustment.js +1 -1
  296. package/src/nodes/display/FrontFacingNode.js +4 -8
  297. package/src/nodes/display/NormalMapNode.js +2 -1
  298. package/src/nodes/display/PassNode.js +52 -11
  299. package/src/nodes/display/RenderOutputNode.js +28 -2
  300. package/src/nodes/display/ScreenNode.js +44 -14
  301. package/src/nodes/display/ToneMappingNode.js +31 -4
  302. package/src/nodes/display/ToonOutlinePassNode.js +8 -0
  303. package/src/nodes/display/ViewportDepthTextureNode.js +16 -4
  304. package/src/nodes/display/ViewportSharedTextureNode.js +12 -0
  305. package/src/nodes/display/ViewportTextureNode.js +42 -12
  306. package/src/nodes/fog/Fog.js +3 -2
  307. package/src/nodes/functions/BSDF/BRDF_GGX_Multiscatter.js +52 -0
  308. package/src/nodes/functions/BSDF/DFGApprox.js +60 -19
  309. package/src/nodes/functions/BasicLightingModel.js +2 -1
  310. package/src/nodes/functions/PhysicalLightingModel.js +3 -2
  311. package/src/nodes/functions/VolumetricLightingModel.js +5 -5
  312. package/src/nodes/geometry/RangeNode.js +40 -4
  313. package/src/nodes/gpgpu/ComputeBuiltinNode.js +2 -1
  314. package/src/nodes/gpgpu/ComputeNode.js +17 -5
  315. package/src/nodes/gpgpu/SubgroupFunctionNode.js +455 -0
  316. package/src/nodes/gpgpu/WorkgroupInfoNode.js +2 -1
  317. package/src/nodes/lighting/EnvironmentNode.js +6 -6
  318. package/src/nodes/lighting/LightsNode.js +3 -4
  319. package/src/nodes/lighting/PointShadowNode.js +6 -0
  320. package/src/nodes/lighting/ShadowFilterNode.js +2 -0
  321. package/src/nodes/lighting/ShadowNode.js +75 -8
  322. package/src/nodes/math/BitcastNode.js +156 -0
  323. package/src/nodes/math/ConditionalNode.js +24 -7
  324. package/src/nodes/math/MathNode.js +25 -19
  325. package/src/nodes/math/OperatorNode.js +7 -5
  326. package/src/nodes/pmrem/PMREMUtils.js +117 -2
  327. package/src/nodes/shapes/Shapes.js +1 -1
  328. package/src/nodes/tsl/TSLBase.js +5 -2
  329. package/src/nodes/tsl/TSLCore.js +460 -159
  330. package/src/nodes/utils/DebugNode.js +2 -1
  331. package/src/nodes/utils/EventNode.js +36 -0
  332. package/src/nodes/utils/FunctionOverloadingNode.js +37 -19
  333. package/src/nodes/utils/JoinNode.js +6 -3
  334. package/src/nodes/utils/LoopNode.js +20 -24
  335. package/src/nodes/utils/MemberNode.js +59 -7
  336. package/src/nodes/utils/PostProcessingUtils.js +28 -1
  337. package/src/nodes/utils/RTTNode.js +13 -3
  338. package/src/nodes/utils/ReflectorNode.js +58 -7
  339. package/src/nodes/utils/SampleNode.js +12 -2
  340. package/src/nodes/utils/SplitNode.js +11 -0
  341. package/src/nodes/utils/Timer.js +0 -47
  342. package/src/objects/BatchedMesh.js +2 -2
  343. package/src/objects/LOD.js +1 -1
  344. package/src/objects/Line.js +2 -1
  345. package/src/objects/LineSegments.js +2 -1
  346. package/src/objects/Skeleton.js +3 -2
  347. package/src/objects/SkinnedMesh.js +3 -1
  348. package/src/objects/Sprite.js +4 -3
  349. package/src/renderers/WebGLRenderer.js +48 -41
  350. package/src/renderers/common/Animation.js +13 -1
  351. package/src/renderers/common/Attributes.js +1 -1
  352. package/src/renderers/common/Backend.js +108 -27
  353. package/src/renderers/common/Background.js +2 -1
  354. package/src/renderers/common/Bindings.js +58 -2
  355. package/src/renderers/common/CanvasTarget.js +341 -0
  356. package/src/renderers/common/ChainMap.js +1 -1
  357. package/src/renderers/common/DataMap.js +1 -1
  358. package/src/renderers/common/Geometries.js +26 -0
  359. package/src/renderers/common/Info.js +4 -2
  360. package/src/renderers/common/InspectorBase.js +146 -0
  361. package/src/renderers/common/Pipelines.js +1 -1
  362. package/src/renderers/common/PostProcessing.js +6 -25
  363. package/src/renderers/common/QuadMesh.js +7 -1
  364. package/src/renderers/common/RenderContext.js +2 -2
  365. package/src/renderers/common/RenderList.js +7 -3
  366. package/src/renderers/common/RenderObject.js +16 -2
  367. package/src/renderers/common/RenderObjects.js +1 -1
  368. package/src/renderers/common/Renderer.js +473 -245
  369. package/src/renderers/common/RendererUtils.js +9 -0
  370. package/src/renderers/common/SampledTexture.js +9 -1
  371. package/src/renderers/common/Sampler.js +50 -12
  372. package/src/renderers/common/StorageTexture.js +9 -1
  373. package/src/renderers/common/Textures.js +121 -45
  374. package/src/renderers/common/TimestampQueryPool.js +65 -3
  375. package/src/renderers/common/UniformsGroup.js +2 -1
  376. package/src/renderers/common/XRManager.js +42 -22
  377. package/src/renderers/common/extras/PMREMGenerator.js +160 -65
  378. package/src/renderers/common/nodes/NodeBuilderState.js +1 -1
  379. package/src/renderers/common/nodes/NodeLibrary.js +9 -7
  380. package/src/renderers/common/nodes/NodeSampler.js +13 -1
  381. package/src/renderers/common/nodes/Nodes.js +38 -16
  382. package/src/renderers/shaders/DFGLUTData.js +64 -0
  383. package/src/renderers/shaders/ShaderChunk/common.glsl.js +0 -12
  384. package/src/renderers/shaders/ShaderChunk/envmap_common_pars_fragment.glsl.js +1 -1
  385. package/src/renderers/shaders/ShaderChunk/envmap_physical_pars_fragment.glsl.js +1 -1
  386. package/src/renderers/shaders/ShaderChunk/lights_physical_pars_fragment.glsl.js +52 -18
  387. package/src/renderers/shaders/ShaderChunk/logdepthbuf_fragment.glsl.js +1 -1
  388. package/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_fragment.glsl.js +1 -1
  389. package/src/renderers/shaders/ShaderChunk/logdepthbuf_pars_vertex.glsl.js +1 -1
  390. package/src/renderers/shaders/ShaderChunk/logdepthbuf_vertex.glsl.js +1 -1
  391. package/src/renderers/shaders/ShaderChunk/shadowmap_pars_fragment.glsl.js +7 -15
  392. package/src/renderers/shaders/ShaderLib/depth.glsl.js +1 -1
  393. package/src/renderers/shaders/UniformsLib.js +1 -0
  394. package/src/renderers/shaders/UniformsUtils.js +25 -4
  395. package/src/renderers/webgl/WebGLCapabilities.js +2 -1
  396. package/src/renderers/webgl/WebGLExtensions.js +2 -25
  397. package/src/renderers/webgl/WebGLInfo.js +3 -1
  398. package/src/renderers/webgl/WebGLProgram.js +15 -14
  399. package/src/renderers/webgl/WebGLPrograms.js +2 -1
  400. package/src/renderers/webgl/WebGLShadowMap.js +3 -2
  401. package/src/renderers/webgl/WebGLState.js +15 -14
  402. package/src/renderers/webgl/WebGLTextures.js +19 -14
  403. package/src/renderers/webgl/WebGLUniformsGroups.js +5 -3
  404. package/src/renderers/webgl/WebGLUtils.js +3 -2
  405. package/src/renderers/webgl-fallback/WebGLBackend.js +199 -167
  406. package/src/renderers/webgl-fallback/nodes/GLSLNodeBuilder.js +181 -25
  407. package/src/renderers/webgl-fallback/utils/WebGLConstants.js +2 -3
  408. package/src/renderers/webgl-fallback/utils/WebGLState.js +7 -6
  409. package/src/renderers/webgl-fallback/utils/WebGLTextureUtils.js +169 -19
  410. package/src/renderers/webgl-fallback/utils/WebGLTimestampQueryPool.js +51 -22
  411. package/src/renderers/webgl-fallback/utils/WebGLUtils.js +3 -2
  412. package/src/renderers/webgpu/WebGPUBackend.js +153 -123
  413. package/src/renderers/webgpu/WebGPURenderer.Nodes.js +2 -1
  414. package/src/renderers/webgpu/WebGPURenderer.js +3 -2
  415. package/src/renderers/webgpu/nodes/WGSLNodeBuilder.js +142 -50
  416. package/src/renderers/webgpu/utils/WebGPUAttributeUtils.js +2 -1
  417. package/src/renderers/webgpu/utils/WebGPUBindingUtils.js +5 -3
  418. package/src/renderers/webgpu/utils/WebGPUConstants.js +7 -2
  419. package/src/renderers/webgpu/utils/WebGPUPipelineUtils.js +53 -34
  420. package/src/renderers/webgpu/utils/WebGPUTexturePassUtils.js +6 -8
  421. package/src/renderers/webgpu/utils/WebGPUTextureUtils.js +260 -99
  422. package/src/renderers/webgpu/utils/WebGPUTimestampQueryPool.js +32 -9
  423. package/src/renderers/webgpu/utils/WebGPUUtils.js +22 -2
  424. package/src/renderers/webxr/WebXRManager.js +42 -26
  425. package/src/textures/ExternalTexture.js +15 -4
  426. package/src/textures/Source.js +3 -2
  427. package/src/textures/Texture.js +3 -2
  428. package/src/textures/VideoTexture.js +2 -3
  429. package/src/utils.js +67 -3
  430. package/examples/jsm/loaders/RGBMLoader.js +0 -1148
@@ -29,6 +29,8 @@ const PCFShadowFilter = TSL.PCFShadowFilter;
29
29
  const PCFSoftShadowFilter = TSL.PCFSoftShadowFilter;
30
30
  const PI = TSL.PI;
31
31
  const PI2 = TSL.PI2;
32
+ const TWO_PI = TSL.TWO_PI;
33
+ const HALF_PI = TSL.HALF_PI;
32
34
  const PointShadowFilter = TSL.PointShadowFilter;
33
35
  const Return = TSL.Return;
34
36
  const Schlick_to_F0 = TSL.Schlick_to_F0;
@@ -102,6 +104,7 @@ const buffer = TSL.buffer;
102
104
  const bufferAttribute = TSL.bufferAttribute;
103
105
  const bumpMap = TSL.bumpMap;
104
106
  const burn = TSL.burn;
107
+ const builtin = TSL.builtin;
105
108
  const bvec2 = TSL.bvec2;
106
109
  const bvec3 = TSL.bvec3;
107
110
  const bvec4 = TSL.bvec4;
@@ -116,6 +119,7 @@ const cameraPosition = TSL.cameraPosition;
116
119
  const cameraProjectionMatrix = TSL.cameraProjectionMatrix;
117
120
  const cameraProjectionMatrixInverse = TSL.cameraProjectionMatrixInverse;
118
121
  const cameraViewMatrix = TSL.cameraViewMatrix;
122
+ const cameraViewport = TSL.cameraViewport;
119
123
  const cameraWorldMatrix = TSL.cameraWorldMatrix;
120
124
  const cbrt = TSL.cbrt;
121
125
  const cdl = TSL.cdl;
@@ -182,6 +186,8 @@ const faceDirection = TSL.faceDirection;
182
186
  const faceForward = TSL.faceForward;
183
187
  const faceforward = TSL.faceforward;
184
188
  const float = TSL.float;
189
+ const floatBitsToInt = TSL.floatBitsToInt;
190
+ const floatBitsToUint = TSL.floatBitsToUint;
185
191
  const floor = TSL.floor;
186
192
  const fog = TSL.fog;
187
193
  const fract = TSL.fract;
@@ -197,6 +203,7 @@ const getDirection = TSL.getDirection;
197
203
  const getDistanceAttenuation = TSL.getDistanceAttenuation;
198
204
  const getGeometryRoughness = TSL.getGeometryRoughness;
199
205
  const getNormalFromDepth = TSL.getNormalFromDepth;
206
+ const interleavedGradientNoise = TSL.interleavedGradientNoise;
200
207
  const getParallaxCorrectNormal = TSL.getParallaxCorrectNormal;
201
208
  const getRoughness = TSL.getRoughness;
202
209
  const getScreenPosition = TSL.getScreenPosition;
@@ -224,6 +231,7 @@ const instancedBufferAttribute = TSL.instancedBufferAttribute;
224
231
  const instancedDynamicBufferAttribute = TSL.instancedDynamicBufferAttribute;
225
232
  const instancedMesh = TSL.instancedMesh;
226
233
  const int = TSL.int;
234
+ const intBitsToFloat = TSL.intBitsToFloat;
227
235
  const inverse = TSL.inverse;
228
236
  const inverseSqrt = TSL.inverseSqrt;
229
237
  const inversesqrt = TSL.inversesqrt;
@@ -396,6 +404,8 @@ const objectRadius = TSL.objectRadius;
396
404
  const objectScale = TSL.objectScale;
397
405
  const objectViewPosition = TSL.objectViewPosition;
398
406
  const objectWorldMatrix = TSL.objectWorldMatrix;
407
+ const OnBeforeObjectUpdate = TSL.OnBeforeObjectUpdate;
408
+ const OnBeforeMaterialUpdate = TSL.OnBeforeMaterialUpdate;
399
409
  const OnObjectUpdate = TSL.OnObjectUpdate;
400
410
  const OnMaterialUpdate = TSL.OnMaterialUpdate;
401
411
  const oneMinus = TSL.oneMinus;
@@ -470,6 +480,7 @@ const saturate = TSL.saturate;
470
480
  const saturation = TSL.saturation;
471
481
  const screen = TSL.screen;
472
482
  const screenCoordinate = TSL.screenCoordinate;
483
+ const screenDPR = TSL.screenDPR;
473
484
  const screenSize = TSL.screenSize;
474
485
  const screenUV = TSL.screenUV;
475
486
  const scriptable = TSL.scriptable;
@@ -509,15 +520,35 @@ const storageTexture = TSL.storageTexture;
509
520
  const string = TSL.string;
510
521
  const struct = TSL.struct;
511
522
  const sub = TSL.sub;
523
+ const subgroupAdd = TSL.subgroupAdd;
524
+ const subgroupAll = TSL.subgroupAll;
525
+ const subgroupAnd = TSL.subgroupAnd;
526
+ const subgroupAny = TSL.subgroupAny;
527
+ const subgroupBallot = TSL.subgroupBallot;
528
+ const subgroupBroadcast = TSL.subgroupBroadcast;
529
+ const subgroupBroadcastFirst = TSL.subgroupBroadcastFirst;
512
530
  const subBuild = TSL.subBuild;
531
+ const subgroupElect = TSL.subgroupElect;
532
+ const subgroupExclusiveAdd = TSL.subgroupExclusiveAdd;
533
+ const subgroupExclusiveMul = TSL.subgroupExclusiveMul;
534
+ const subgroupInclusiveAdd = TSL.subgroupInclusiveAdd;
535
+ const subgroupInclusiveMul = TSL.subgroupInclusiveMul;
513
536
  const subgroupIndex = TSL.subgroupIndex;
537
+ const subgroupMax = TSL.subgroupMax;
538
+ const subgroupMin = TSL.subgroupMin;
539
+ const subgroupMul = TSL.subgroupMul;
540
+ const subgroupOr = TSL.subgroupOr;
541
+ const subgroupShuffle = TSL.subgroupShuffle;
542
+ const subgroupShuffleDown = TSL.subgroupShuffleDown;
543
+ const subgroupShuffleUp = TSL.subgroupShuffleUp;
544
+ const subgroupShuffleXor = TSL.subgroupShuffleXor;
514
545
  const subgroupSize = TSL.subgroupSize;
546
+ const subgroupXor = TSL.subgroupXor;
515
547
  const tan = TSL.tan;
516
548
  const tangentGeometry = TSL.tangentGeometry;
517
549
  const tangentLocal = TSL.tangentLocal;
518
550
  const tangentView = TSL.tangentView;
519
551
  const tangentWorld = TSL.tangentWorld;
520
- const temp = TSL.temp;
521
552
  const texture = TSL.texture;
522
553
  const texture3D = TSL.texture3D;
523
554
  const textureBarrier = TSL.textureBarrier;
@@ -526,12 +557,10 @@ const textureBicubicLevel = TSL.textureBicubicLevel;
526
557
  const textureCubeUV = TSL.textureCubeUV;
527
558
  const textureLoad = TSL.textureLoad;
528
559
  const textureSize = TSL.textureSize;
560
+ const textureLevel = TSL.textureLevel;
529
561
  const textureStore = TSL.textureStore;
530
562
  const thickness = TSL.thickness;
531
563
  const time = TSL.time;
532
- const timerDelta = TSL.timerDelta;
533
- const timerGlobal = TSL.timerGlobal;
534
- const timerLocal = TSL.timerLocal;
535
564
  const toneMapping = TSL.toneMapping;
536
565
  const toneMappingExposure = TSL.toneMappingExposure;
537
566
  const toonOutlinePass = TSL.toonOutlinePass;
@@ -548,10 +577,12 @@ const triplanarTexture = TSL.triplanarTexture;
548
577
  const triplanarTextures = TSL.triplanarTextures;
549
578
  const trunc = TSL.trunc;
550
579
  const uint = TSL.uint;
580
+ const uintBitsToFloat = TSL.uintBitsToFloat;
551
581
  const uniform = TSL.uniform;
552
582
  const uniformArray = TSL.uniformArray;
553
583
  const uniformCubeTexture = TSL.uniformCubeTexture;
554
584
  const uniformGroup = TSL.uniformGroup;
585
+ const uniformFlow = TSL.uniformFlow;
555
586
  const uniformTexture = TSL.uniformTexture;
556
587
  const unpremultiplyAlpha = TSL.unpremultiplyAlpha;
557
588
  const userData = TSL.userData;
@@ -603,7 +634,7 @@ for ( const key of Object.keys( THREE.TSL ) ) {
603
634
 
604
635
  }
605
636
 
606
- console.log( code );
637
+ log( code );
607
638
  //*/
608
639
 
609
- export { BRDF_GGX, BRDF_Lambert, BasicPointShadowFilter, BasicShadowFilter, Break, Const, Continue, DFGApprox, D_GGX, Discard, EPSILON, F_Schlick, Fn, INFINITY, If, Loop, NodeAccess, NodeShaderStage, NodeType, NodeUpdateType, OnMaterialUpdate, OnObjectUpdate, PCFShadowFilter, PCFSoftShadowFilter, PI, PI2, PointShadowFilter, Return, Schlick_to_F0, ScriptableNodeResources, ShaderNode, Stack, Switch, TBNViewMatrix, VSMShadowFilter, V_GGX_SmithCorrelated, Var, VarIntent, abs, acesFilmicToneMapping, acos, add, addMethodChaining, addNodeElement, agxToneMapping, all, alphaT, and, anisotropy, anisotropyB, anisotropyT, any, append, array, arrayBuffer, asin, assign, atan, atan2, atomicAdd, atomicAnd, atomicFunc, atomicLoad, atomicMax, atomicMin, atomicOr, atomicStore, atomicSub, atomicXor, attenuationColor, attenuationDistance, attribute, attributeArray, backgroundBlurriness, backgroundIntensity, backgroundRotation, batch, bentNormalView, billboarding, bitAnd, bitNot, bitOr, bitXor, bitangentGeometry, bitangentLocal, bitangentView, bitangentWorld, bitcast, blendBurn, blendColor, blendDodge, blendOverlay, blendScreen, blur, bool, buffer, bufferAttribute, bumpMap, burn, bvec2, bvec3, bvec4, bypass, cache, call, cameraFar, cameraIndex, cameraNear, cameraNormalMatrix, cameraPosition, cameraProjectionMatrix, cameraProjectionMatrixInverse, cameraViewMatrix, cameraWorldMatrix, cbrt, cdl, ceil, checker, cineonToneMapping, clamp, clearcoat, clearcoatNormalView, clearcoatRoughness, code, color, colorSpaceToWorking, colorToDirection, compute, computeKernel, computeSkinning, context, convert, convertColorSpace, convertToTexture, cos, cross, cubeTexture, cubeTextureBase, cubeToUV, dFdx, dFdy, dashSize, debug, decrement, decrementBefore, defaultBuildStages, defaultShaderStages, defined, degrees, deltaTime, densityFog, densityFogFactor, depth, depthPass, determinant, difference, diffuseColor, directPointLight, directionToColor, directionToFaceDirection, dispersion, distance, div, dodge, dot, drawIndex, dynamicBufferAttribute, element, emissive, equal, equals, equirectUV, exp, exp2, expression, faceDirection, faceForward, faceforward, float, floor, fog, fract, frameGroup, frameId, frontFacing, fwidth, gain, gapSize, getConstNodeType, getCurrentStack, getDirection, getDistanceAttenuation, getGeometryRoughness, getNormalFromDepth, getParallaxCorrectNormal, getRoughness, getScreenPosition, getShIrradianceAt, getShadowMaterial, getShadowRenderObjectFunction, getTextureIndex, getViewPosition, globalId, glsl, glslFn, grayscale, greaterThan, greaterThanEqual, hash, highpModelNormalViewMatrix, highpModelViewMatrix, hue, increment, incrementBefore, instance, instanceIndex, instancedArray, instancedBufferAttribute, instancedDynamicBufferAttribute, instancedMesh, int, inverse, inverseSqrt, inversesqrt, invocationLocalIndex, invocationSubgroupIndex, ior, iridescence, iridescenceIOR, iridescenceThickness, ivec2, ivec3, ivec4, js, label, length, lengthSq, lessThan, lessThanEqual, lightPosition, lightProjectionUV, lightShadowMatrix, lightTargetDirection, lightTargetPosition, lightViewPosition, lightingContext, lights, linearDepth, linearToneMapping, localId, log, log2, logarithmicDepthToViewZ, luminance, mat2, mat3, mat4, matcapUV, materialAO, materialAlphaTest, materialAnisotropy, materialAnisotropyVector, materialAttenuationColor, materialAttenuationDistance, materialClearcoat, materialClearcoatNormal, materialClearcoatRoughness, materialColor, materialDispersion, materialEmissive, materialEnvIntensity, materialEnvRotation, materialIOR, materialIridescence, materialIridescenceIOR, materialIridescenceThickness, materialLightMap, materialLineDashOffset, materialLineDashSize, materialLineGapSize, materialLineScale, materialLineWidth, materialMetalness, materialNormal, materialOpacity, materialPointSize, materialReference, materialReflectivity, materialRefractionRatio, materialRotation, materialRoughness, materialSheen, materialSheenRoughness, materialShininess, materialSpecular, materialSpecularColor, materialSpecularIntensity, materialSpecularStrength, materialThickness, materialTransmission, max, maxMipLevel, mediumpModelViewMatrix, metalness, min, mix, mixElement, mod, modInt, modelDirection, modelNormalMatrix, modelPosition, modelRadius, modelScale, modelViewMatrix, modelViewPosition, modelViewProjection, modelWorldMatrix, modelWorldMatrixInverse, morphReference, mrt, mul, mx_aastep, mx_add, mx_atan2, mx_cell_noise_float, mx_contrast, mx_divide, mx_fractal_noise_float, mx_fractal_noise_vec2, mx_fractal_noise_vec3, mx_fractal_noise_vec4, mx_frame, mx_heighttonormal, mx_hsvtorgb, mx_ifequal, mx_ifgreater, mx_ifgreatereq, mx_invert, mx_modulo, mx_multiply, mx_noise_float, mx_noise_vec3, mx_noise_vec4, mx_place2d, mx_power, mx_ramp4, mx_ramplr, mx_ramptb, mx_rgbtohsv, mx_rotate2d, mx_rotate3d, mx_safepower, mx_separate, mx_splitlr, mx_splittb, mx_srgb_texture_to_lin_rec709, mx_subtract, mx_timer, mx_transform_uv, mx_unifiednoise2d, mx_unifiednoise3d, mx_worley_noise_float, mx_worley_noise_vec2, mx_worley_noise_vec3, negate, neutralToneMapping, nodeArray, nodeImmutable, nodeObject, nodeObjectIntent, nodeObjects, nodeProxy, nodeProxyIntent, normalFlat, normalGeometry, normalLocal, normalMap, normalView, normalViewGeometry, normalWorld, normalWorldGeometry, normalize, not, notEqual, numWorkgroups, objectDirection, objectGroup, objectPosition, objectRadius, objectScale, objectViewPosition, objectWorldMatrix, oneMinus, or, orthographicDepthToViewZ, oscSawtooth, oscSine, oscSquare, oscTriangle, output, outputStruct, overlay, overloadingFn, parabola, parallaxDirection, parallaxUV, parameter, pass, passTexture, pcurve, perspectiveDepthToViewZ, pmremTexture, pointShadow, pointUV, pointWidth, positionGeometry, positionLocal, positionPrevious, positionView, positionViewDirection, positionWorld, positionWorldDirection, posterize, pow, pow2, pow3, pow4, premultiplyAlpha, property, radians, rand, range, rangeFog, rangeFogFactor, reciprocal, reference, referenceBuffer, reflect, reflectVector, reflectView, reflector, refract, refractVector, refractView, reinhardToneMapping, remap, remapClamp, renderGroup, renderOutput, rendererReference, rotate, rotateUV, roughness, round, rtt, sRGBTransferEOTF, sRGBTransferOETF, sample, sampler, samplerComparison, saturate, saturation, screen, screenCoordinate, screenSize, screenUV, scriptable, scriptableValue, select, setCurrentStack, setName, shaderStages, shadow, shadowPositionWorld, shapeCircle, sharedUniformGroup, sheen, sheenRoughness, shiftLeft, shiftRight, shininess, sign, sin, sinc, skinning, smoothstep, smoothstepElement, specularColor, specularF90, spherizeUV, split, spritesheetUV, sqrt, stack, step, stepElement, storage, storageBarrier, storageObject, storageTexture, string, struct, sub, subBuild, subgroupIndex, subgroupSize, tan, tangentGeometry, tangentLocal, tangentView, tangentWorld, temp, texture, texture3D, textureBarrier, textureBicubic, textureBicubicLevel, textureCubeUV, textureLoad, textureSize, textureStore, thickness, time, timerDelta, timerGlobal, timerLocal, toneMapping, toneMappingExposure, toonOutlinePass, transformDirection, transformNormal, transformNormalToView, transformedClearcoatNormalView, transformedNormalView, transformedNormalWorld, transmission, transpose, triNoise3D, triplanarTexture, triplanarTextures, trunc, uint, uniform, uniformArray, uniformCubeTexture, uniformGroup, uniformTexture, unpremultiplyAlpha, userData, uv, uvec2, uvec3, uvec4, varying, varyingProperty, vec2, vec3, vec4, vectorComponents, velocity, vertexColor, vertexIndex, vertexStage, vibrance, viewZToLogarithmicDepth, viewZToOrthographicDepth, viewZToPerspectiveDepth, viewport, viewportCoordinate, viewportDepthTexture, viewportLinearDepth, viewportMipTexture, viewportResolution, viewportSafeUV, viewportSharedTexture, viewportSize, viewportTexture, viewportUV, wgsl, wgslFn, workgroupArray, workgroupBarrier, workgroupId, workingToColorSpace, xor };
640
+ export { BRDF_GGX, BRDF_Lambert, BasicPointShadowFilter, BasicShadowFilter, Break, Const, Continue, DFGApprox, D_GGX, Discard, EPSILON, F_Schlick, Fn, HALF_PI, INFINITY, If, Loop, NodeAccess, NodeShaderStage, NodeType, NodeUpdateType, OnBeforeMaterialUpdate, OnBeforeObjectUpdate, OnMaterialUpdate, OnObjectUpdate, PCFShadowFilter, PCFSoftShadowFilter, PI, PI2, PointShadowFilter, Return, Schlick_to_F0, ScriptableNodeResources, ShaderNode, Stack, Switch, TBNViewMatrix, TWO_PI, VSMShadowFilter, V_GGX_SmithCorrelated, Var, VarIntent, abs, acesFilmicToneMapping, acos, add, addMethodChaining, addNodeElement, agxToneMapping, all, alphaT, and, anisotropy, anisotropyB, anisotropyT, any, append, array, arrayBuffer, asin, assign, atan, atan2, atomicAdd, atomicAnd, atomicFunc, atomicLoad, atomicMax, atomicMin, atomicOr, atomicStore, atomicSub, atomicXor, attenuationColor, attenuationDistance, attribute, attributeArray, backgroundBlurriness, backgroundIntensity, backgroundRotation, batch, bentNormalView, billboarding, bitAnd, bitNot, bitOr, bitXor, bitangentGeometry, bitangentLocal, bitangentView, bitangentWorld, bitcast, blendBurn, blendColor, blendDodge, blendOverlay, blendScreen, blur, bool, buffer, bufferAttribute, builtin, bumpMap, burn, bvec2, bvec3, bvec4, bypass, cache, call, cameraFar, cameraIndex, cameraNear, cameraNormalMatrix, cameraPosition, cameraProjectionMatrix, cameraProjectionMatrixInverse, cameraViewMatrix, cameraViewport, cameraWorldMatrix, cbrt, cdl, ceil, checker, cineonToneMapping, clamp, clearcoat, clearcoatNormalView, clearcoatRoughness, code, color, colorSpaceToWorking, colorToDirection, compute, computeKernel, computeSkinning, context, convert, convertColorSpace, convertToTexture, cos, cross, cubeTexture, cubeTextureBase, cubeToUV, dFdx, dFdy, dashSize, debug, decrement, decrementBefore, defaultBuildStages, defaultShaderStages, defined, degrees, deltaTime, densityFog, densityFogFactor, depth, depthPass, determinant, difference, diffuseColor, directPointLight, directionToColor, directionToFaceDirection, dispersion, distance, div, dodge, dot, drawIndex, dynamicBufferAttribute, element, emissive, equal, equals, equirectUV, exp, exp2, expression, faceDirection, faceForward, faceforward, float, floatBitsToInt, floatBitsToUint, floor, fog, fract, frameGroup, frameId, frontFacing, fwidth, gain, gapSize, getConstNodeType, getCurrentStack, getDirection, getDistanceAttenuation, getGeometryRoughness, getNormalFromDepth, getParallaxCorrectNormal, getRoughness, getScreenPosition, getShIrradianceAt, getShadowMaterial, getShadowRenderObjectFunction, getTextureIndex, getViewPosition, globalId, glsl, glslFn, grayscale, greaterThan, greaterThanEqual, hash, highpModelNormalViewMatrix, highpModelViewMatrix, hue, increment, incrementBefore, instance, instanceIndex, instancedArray, instancedBufferAttribute, instancedDynamicBufferAttribute, instancedMesh, int, intBitsToFloat, interleavedGradientNoise, inverse, inverseSqrt, inversesqrt, invocationLocalIndex, invocationSubgroupIndex, ior, iridescence, iridescenceIOR, iridescenceThickness, ivec2, ivec3, ivec4, js, label, length, lengthSq, lessThan, lessThanEqual, lightPosition, lightProjectionUV, lightShadowMatrix, lightTargetDirection, lightTargetPosition, lightViewPosition, lightingContext, lights, linearDepth, linearToneMapping, localId, log, log2, logarithmicDepthToViewZ, luminance, mat2, mat3, mat4, matcapUV, materialAO, materialAlphaTest, materialAnisotropy, materialAnisotropyVector, materialAttenuationColor, materialAttenuationDistance, materialClearcoat, materialClearcoatNormal, materialClearcoatRoughness, materialColor, materialDispersion, materialEmissive, materialEnvIntensity, materialEnvRotation, materialIOR, materialIridescence, materialIridescenceIOR, materialIridescenceThickness, materialLightMap, materialLineDashOffset, materialLineDashSize, materialLineGapSize, materialLineScale, materialLineWidth, materialMetalness, materialNormal, materialOpacity, materialPointSize, materialReference, materialReflectivity, materialRefractionRatio, materialRotation, materialRoughness, materialSheen, materialSheenRoughness, materialShininess, materialSpecular, materialSpecularColor, materialSpecularIntensity, materialSpecularStrength, materialThickness, materialTransmission, max, maxMipLevel, mediumpModelViewMatrix, metalness, min, mix, mixElement, mod, modInt, modelDirection, modelNormalMatrix, modelPosition, modelRadius, modelScale, modelViewMatrix, modelViewPosition, modelViewProjection, modelWorldMatrix, modelWorldMatrixInverse, morphReference, mrt, mul, mx_aastep, mx_add, mx_atan2, mx_cell_noise_float, mx_contrast, mx_divide, mx_fractal_noise_float, mx_fractal_noise_vec2, mx_fractal_noise_vec3, mx_fractal_noise_vec4, mx_frame, mx_heighttonormal, mx_hsvtorgb, mx_ifequal, mx_ifgreater, mx_ifgreatereq, mx_invert, mx_modulo, mx_multiply, mx_noise_float, mx_noise_vec3, mx_noise_vec4, mx_place2d, mx_power, mx_ramp4, mx_ramplr, mx_ramptb, mx_rgbtohsv, mx_rotate2d, mx_rotate3d, mx_safepower, mx_separate, mx_splitlr, mx_splittb, mx_srgb_texture_to_lin_rec709, mx_subtract, mx_timer, mx_transform_uv, mx_unifiednoise2d, mx_unifiednoise3d, mx_worley_noise_float, mx_worley_noise_vec2, mx_worley_noise_vec3, negate, neutralToneMapping, nodeArray, nodeImmutable, nodeObject, nodeObjectIntent, nodeObjects, nodeProxy, nodeProxyIntent, normalFlat, normalGeometry, normalLocal, normalMap, normalView, normalViewGeometry, normalWorld, normalWorldGeometry, normalize, not, notEqual, numWorkgroups, objectDirection, objectGroup, objectPosition, objectRadius, objectScale, objectViewPosition, objectWorldMatrix, oneMinus, or, orthographicDepthToViewZ, oscSawtooth, oscSine, oscSquare, oscTriangle, output, outputStruct, overlay, overloadingFn, parabola, parallaxDirection, parallaxUV, parameter, pass, passTexture, pcurve, perspectiveDepthToViewZ, pmremTexture, pointShadow, pointUV, pointWidth, positionGeometry, positionLocal, positionPrevious, positionView, positionViewDirection, positionWorld, positionWorldDirection, posterize, pow, pow2, pow3, pow4, premultiplyAlpha, property, radians, rand, range, rangeFog, rangeFogFactor, reciprocal, reference, referenceBuffer, reflect, reflectVector, reflectView, reflector, refract, refractVector, refractView, reinhardToneMapping, remap, remapClamp, renderGroup, renderOutput, rendererReference, rotate, rotateUV, roughness, round, rtt, sRGBTransferEOTF, sRGBTransferOETF, sample, sampler, samplerComparison, saturate, saturation, screen, screenCoordinate, screenDPR, screenSize, screenUV, scriptable, scriptableValue, select, setCurrentStack, setName, shaderStages, shadow, shadowPositionWorld, shapeCircle, sharedUniformGroup, sheen, sheenRoughness, shiftLeft, shiftRight, shininess, sign, sin, sinc, skinning, smoothstep, smoothstepElement, specularColor, specularF90, spherizeUV, split, spritesheetUV, sqrt, stack, step, stepElement, storage, storageBarrier, storageObject, storageTexture, string, struct, sub, subBuild, subgroupAdd, subgroupAll, subgroupAnd, subgroupAny, subgroupBallot, subgroupBroadcast, subgroupBroadcastFirst, subgroupElect, subgroupExclusiveAdd, subgroupExclusiveMul, subgroupInclusiveAdd, subgroupInclusiveMul, subgroupIndex, subgroupMax, subgroupMin, subgroupMul, subgroupOr, subgroupShuffle, subgroupShuffleDown, subgroupShuffleUp, subgroupShuffleXor, subgroupSize, subgroupXor, tan, tangentGeometry, tangentLocal, tangentView, tangentWorld, texture, texture3D, textureBarrier, textureBicubic, textureBicubicLevel, textureCubeUV, textureLevel, textureLoad, textureSize, textureStore, thickness, time, toneMapping, toneMappingExposure, toonOutlinePass, transformDirection, transformNormal, transformNormalToView, transformedClearcoatNormalView, transformedNormalView, transformedNormalWorld, transmission, transpose, triNoise3D, triplanarTexture, triplanarTextures, trunc, uint, uintBitsToFloat, uniform, uniformArray, uniformCubeTexture, uniformFlow, uniformGroup, uniformTexture, unpremultiplyAlpha, userData, uv, uvec2, uvec3, uvec4, varying, varyingProperty, vec2, vec3, vec4, vectorComponents, velocity, vertexColor, vertexIndex, vertexStage, vibrance, viewZToLogarithmicDepth, viewZToOrthographicDepth, viewZToPerspectiveDepth, viewport, viewportCoordinate, viewportDepthTexture, viewportLinearDepth, viewportMipTexture, viewportResolution, viewportSafeUV, viewportSharedTexture, viewportSize, viewportTexture, viewportUV, wgsl, wgslFn, workgroupArray, workgroupBarrier, workgroupId, workingToColorSpace, xor };
@@ -3,4 +3,4 @@
3
3
  * Copyright 2010-2025 Three.js Authors
4
4
  * SPDX-License-Identifier: MIT
5
5
  */
6
- import{TSL as e}from"three/webgpu";const t=e.BRDF_GGX,r=e.BRDF_Lambert,a=e.BasicPointShadowFilter,o=e.BasicShadowFilter,i=e.Break,n=e.Const,l=e.Continue,s=e.DFGApprox,c=e.D_GGX,m=e.Discard,d=e.EPSILON,p=e.F_Schlick,u=e.Fn,g=e.INFINITY,h=e.If,x=e.Loop,f=e.NodeAccess,b=e.NodeShaderStage,w=e.NodeType,_=e.NodeUpdateType,v=e.PCFShadowFilter,S=e.PCFSoftShadowFilter,T=e.PI,y=e.PI2,V=e.PointShadowFilter,M=e.Return,D=e.Schlick_to_F0,F=e.ScriptableNodeResources,I=e.ShaderNode,C=e.Stack,P=e.Switch,N=e.TBNViewMatrix,R=e.VSMShadowFilter,B=e.V_GGX_SmithCorrelated,A=e.Var,k=e.VarIntent,G=e.abs,L=e.acesFilmicToneMapping,O=e.acos,j=e.add,U=e.addMethodChaining,W=e.addNodeElement,E=e.agxToneMapping,q=e.all,z=e.alphaT,Z=e.and,X=e.anisotropy,K=e.anisotropyB,Y=e.anisotropyT,H=e.any,J=e.append,Q=e.array,$=e.arrayBuffer,ee=e.asin,te=e.assign,re=e.atan,ae=e.atan2,oe=e.atomicAdd,ie=e.atomicAnd,ne=e.atomicFunc,le=e.atomicLoad,se=e.atomicMax,ce=e.atomicMin,me=e.atomicOr,de=e.atomicStore,pe=e.atomicSub,ue=e.atomicXor,ge=e.attenuationColor,he=e.attenuationDistance,xe=e.attribute,fe=e.attributeArray,be=e.backgroundBlurriness,we=e.backgroundIntensity,_e=e.backgroundRotation,ve=e.batch,Se=e.bentNormalView,Te=e.billboarding,ye=e.bitAnd,Ve=e.bitNot,Me=e.bitOr,De=e.bitXor,Fe=e.bitangentGeometry,Ie=e.bitangentLocal,Ce=e.bitangentView,Pe=e.bitangentWorld,Ne=e.bitcast,Re=e.blendBurn,Be=e.blendColor,Ae=e.blendDodge,ke=e.blendOverlay,Ge=e.blendScreen,Le=e.blur,Oe=e.bool,je=e.buffer,Ue=e.bufferAttribute,We=e.bumpMap,Ee=e.burn,qe=e.bvec2,ze=e.bvec3,Ze=e.bvec4,Xe=e.bypass,Ke=e.cache,Ye=e.call,He=e.cameraFar,Je=e.cameraIndex,Qe=e.cameraNear,$e=e.cameraNormalMatrix,et=e.cameraPosition,tt=e.cameraProjectionMatrix,rt=e.cameraProjectionMatrixInverse,at=e.cameraViewMatrix,ot=e.cameraWorldMatrix,it=e.cbrt,nt=e.cdl,lt=e.ceil,st=e.checker,ct=e.cineonToneMapping,mt=e.clamp,dt=e.clearcoat,pt=e.clearcoatNormalView,ut=e.clearcoatRoughness,gt=e.code,ht=e.color,xt=e.colorSpaceToWorking,ft=e.colorToDirection,bt=e.compute,wt=e.computeKernel,_t=e.computeSkinning,vt=e.context,St=e.convert,Tt=e.convertColorSpace,yt=e.convertToTexture,Vt=e.cos,Mt=e.cross,Dt=e.cubeTexture,Ft=e.cubeTextureBase,It=e.cubeToUV,Ct=e.dFdx,Pt=e.dFdy,Nt=e.dashSize,Rt=e.debug,Bt=e.decrement,At=e.decrementBefore,kt=e.defaultBuildStages,Gt=e.defaultShaderStages,Lt=e.defined,Ot=e.degrees,jt=e.deltaTime,Ut=e.densityFog,Wt=e.densityFogFactor,Et=e.depth,qt=e.depthPass,zt=e.determinant,Zt=e.difference,Xt=e.diffuseColor,Kt=e.directPointLight,Yt=e.directionToColor,Ht=e.directionToFaceDirection,Jt=e.dispersion,Qt=e.distance,$t=e.div,er=e.dodge,tr=e.dot,rr=e.drawIndex,ar=e.dynamicBufferAttribute,or=e.element,ir=e.emissive,nr=e.equal,lr=e.equals,sr=e.equirectUV,cr=e.exp,mr=e.exp2,dr=e.expression,pr=e.faceDirection,ur=e.faceForward,gr=e.faceforward,hr=e.float,xr=e.floor,fr=e.fog,br=e.fract,wr=e.frameGroup,_r=e.frameId,vr=e.frontFacing,Sr=e.fwidth,Tr=e.gain,yr=e.gapSize,Vr=e.getConstNodeType,Mr=e.getCurrentStack,Dr=e.getDirection,Fr=e.getDistanceAttenuation,Ir=e.getGeometryRoughness,Cr=e.getNormalFromDepth,Pr=e.getParallaxCorrectNormal,Nr=e.getRoughness,Rr=e.getScreenPosition,Br=e.getShIrradianceAt,Ar=e.getShadowMaterial,kr=e.getShadowRenderObjectFunction,Gr=e.getTextureIndex,Lr=e.getViewPosition,Or=e.globalId,jr=e.glsl,Ur=e.glslFn,Wr=e.grayscale,Er=e.greaterThan,qr=e.greaterThanEqual,zr=e.hash,Zr=e.highpModelNormalViewMatrix,Xr=e.highpModelViewMatrix,Kr=e.hue,Yr=e.increment,Hr=e.incrementBefore,Jr=e.instance,Qr=e.instanceIndex,$r=e.instancedArray,ea=e.instancedBufferAttribute,ta=e.instancedDynamicBufferAttribute,ra=e.instancedMesh,aa=e.int,oa=e.inverse,ia=e.inverseSqrt,na=e.inversesqrt,la=e.invocationLocalIndex,sa=e.invocationSubgroupIndex,ca=e.ior,ma=e.iridescence,da=e.iridescenceIOR,pa=e.iridescenceThickness,ua=e.ivec2,ga=e.ivec3,ha=e.ivec4,xa=e.js,fa=e.label,ba=e.length,wa=e.lengthSq,_a=e.lessThan,va=e.lessThanEqual,Sa=e.lightPosition,Ta=e.lightProjectionUV,ya=e.lightShadowMatrix,Va=e.lightTargetDirection,Ma=e.lightTargetPosition,Da=e.lightViewPosition,Fa=e.lightingContext,Ia=e.lights,Ca=e.linearDepth,Pa=e.linearToneMapping,Na=e.localId,Ra=e.log,Ba=e.log2,Aa=e.logarithmicDepthToViewZ,ka=e.luminance,Ga=e.mat2,La=e.mat3,Oa=e.mat4,ja=e.matcapUV,Ua=e.materialAO,Wa=e.materialAlphaTest,Ea=e.materialAnisotropy,qa=e.materialAnisotropyVector,za=e.materialAttenuationColor,Za=e.materialAttenuationDistance,Xa=e.materialClearcoat,Ka=e.materialClearcoatNormal,Ya=e.materialClearcoatRoughness,Ha=e.materialColor,Ja=e.materialDispersion,Qa=e.materialEmissive,$a=e.materialEnvIntensity,eo=e.materialEnvRotation,to=e.materialIOR,ro=e.materialIridescence,ao=e.materialIridescenceIOR,oo=e.materialIridescenceThickness,io=e.materialLightMap,no=e.materialLineDashOffset,lo=e.materialLineDashSize,so=e.materialLineGapSize,co=e.materialLineScale,mo=e.materialLineWidth,po=e.materialMetalness,uo=e.materialNormal,go=e.materialOpacity,ho=e.materialPointSize,xo=e.materialReference,fo=e.materialReflectivity,bo=e.materialRefractionRatio,wo=e.materialRotation,_o=e.materialRoughness,vo=e.materialSheen,So=e.materialSheenRoughness,To=e.materialShininess,yo=e.materialSpecular,Vo=e.materialSpecularColor,Mo=e.materialSpecularIntensity,Do=e.materialSpecularStrength,Fo=e.materialThickness,Io=e.materialTransmission,Co=e.max,Po=e.maxMipLevel,No=e.mediumpModelViewMatrix,Ro=e.metalness,Bo=e.min,Ao=e.mix,ko=e.mixElement,Go=e.mod,Lo=e.modInt,Oo=e.modelDirection,jo=e.modelNormalMatrix,Uo=e.modelPosition,Wo=e.modelRadius,Eo=e.modelScale,qo=e.modelViewMatrix,zo=e.modelViewPosition,Zo=e.modelViewProjection,Xo=e.modelWorldMatrix,Ko=e.modelWorldMatrixInverse,Yo=e.morphReference,Ho=e.mrt,Jo=e.mul,Qo=e.mx_aastep,$o=e.mx_add,ei=e.mx_atan2,ti=e.mx_cell_noise_float,ri=e.mx_contrast,ai=e.mx_divide,oi=e.mx_fractal_noise_float,ii=e.mx_fractal_noise_vec2,ni=e.mx_fractal_noise_vec3,li=e.mx_fractal_noise_vec4,si=e.mx_frame,ci=e.mx_heighttonormal,mi=e.mx_hsvtorgb,di=e.mx_ifequal,pi=e.mx_ifgreater,ui=e.mx_ifgreatereq,gi=e.mx_invert,hi=e.mx_modulo,xi=e.mx_multiply,fi=e.mx_noise_float,bi=e.mx_noise_vec3,wi=e.mx_noise_vec4,_i=e.mx_place2d,vi=e.mx_power,Si=e.mx_ramp4,Ti=e.mx_ramplr,yi=e.mx_ramptb,Vi=e.mx_rgbtohsv,Mi=e.mx_rotate2d,Di=e.mx_rotate3d,Fi=e.mx_safepower,Ii=e.mx_separate,Ci=e.mx_splitlr,Pi=e.mx_splittb,Ni=e.mx_srgb_texture_to_lin_rec709,Ri=e.mx_subtract,Bi=e.mx_timer,Ai=e.mx_transform_uv,ki=e.mx_unifiednoise2d,Gi=e.mx_unifiednoise3d,Li=e.mx_worley_noise_float,Oi=e.mx_worley_noise_vec2,ji=e.mx_worley_noise_vec3,Ui=e.negate,Wi=e.neutralToneMapping,Ei=e.nodeArray,qi=e.nodeImmutable,zi=e.nodeObject,Zi=e.nodeObjectIntent,Xi=e.nodeObjects,Ki=e.nodeProxy,Yi=e.nodeProxyIntent,Hi=e.normalFlat,Ji=e.normalGeometry,Qi=e.normalLocal,$i=e.normalMap,en=e.normalView,tn=e.normalViewGeometry,rn=e.normalWorld,an=e.normalWorldGeometry,on=e.normalize,nn=e.not,ln=e.notEqual,sn=e.numWorkgroups,cn=e.objectDirection,mn=e.objectGroup,dn=e.objectPosition,pn=e.objectRadius,un=e.objectScale,gn=e.objectViewPosition,hn=e.objectWorldMatrix,xn=e.OnObjectUpdate,fn=e.OnMaterialUpdate,bn=e.oneMinus,wn=e.or,_n=e.orthographicDepthToViewZ,vn=e.oscSawtooth,Sn=e.oscSine,Tn=e.oscSquare,yn=e.oscTriangle,Vn=e.output,Mn=e.outputStruct,Dn=e.overlay,Fn=e.overloadingFn,In=e.parabola,Cn=e.parallaxDirection,Pn=e.parallaxUV,Nn=e.parameter,Rn=e.pass,Bn=e.passTexture,An=e.pcurve,kn=e.perspectiveDepthToViewZ,Gn=e.pmremTexture,Ln=e.pointShadow,On=e.pointUV,jn=e.pointWidth,Un=e.positionGeometry,Wn=e.positionLocal,En=e.positionPrevious,qn=e.positionView,zn=e.positionViewDirection,Zn=e.positionWorld,Xn=e.positionWorldDirection,Kn=e.posterize,Yn=e.pow,Hn=e.pow2,Jn=e.pow3,Qn=e.pow4,$n=e.premultiplyAlpha,el=e.property,tl=e.radians,rl=e.rand,al=e.range,ol=e.rangeFog,il=e.rangeFogFactor,nl=e.reciprocal,ll=e.reference,sl=e.referenceBuffer,cl=e.reflect,ml=e.reflectVector,dl=e.reflectView,pl=e.reflector,ul=e.refract,gl=e.refractVector,hl=e.refractView,xl=e.reinhardToneMapping,fl=e.remap,bl=e.remapClamp,wl=e.renderGroup,_l=e.renderOutput,vl=e.rendererReference,Sl=e.rotate,Tl=e.rotateUV,yl=e.roughness,Vl=e.round,Ml=e.rtt,Dl=e.sRGBTransferEOTF,Fl=e.sRGBTransferOETF,Il=e.sample,Cl=e.sampler,Pl=e.samplerComparison,Nl=e.saturate,Rl=e.saturation,Bl=e.screen,Al=e.screenCoordinate,kl=e.screenSize,Gl=e.screenUV,Ll=e.scriptable,Ol=e.scriptableValue,jl=e.select,Ul=e.setCurrentStack,Wl=e.setName,El=e.shaderStages,ql=e.shadow,zl=e.shadowPositionWorld,Zl=e.shapeCircle,Xl=e.sharedUniformGroup,Kl=e.sheen,Yl=e.sheenRoughness,Hl=e.shiftLeft,Jl=e.shiftRight,Ql=e.shininess,$l=e.sign,es=e.sin,ts=e.sinc,rs=e.skinning,as=e.smoothstep,os=e.smoothstepElement,is=e.specularColor,ns=e.specularF90,ls=e.spherizeUV,ss=e.split,cs=e.spritesheetUV,ms=e.sqrt,ds=e.stack,ps=e.step,us=e.stepElement,gs=e.storage,hs=e.storageBarrier,xs=e.storageObject,fs=e.storageTexture,bs=e.string,ws=e.struct,_s=e.sub,vs=e.subBuild,Ss=e.subgroupIndex,Ts=e.subgroupSize,ys=e.tan,Vs=e.tangentGeometry,Ms=e.tangentLocal,Ds=e.tangentView,Fs=e.tangentWorld,Is=e.temp,Cs=e.texture,Ps=e.texture3D,Ns=e.textureBarrier,Rs=e.textureBicubic,Bs=e.textureBicubicLevel,As=e.textureCubeUV,ks=e.textureLoad,Gs=e.textureSize,Ls=e.textureStore,Os=e.thickness,js=e.time,Us=e.timerDelta,Ws=e.timerGlobal,Es=e.timerLocal,qs=e.toneMapping,zs=e.toneMappingExposure,Zs=e.toonOutlinePass,Xs=e.transformDirection,Ks=e.transformNormal,Ys=e.transformNormalToView,Hs=e.transformedClearcoatNormalView,Js=e.transformedNormalView,Qs=e.transformedNormalWorld,$s=e.transmission,ec=e.transpose,tc=e.triNoise3D,rc=e.triplanarTexture,ac=e.triplanarTextures,oc=e.trunc,ic=e.uint,nc=e.uniform,lc=e.uniformArray,sc=e.uniformCubeTexture,cc=e.uniformGroup,mc=e.uniformTexture,dc=e.unpremultiplyAlpha,pc=e.userData,uc=e.uv,gc=e.uvec2,hc=e.uvec3,xc=e.uvec4,fc=e.varying,bc=e.varyingProperty,wc=e.vec2,_c=e.vec3,vc=e.vec4,Sc=e.vectorComponents,Tc=e.velocity,yc=e.vertexColor,Vc=e.vertexIndex,Mc=e.vertexStage,Dc=e.vibrance,Fc=e.viewZToLogarithmicDepth,Ic=e.viewZToOrthographicDepth,Cc=e.viewZToPerspectiveDepth,Pc=e.viewport,Nc=e.viewportCoordinate,Rc=e.viewportDepthTexture,Bc=e.viewportLinearDepth,Ac=e.viewportMipTexture,kc=e.viewportResolution,Gc=e.viewportSafeUV,Lc=e.viewportSharedTexture,Oc=e.viewportSize,jc=e.viewportTexture,Uc=e.viewportUV,Wc=e.wgsl,Ec=e.wgslFn,qc=e.workgroupArray,zc=e.workgroupBarrier,Zc=e.workgroupId,Xc=e.workingToColorSpace,Kc=e.xor;export{t as BRDF_GGX,r as BRDF_Lambert,a as BasicPointShadowFilter,o as BasicShadowFilter,i as Break,n as Const,l as Continue,s as DFGApprox,c as D_GGX,m as Discard,d as EPSILON,p as F_Schlick,u as Fn,g as INFINITY,h as If,x as Loop,f as NodeAccess,b as NodeShaderStage,w as NodeType,_ as NodeUpdateType,fn as OnMaterialUpdate,xn as OnObjectUpdate,v as PCFShadowFilter,S as PCFSoftShadowFilter,T as PI,y as PI2,V as PointShadowFilter,M as Return,D as Schlick_to_F0,F as ScriptableNodeResources,I as ShaderNode,C as Stack,P as Switch,N as TBNViewMatrix,R as VSMShadowFilter,B as V_GGX_SmithCorrelated,A as Var,k as VarIntent,G as abs,L as acesFilmicToneMapping,O as acos,j as add,U as addMethodChaining,W as addNodeElement,E as agxToneMapping,q as all,z as alphaT,Z as and,X as anisotropy,K as anisotropyB,Y as anisotropyT,H as any,J as append,Q as array,$ as arrayBuffer,ee as asin,te as assign,re as atan,ae as atan2,oe as atomicAdd,ie as atomicAnd,ne as atomicFunc,le as atomicLoad,se as atomicMax,ce as atomicMin,me as atomicOr,de as atomicStore,pe as atomicSub,ue as atomicXor,ge as attenuationColor,he as attenuationDistance,xe as attribute,fe as attributeArray,be as backgroundBlurriness,we as backgroundIntensity,_e as backgroundRotation,ve as batch,Se as bentNormalView,Te as billboarding,ye as bitAnd,Ve as bitNot,Me as bitOr,De as bitXor,Fe as bitangentGeometry,Ie as bitangentLocal,Ce as bitangentView,Pe as bitangentWorld,Ne as bitcast,Re as blendBurn,Be as blendColor,Ae as blendDodge,ke as blendOverlay,Ge as blendScreen,Le as blur,Oe as bool,je as buffer,Ue as bufferAttribute,We as bumpMap,Ee as burn,qe as bvec2,ze as bvec3,Ze as bvec4,Xe as bypass,Ke as cache,Ye as call,He as cameraFar,Je as cameraIndex,Qe as cameraNear,$e as cameraNormalMatrix,et as cameraPosition,tt as cameraProjectionMatrix,rt as cameraProjectionMatrixInverse,at as cameraViewMatrix,ot as cameraWorldMatrix,it as cbrt,nt as cdl,lt as ceil,st as checker,ct as cineonToneMapping,mt as clamp,dt as clearcoat,pt as clearcoatNormalView,ut as clearcoatRoughness,gt as code,ht as color,xt as colorSpaceToWorking,ft as colorToDirection,bt as compute,wt as computeKernel,_t as computeSkinning,vt as context,St as convert,Tt as convertColorSpace,yt as convertToTexture,Vt as cos,Mt as cross,Dt as cubeTexture,Ft as cubeTextureBase,It as cubeToUV,Ct as dFdx,Pt as dFdy,Nt as dashSize,Rt as debug,Bt as decrement,At as decrementBefore,kt as defaultBuildStages,Gt as defaultShaderStages,Lt as defined,Ot as degrees,jt as deltaTime,Ut as densityFog,Wt as densityFogFactor,Et as depth,qt as depthPass,zt as determinant,Zt as difference,Xt as diffuseColor,Kt as directPointLight,Yt as directionToColor,Ht as directionToFaceDirection,Jt as dispersion,Qt as distance,$t as div,er as dodge,tr as dot,rr as drawIndex,ar as dynamicBufferAttribute,or as element,ir as emissive,nr as equal,lr as equals,sr as equirectUV,cr as exp,mr as exp2,dr as expression,pr as faceDirection,ur as faceForward,gr as faceforward,hr as float,xr as floor,fr as fog,br as fract,wr as frameGroup,_r as frameId,vr as frontFacing,Sr as fwidth,Tr as gain,yr as gapSize,Vr as getConstNodeType,Mr as getCurrentStack,Dr as getDirection,Fr as getDistanceAttenuation,Ir as getGeometryRoughness,Cr as getNormalFromDepth,Pr as getParallaxCorrectNormal,Nr as getRoughness,Rr as getScreenPosition,Br as getShIrradianceAt,Ar as getShadowMaterial,kr as getShadowRenderObjectFunction,Gr as getTextureIndex,Lr as getViewPosition,Or as globalId,jr as glsl,Ur as glslFn,Wr as grayscale,Er as greaterThan,qr as greaterThanEqual,zr as hash,Zr as highpModelNormalViewMatrix,Xr as highpModelViewMatrix,Kr as hue,Yr as increment,Hr as incrementBefore,Jr as instance,Qr as instanceIndex,$r as instancedArray,ea as instancedBufferAttribute,ta as instancedDynamicBufferAttribute,ra as instancedMesh,aa as int,oa as inverse,ia as inverseSqrt,na as inversesqrt,la as invocationLocalIndex,sa as invocationSubgroupIndex,ca as ior,ma as iridescence,da as iridescenceIOR,pa as iridescenceThickness,ua as ivec2,ga as ivec3,ha as ivec4,xa as js,fa as label,ba as length,wa as lengthSq,_a as lessThan,va as lessThanEqual,Sa as lightPosition,Ta as lightProjectionUV,ya as lightShadowMatrix,Va as lightTargetDirection,Ma as lightTargetPosition,Da as lightViewPosition,Fa as lightingContext,Ia as lights,Ca as linearDepth,Pa as linearToneMapping,Na as localId,Ra as log,Ba as log2,Aa as logarithmicDepthToViewZ,ka as luminance,Ga as mat2,La as mat3,Oa as mat4,ja as matcapUV,Ua as materialAO,Wa as materialAlphaTest,Ea as materialAnisotropy,qa as materialAnisotropyVector,za as materialAttenuationColor,Za as materialAttenuationDistance,Xa as materialClearcoat,Ka as materialClearcoatNormal,Ya as materialClearcoatRoughness,Ha as materialColor,Ja as materialDispersion,Qa as materialEmissive,$a as materialEnvIntensity,eo as materialEnvRotation,to as materialIOR,ro as materialIridescence,ao as materialIridescenceIOR,oo as materialIridescenceThickness,io as materialLightMap,no as materialLineDashOffset,lo as materialLineDashSize,so as materialLineGapSize,co as materialLineScale,mo as materialLineWidth,po as materialMetalness,uo as materialNormal,go as materialOpacity,ho as materialPointSize,xo as materialReference,fo as materialReflectivity,bo as materialRefractionRatio,wo as materialRotation,_o as materialRoughness,vo as materialSheen,So as materialSheenRoughness,To as materialShininess,yo as materialSpecular,Vo as materialSpecularColor,Mo as materialSpecularIntensity,Do as materialSpecularStrength,Fo as materialThickness,Io as materialTransmission,Co as max,Po as maxMipLevel,No as mediumpModelViewMatrix,Ro as metalness,Bo as min,Ao as mix,ko as mixElement,Go as mod,Lo as modInt,Oo as modelDirection,jo as modelNormalMatrix,Uo as modelPosition,Wo as modelRadius,Eo as modelScale,qo as modelViewMatrix,zo as modelViewPosition,Zo as modelViewProjection,Xo as modelWorldMatrix,Ko as modelWorldMatrixInverse,Yo as morphReference,Ho as mrt,Jo as mul,Qo as mx_aastep,$o as mx_add,ei as mx_atan2,ti as mx_cell_noise_float,ri as mx_contrast,ai as mx_divide,oi as mx_fractal_noise_float,ii as mx_fractal_noise_vec2,ni as mx_fractal_noise_vec3,li as mx_fractal_noise_vec4,si as mx_frame,ci as mx_heighttonormal,mi as mx_hsvtorgb,di as mx_ifequal,pi as mx_ifgreater,ui as mx_ifgreatereq,gi as mx_invert,hi as mx_modulo,xi as mx_multiply,fi as mx_noise_float,bi as mx_noise_vec3,wi as mx_noise_vec4,_i as mx_place2d,vi as mx_power,Si as mx_ramp4,Ti as mx_ramplr,yi as mx_ramptb,Vi as mx_rgbtohsv,Mi as mx_rotate2d,Di as mx_rotate3d,Fi as mx_safepower,Ii as mx_separate,Ci as mx_splitlr,Pi as mx_splittb,Ni as mx_srgb_texture_to_lin_rec709,Ri as mx_subtract,Bi as mx_timer,Ai as mx_transform_uv,ki as mx_unifiednoise2d,Gi as mx_unifiednoise3d,Li as mx_worley_noise_float,Oi as mx_worley_noise_vec2,ji as mx_worley_noise_vec3,Ui as negate,Wi as neutralToneMapping,Ei as nodeArray,qi as nodeImmutable,zi as nodeObject,Zi as nodeObjectIntent,Xi as nodeObjects,Ki as nodeProxy,Yi as nodeProxyIntent,Hi as normalFlat,Ji as normalGeometry,Qi as normalLocal,$i as normalMap,en as normalView,tn as normalViewGeometry,rn as normalWorld,an as normalWorldGeometry,on as normalize,nn as not,ln as notEqual,sn as numWorkgroups,cn as objectDirection,mn as objectGroup,dn as objectPosition,pn as objectRadius,un as objectScale,gn as objectViewPosition,hn as objectWorldMatrix,bn as oneMinus,wn as or,_n as orthographicDepthToViewZ,vn as oscSawtooth,Sn as oscSine,Tn as oscSquare,yn as oscTriangle,Vn as output,Mn as outputStruct,Dn as overlay,Fn as overloadingFn,In as parabola,Cn as parallaxDirection,Pn as parallaxUV,Nn as parameter,Rn as pass,Bn as passTexture,An as pcurve,kn as perspectiveDepthToViewZ,Gn as pmremTexture,Ln as pointShadow,On as pointUV,jn as pointWidth,Un as positionGeometry,Wn as positionLocal,En as positionPrevious,qn as positionView,zn as positionViewDirection,Zn as positionWorld,Xn as positionWorldDirection,Kn as posterize,Yn as pow,Hn as pow2,Jn as pow3,Qn as pow4,$n as premultiplyAlpha,el as property,tl as radians,rl as rand,al as range,ol as rangeFog,il as rangeFogFactor,nl as reciprocal,ll as reference,sl as referenceBuffer,cl as reflect,ml as reflectVector,dl as reflectView,pl as reflector,ul as refract,gl as refractVector,hl as refractView,xl as reinhardToneMapping,fl as remap,bl as remapClamp,wl as renderGroup,_l as renderOutput,vl as rendererReference,Sl as rotate,Tl as rotateUV,yl as roughness,Vl as round,Ml as rtt,Dl as sRGBTransferEOTF,Fl as sRGBTransferOETF,Il as sample,Cl as sampler,Pl as samplerComparison,Nl as saturate,Rl as saturation,Bl as screen,Al as screenCoordinate,kl as screenSize,Gl as screenUV,Ll as scriptable,Ol as scriptableValue,jl as select,Ul as setCurrentStack,Wl as setName,El as shaderStages,ql as shadow,zl as shadowPositionWorld,Zl as shapeCircle,Xl as sharedUniformGroup,Kl as sheen,Yl as sheenRoughness,Hl as shiftLeft,Jl as shiftRight,Ql as shininess,$l as sign,es as sin,ts as sinc,rs as skinning,as as smoothstep,os as smoothstepElement,is as specularColor,ns as specularF90,ls as spherizeUV,ss as split,cs as spritesheetUV,ms as sqrt,ds as stack,ps as step,us as stepElement,gs as storage,hs as storageBarrier,xs as storageObject,fs as storageTexture,bs as string,ws as struct,_s as sub,vs as subBuild,Ss as subgroupIndex,Ts as subgroupSize,ys as tan,Vs as tangentGeometry,Ms as tangentLocal,Ds as tangentView,Fs as tangentWorld,Is as temp,Cs as texture,Ps as texture3D,Ns as textureBarrier,Rs as textureBicubic,Bs as textureBicubicLevel,As as textureCubeUV,ks as textureLoad,Gs as textureSize,Ls as textureStore,Os as thickness,js as time,Us as timerDelta,Ws as timerGlobal,Es as timerLocal,qs as toneMapping,zs as toneMappingExposure,Zs as toonOutlinePass,Xs as transformDirection,Ks as transformNormal,Ys as transformNormalToView,Hs as transformedClearcoatNormalView,Js as transformedNormalView,Qs as transformedNormalWorld,$s as transmission,ec as transpose,tc as triNoise3D,rc as triplanarTexture,ac as triplanarTextures,oc as trunc,ic as uint,nc as uniform,lc as uniformArray,sc as uniformCubeTexture,cc as uniformGroup,mc as uniformTexture,dc as unpremultiplyAlpha,pc as userData,uc as uv,gc as uvec2,hc as uvec3,xc as uvec4,fc as varying,bc as varyingProperty,wc as vec2,_c as vec3,vc as vec4,Sc as vectorComponents,Tc as velocity,yc as vertexColor,Vc as vertexIndex,Mc as vertexStage,Dc as vibrance,Fc as viewZToLogarithmicDepth,Ic as viewZToOrthographicDepth,Cc as viewZToPerspectiveDepth,Pc as viewport,Nc as viewportCoordinate,Rc as viewportDepthTexture,Bc as viewportLinearDepth,Ac as viewportMipTexture,kc as viewportResolution,Gc as viewportSafeUV,Lc as viewportSharedTexture,Oc as viewportSize,jc as viewportTexture,Uc as viewportUV,Wc as wgsl,Ec as wgslFn,qc as workgroupArray,zc as workgroupBarrier,Zc as workgroupId,Xc as workingToColorSpace,Kc as xor};
6
+ import{TSL as e}from"three/webgpu";const t=e.BRDF_GGX,r=e.BRDF_Lambert,a=e.BasicPointShadowFilter,o=e.BasicShadowFilter,i=e.Break,n=e.Const,l=e.Continue,s=e.DFGApprox,c=e.D_GGX,m=e.Discard,u=e.EPSILON,p=e.F_Schlick,d=e.Fn,g=e.INFINITY,h=e.If,x=e.Loop,b=e.NodeAccess,f=e.NodeShaderStage,v=e.NodeType,w=e.NodeUpdateType,_=e.PCFShadowFilter,S=e.PCFSoftShadowFilter,T=e.PI,y=e.PI2,V=e.TWO_PI,M=e.HALF_PI,F=e.PointShadowFilter,I=e.Return,D=e.Schlick_to_F0,B=e.ScriptableNodeResources,P=e.ShaderNode,C=e.Stack,A=e.Switch,N=e.TBNViewMatrix,R=e.VSMShadowFilter,O=e.V_GGX_SmithCorrelated,L=e.Var,k=e.VarIntent,G=e.abs,U=e.acesFilmicToneMapping,j=e.acos,E=e.add,W=e.addMethodChaining,q=e.addNodeElement,z=e.agxToneMapping,X=e.all,Z=e.alphaT,H=e.and,K=e.anisotropy,Y=e.anisotropyB,J=e.anisotropyT,Q=e.any,$=e.append,ee=e.array,te=e.arrayBuffer,re=e.asin,ae=e.assign,oe=e.atan,ie=e.atan2,ne=e.atomicAdd,le=e.atomicAnd,se=e.atomicFunc,ce=e.atomicLoad,me=e.atomicMax,ue=e.atomicMin,pe=e.atomicOr,de=e.atomicStore,ge=e.atomicSub,he=e.atomicXor,xe=e.attenuationColor,be=e.attenuationDistance,fe=e.attribute,ve=e.attributeArray,we=e.backgroundBlurriness,_e=e.backgroundIntensity,Se=e.backgroundRotation,Te=e.batch,ye=e.bentNormalView,Ve=e.billboarding,Me=e.bitAnd,Fe=e.bitNot,Ie=e.bitOr,De=e.bitXor,Be=e.bitangentGeometry,Pe=e.bitangentLocal,Ce=e.bitangentView,Ae=e.bitangentWorld,Ne=e.bitcast,Re=e.blendBurn,Oe=e.blendColor,Le=e.blendDodge,ke=e.blendOverlay,Ge=e.blendScreen,Ue=e.blur,je=e.bool,Ee=e.buffer,We=e.bufferAttribute,qe=e.bumpMap,ze=e.burn,Xe=e.builtin,Ze=e.bvec2,He=e.bvec3,Ke=e.bvec4,Ye=e.bypass,Je=e.cache,Qe=e.call,$e=e.cameraFar,et=e.cameraIndex,tt=e.cameraNear,rt=e.cameraNormalMatrix,at=e.cameraPosition,ot=e.cameraProjectionMatrix,it=e.cameraProjectionMatrixInverse,nt=e.cameraViewMatrix,lt=e.cameraViewport,st=e.cameraWorldMatrix,ct=e.cbrt,mt=e.cdl,ut=e.ceil,pt=e.checker,dt=e.cineonToneMapping,gt=e.clamp,ht=e.clearcoat,xt=e.clearcoatNormalView,bt=e.clearcoatRoughness,ft=e.code,vt=e.color,wt=e.colorSpaceToWorking,_t=e.colorToDirection,St=e.compute,Tt=e.computeKernel,yt=e.computeSkinning,Vt=e.context,Mt=e.convert,Ft=e.convertColorSpace,It=e.convertToTexture,Dt=e.cos,Bt=e.cross,Pt=e.cubeTexture,Ct=e.cubeTextureBase,At=e.cubeToUV,Nt=e.dFdx,Rt=e.dFdy,Ot=e.dashSize,Lt=e.debug,kt=e.decrement,Gt=e.decrementBefore,Ut=e.defaultBuildStages,jt=e.defaultShaderStages,Et=e.defined,Wt=e.degrees,qt=e.deltaTime,zt=e.densityFog,Xt=e.densityFogFactor,Zt=e.depth,Ht=e.depthPass,Kt=e.determinant,Yt=e.difference,Jt=e.diffuseColor,Qt=e.directPointLight,$t=e.directionToColor,er=e.directionToFaceDirection,tr=e.dispersion,rr=e.distance,ar=e.div,or=e.dodge,ir=e.dot,nr=e.drawIndex,lr=e.dynamicBufferAttribute,sr=e.element,cr=e.emissive,mr=e.equal,ur=e.equals,pr=e.equirectUV,dr=e.exp,gr=e.exp2,hr=e.expression,xr=e.faceDirection,br=e.faceForward,fr=e.faceforward,vr=e.float,wr=e.floatBitsToInt,_r=e.floatBitsToUint,Sr=e.floor,Tr=e.fog,yr=e.fract,Vr=e.frameGroup,Mr=e.frameId,Fr=e.frontFacing,Ir=e.fwidth,Dr=e.gain,Br=e.gapSize,Pr=e.getConstNodeType,Cr=e.getCurrentStack,Ar=e.getDirection,Nr=e.getDistanceAttenuation,Rr=e.getGeometryRoughness,Or=e.getNormalFromDepth,Lr=e.interleavedGradientNoise,kr=e.getParallaxCorrectNormal,Gr=e.getRoughness,Ur=e.getScreenPosition,jr=e.getShIrradianceAt,Er=e.getShadowMaterial,Wr=e.getShadowRenderObjectFunction,qr=e.getTextureIndex,zr=e.getViewPosition,Xr=e.globalId,Zr=e.glsl,Hr=e.glslFn,Kr=e.grayscale,Yr=e.greaterThan,Jr=e.greaterThanEqual,Qr=e.hash,$r=e.highpModelNormalViewMatrix,ea=e.highpModelViewMatrix,ta=e.hue,ra=e.increment,aa=e.incrementBefore,oa=e.instance,ia=e.instanceIndex,na=e.instancedArray,la=e.instancedBufferAttribute,sa=e.instancedDynamicBufferAttribute,ca=e.instancedMesh,ma=e.int,ua=e.intBitsToFloat,pa=e.inverse,da=e.inverseSqrt,ga=e.inversesqrt,ha=e.invocationLocalIndex,xa=e.invocationSubgroupIndex,ba=e.ior,fa=e.iridescence,va=e.iridescenceIOR,wa=e.iridescenceThickness,_a=e.ivec2,Sa=e.ivec3,Ta=e.ivec4,ya=e.js,Va=e.label,Ma=e.length,Fa=e.lengthSq,Ia=e.lessThan,Da=e.lessThanEqual,Ba=e.lightPosition,Pa=e.lightProjectionUV,Ca=e.lightShadowMatrix,Aa=e.lightTargetDirection,Na=e.lightTargetPosition,Ra=e.lightViewPosition,Oa=e.lightingContext,La=e.lights,ka=e.linearDepth,Ga=e.linearToneMapping,Ua=e.localId,ja=e.log,Ea=e.log2,Wa=e.logarithmicDepthToViewZ,qa=e.luminance,za=e.mat2,Xa=e.mat3,Za=e.mat4,Ha=e.matcapUV,Ka=e.materialAO,Ya=e.materialAlphaTest,Ja=e.materialAnisotropy,Qa=e.materialAnisotropyVector,$a=e.materialAttenuationColor,eo=e.materialAttenuationDistance,to=e.materialClearcoat,ro=e.materialClearcoatNormal,ao=e.materialClearcoatRoughness,oo=e.materialColor,io=e.materialDispersion,no=e.materialEmissive,lo=e.materialEnvIntensity,so=e.materialEnvRotation,co=e.materialIOR,mo=e.materialIridescence,uo=e.materialIridescenceIOR,po=e.materialIridescenceThickness,go=e.materialLightMap,ho=e.materialLineDashOffset,xo=e.materialLineDashSize,bo=e.materialLineGapSize,fo=e.materialLineScale,vo=e.materialLineWidth,wo=e.materialMetalness,_o=e.materialNormal,So=e.materialOpacity,To=e.materialPointSize,yo=e.materialReference,Vo=e.materialReflectivity,Mo=e.materialRefractionRatio,Fo=e.materialRotation,Io=e.materialRoughness,Do=e.materialSheen,Bo=e.materialSheenRoughness,Po=e.materialShininess,Co=e.materialSpecular,Ao=e.materialSpecularColor,No=e.materialSpecularIntensity,Ro=e.materialSpecularStrength,Oo=e.materialThickness,Lo=e.materialTransmission,ko=e.max,Go=e.maxMipLevel,Uo=e.mediumpModelViewMatrix,jo=e.metalness,Eo=e.min,Wo=e.mix,qo=e.mixElement,zo=e.mod,Xo=e.modInt,Zo=e.modelDirection,Ho=e.modelNormalMatrix,Ko=e.modelPosition,Yo=e.modelRadius,Jo=e.modelScale,Qo=e.modelViewMatrix,$o=e.modelViewPosition,ei=e.modelViewProjection,ti=e.modelWorldMatrix,ri=e.modelWorldMatrixInverse,ai=e.morphReference,oi=e.mrt,ii=e.mul,ni=e.mx_aastep,li=e.mx_add,si=e.mx_atan2,ci=e.mx_cell_noise_float,mi=e.mx_contrast,ui=e.mx_divide,pi=e.mx_fractal_noise_float,di=e.mx_fractal_noise_vec2,gi=e.mx_fractal_noise_vec3,hi=e.mx_fractal_noise_vec4,xi=e.mx_frame,bi=e.mx_heighttonormal,fi=e.mx_hsvtorgb,vi=e.mx_ifequal,wi=e.mx_ifgreater,_i=e.mx_ifgreatereq,Si=e.mx_invert,Ti=e.mx_modulo,yi=e.mx_multiply,Vi=e.mx_noise_float,Mi=e.mx_noise_vec3,Fi=e.mx_noise_vec4,Ii=e.mx_place2d,Di=e.mx_power,Bi=e.mx_ramp4,Pi=e.mx_ramplr,Ci=e.mx_ramptb,Ai=e.mx_rgbtohsv,Ni=e.mx_rotate2d,Ri=e.mx_rotate3d,Oi=e.mx_safepower,Li=e.mx_separate,ki=e.mx_splitlr,Gi=e.mx_splittb,Ui=e.mx_srgb_texture_to_lin_rec709,ji=e.mx_subtract,Ei=e.mx_timer,Wi=e.mx_transform_uv,qi=e.mx_unifiednoise2d,zi=e.mx_unifiednoise3d,Xi=e.mx_worley_noise_float,Zi=e.mx_worley_noise_vec2,Hi=e.mx_worley_noise_vec3,Ki=e.negate,Yi=e.neutralToneMapping,Ji=e.nodeArray,Qi=e.nodeImmutable,$i=e.nodeObject,en=e.nodeObjectIntent,tn=e.nodeObjects,rn=e.nodeProxy,an=e.nodeProxyIntent,on=e.normalFlat,nn=e.normalGeometry,ln=e.normalLocal,sn=e.normalMap,cn=e.normalView,mn=e.normalViewGeometry,un=e.normalWorld,pn=e.normalWorldGeometry,dn=e.normalize,gn=e.not,hn=e.notEqual,xn=e.numWorkgroups,bn=e.objectDirection,fn=e.objectGroup,vn=e.objectPosition,wn=e.objectRadius,_n=e.objectScale,Sn=e.objectViewPosition,Tn=e.objectWorldMatrix,yn=e.OnBeforeObjectUpdate,Vn=e.OnBeforeMaterialUpdate,Mn=e.OnObjectUpdate,Fn=e.OnMaterialUpdate,In=e.oneMinus,Dn=e.or,Bn=e.orthographicDepthToViewZ,Pn=e.oscSawtooth,Cn=e.oscSine,An=e.oscSquare,Nn=e.oscTriangle,Rn=e.output,On=e.outputStruct,Ln=e.overlay,kn=e.overloadingFn,Gn=e.parabola,Un=e.parallaxDirection,jn=e.parallaxUV,En=e.parameter,Wn=e.pass,qn=e.passTexture,zn=e.pcurve,Xn=e.perspectiveDepthToViewZ,Zn=e.pmremTexture,Hn=e.pointShadow,Kn=e.pointUV,Yn=e.pointWidth,Jn=e.positionGeometry,Qn=e.positionLocal,$n=e.positionPrevious,el=e.positionView,tl=e.positionViewDirection,rl=e.positionWorld,al=e.positionWorldDirection,ol=e.posterize,il=e.pow,nl=e.pow2,ll=e.pow3,sl=e.pow4,cl=e.premultiplyAlpha,ml=e.property,ul=e.radians,pl=e.rand,dl=e.range,gl=e.rangeFog,hl=e.rangeFogFactor,xl=e.reciprocal,bl=e.reference,fl=e.referenceBuffer,vl=e.reflect,wl=e.reflectVector,_l=e.reflectView,Sl=e.reflector,Tl=e.refract,yl=e.refractVector,Vl=e.refractView,Ml=e.reinhardToneMapping,Fl=e.remap,Il=e.remapClamp,Dl=e.renderGroup,Bl=e.renderOutput,Pl=e.rendererReference,Cl=e.rotate,Al=e.rotateUV,Nl=e.roughness,Rl=e.round,Ol=e.rtt,Ll=e.sRGBTransferEOTF,kl=e.sRGBTransferOETF,Gl=e.sample,Ul=e.sampler,jl=e.samplerComparison,El=e.saturate,Wl=e.saturation,ql=e.screen,zl=e.screenCoordinate,Xl=e.screenDPR,Zl=e.screenSize,Hl=e.screenUV,Kl=e.scriptable,Yl=e.scriptableValue,Jl=e.select,Ql=e.setCurrentStack,$l=e.setName,es=e.shaderStages,ts=e.shadow,rs=e.shadowPositionWorld,as=e.shapeCircle,os=e.sharedUniformGroup,is=e.sheen,ns=e.sheenRoughness,ls=e.shiftLeft,ss=e.shiftRight,cs=e.shininess,ms=e.sign,us=e.sin,ps=e.sinc,ds=e.skinning,gs=e.smoothstep,hs=e.smoothstepElement,xs=e.specularColor,bs=e.specularF90,fs=e.spherizeUV,vs=e.split,ws=e.spritesheetUV,_s=e.sqrt,Ss=e.stack,Ts=e.step,ys=e.stepElement,Vs=e.storage,Ms=e.storageBarrier,Fs=e.storageObject,Is=e.storageTexture,Ds=e.string,Bs=e.struct,Ps=e.sub,Cs=e.subgroupAdd,As=e.subgroupAll,Ns=e.subgroupAnd,Rs=e.subgroupAny,Os=e.subgroupBallot,Ls=e.subgroupBroadcast,ks=e.subgroupBroadcastFirst,Gs=e.subBuild,Us=e.subgroupElect,js=e.subgroupExclusiveAdd,Es=e.subgroupExclusiveMul,Ws=e.subgroupInclusiveAdd,qs=e.subgroupInclusiveMul,zs=e.subgroupIndex,Xs=e.subgroupMax,Zs=e.subgroupMin,Hs=e.subgroupMul,Ks=e.subgroupOr,Ys=e.subgroupShuffle,Js=e.subgroupShuffleDown,Qs=e.subgroupShuffleUp,$s=e.subgroupShuffleXor,ec=e.subgroupSize,tc=e.subgroupXor,rc=e.tan,ac=e.tangentGeometry,oc=e.tangentLocal,ic=e.tangentView,nc=e.tangentWorld,lc=e.texture,sc=e.texture3D,cc=e.textureBarrier,mc=e.textureBicubic,uc=e.textureBicubicLevel,pc=e.textureCubeUV,dc=e.textureLoad,gc=e.textureSize,hc=e.textureLevel,xc=e.textureStore,bc=e.thickness,fc=e.time,vc=e.toneMapping,wc=e.toneMappingExposure,_c=e.toonOutlinePass,Sc=e.transformDirection,Tc=e.transformNormal,yc=e.transformNormalToView,Vc=e.transformedClearcoatNormalView,Mc=e.transformedNormalView,Fc=e.transformedNormalWorld,Ic=e.transmission,Dc=e.transpose,Bc=e.triNoise3D,Pc=e.triplanarTexture,Cc=e.triplanarTextures,Ac=e.trunc,Nc=e.uint,Rc=e.uintBitsToFloat,Oc=e.uniform,Lc=e.uniformArray,kc=e.uniformCubeTexture,Gc=e.uniformGroup,Uc=e.uniformFlow,jc=e.uniformTexture,Ec=e.unpremultiplyAlpha,Wc=e.userData,qc=e.uv,zc=e.uvec2,Xc=e.uvec3,Zc=e.uvec4,Hc=e.varying,Kc=e.varyingProperty,Yc=e.vec2,Jc=e.vec3,Qc=e.vec4,$c=e.vectorComponents,em=e.velocity,tm=e.vertexColor,rm=e.vertexIndex,am=e.vertexStage,om=e.vibrance,im=e.viewZToLogarithmicDepth,nm=e.viewZToOrthographicDepth,lm=e.viewZToPerspectiveDepth,sm=e.viewport,cm=e.viewportCoordinate,mm=e.viewportDepthTexture,um=e.viewportLinearDepth,pm=e.viewportMipTexture,dm=e.viewportResolution,gm=e.viewportSafeUV,hm=e.viewportSharedTexture,xm=e.viewportSize,bm=e.viewportTexture,fm=e.viewportUV,vm=e.wgsl,wm=e.wgslFn,_m=e.workgroupArray,Sm=e.workgroupBarrier,Tm=e.workgroupId,ym=e.workingToColorSpace,Vm=e.xor;export{t as BRDF_GGX,r as BRDF_Lambert,a as BasicPointShadowFilter,o as BasicShadowFilter,i as Break,n as Const,l as Continue,s as DFGApprox,c as D_GGX,m as Discard,u as EPSILON,p as F_Schlick,d as Fn,M as HALF_PI,g as INFINITY,h as If,x as Loop,b as NodeAccess,f as NodeShaderStage,v as NodeType,w as NodeUpdateType,Vn as OnBeforeMaterialUpdate,yn as OnBeforeObjectUpdate,Fn as OnMaterialUpdate,Mn as OnObjectUpdate,_ as PCFShadowFilter,S as PCFSoftShadowFilter,T as PI,y as PI2,F as PointShadowFilter,I as Return,D as Schlick_to_F0,B as ScriptableNodeResources,P as ShaderNode,C as Stack,A as Switch,N as TBNViewMatrix,V as TWO_PI,R as VSMShadowFilter,O as V_GGX_SmithCorrelated,L as Var,k as VarIntent,G as abs,U as acesFilmicToneMapping,j as acos,E as add,W as addMethodChaining,q as addNodeElement,z as agxToneMapping,X as all,Z as alphaT,H as and,K as anisotropy,Y as anisotropyB,J as anisotropyT,Q as any,$ as append,ee as array,te as arrayBuffer,re as asin,ae as assign,oe as atan,ie as atan2,ne as atomicAdd,le as atomicAnd,se as atomicFunc,ce as atomicLoad,me as atomicMax,ue as atomicMin,pe as atomicOr,de as atomicStore,ge as atomicSub,he as atomicXor,xe as attenuationColor,be as attenuationDistance,fe as attribute,ve as attributeArray,we as backgroundBlurriness,_e as backgroundIntensity,Se as backgroundRotation,Te as batch,ye as bentNormalView,Ve as billboarding,Me as bitAnd,Fe as bitNot,Ie as bitOr,De as bitXor,Be as bitangentGeometry,Pe as bitangentLocal,Ce as bitangentView,Ae as bitangentWorld,Ne as bitcast,Re as blendBurn,Oe as blendColor,Le as blendDodge,ke as blendOverlay,Ge as blendScreen,Ue as blur,je as bool,Ee as buffer,We as bufferAttribute,Xe as builtin,qe as bumpMap,ze as burn,Ze as bvec2,He as bvec3,Ke as bvec4,Ye as bypass,Je as cache,Qe as call,$e as cameraFar,et as cameraIndex,tt as cameraNear,rt as cameraNormalMatrix,at as cameraPosition,ot as cameraProjectionMatrix,it as cameraProjectionMatrixInverse,nt as cameraViewMatrix,lt as cameraViewport,st as cameraWorldMatrix,ct as cbrt,mt as cdl,ut as ceil,pt as checker,dt as cineonToneMapping,gt as clamp,ht as clearcoat,xt as clearcoatNormalView,bt as clearcoatRoughness,ft as code,vt as color,wt as colorSpaceToWorking,_t as colorToDirection,St as compute,Tt as computeKernel,yt as computeSkinning,Vt as context,Mt as convert,Ft as convertColorSpace,It as convertToTexture,Dt as cos,Bt as cross,Pt as cubeTexture,Ct as cubeTextureBase,At as cubeToUV,Nt as dFdx,Rt as dFdy,Ot as dashSize,Lt as debug,kt as decrement,Gt as decrementBefore,Ut as defaultBuildStages,jt as defaultShaderStages,Et as defined,Wt as degrees,qt as deltaTime,zt as densityFog,Xt as densityFogFactor,Zt as depth,Ht as depthPass,Kt as determinant,Yt as difference,Jt as diffuseColor,Qt as directPointLight,$t as directionToColor,er as directionToFaceDirection,tr as dispersion,rr as distance,ar as div,or as dodge,ir as dot,nr as drawIndex,lr as dynamicBufferAttribute,sr as element,cr as emissive,mr as equal,ur as equals,pr as equirectUV,dr as exp,gr as exp2,hr as expression,xr as faceDirection,br as faceForward,fr as faceforward,vr as float,wr as floatBitsToInt,_r as floatBitsToUint,Sr as floor,Tr as fog,yr as fract,Vr as frameGroup,Mr as frameId,Fr as frontFacing,Ir as fwidth,Dr as gain,Br as gapSize,Pr as getConstNodeType,Cr as getCurrentStack,Ar as getDirection,Nr as getDistanceAttenuation,Rr as getGeometryRoughness,Or as getNormalFromDepth,kr as getParallaxCorrectNormal,Gr as getRoughness,Ur as getScreenPosition,jr as getShIrradianceAt,Er as getShadowMaterial,Wr as getShadowRenderObjectFunction,qr as getTextureIndex,zr as getViewPosition,Xr as globalId,Zr as glsl,Hr as glslFn,Kr as grayscale,Yr as greaterThan,Jr as greaterThanEqual,Qr as hash,$r as highpModelNormalViewMatrix,ea as highpModelViewMatrix,ta as hue,ra as increment,aa as incrementBefore,oa as instance,ia as instanceIndex,na as instancedArray,la as instancedBufferAttribute,sa as instancedDynamicBufferAttribute,ca as instancedMesh,ma as int,ua as intBitsToFloat,Lr as interleavedGradientNoise,pa as inverse,da as inverseSqrt,ga as inversesqrt,ha as invocationLocalIndex,xa as invocationSubgroupIndex,ba as ior,fa as iridescence,va as iridescenceIOR,wa as iridescenceThickness,_a as ivec2,Sa as ivec3,Ta as ivec4,ya as js,Va as label,Ma as length,Fa as lengthSq,Ia as lessThan,Da as lessThanEqual,Ba as lightPosition,Pa as lightProjectionUV,Ca as lightShadowMatrix,Aa as lightTargetDirection,Na as lightTargetPosition,Ra as lightViewPosition,Oa as lightingContext,La as lights,ka as linearDepth,Ga as linearToneMapping,Ua as localId,ja as log,Ea as log2,Wa as logarithmicDepthToViewZ,qa as luminance,za as mat2,Xa as mat3,Za as mat4,Ha as matcapUV,Ka as materialAO,Ya as materialAlphaTest,Ja as materialAnisotropy,Qa as materialAnisotropyVector,$a as materialAttenuationColor,eo as materialAttenuationDistance,to as materialClearcoat,ro as materialClearcoatNormal,ao as materialClearcoatRoughness,oo as materialColor,io as materialDispersion,no as materialEmissive,lo as materialEnvIntensity,so as materialEnvRotation,co as materialIOR,mo as materialIridescence,uo as materialIridescenceIOR,po as materialIridescenceThickness,go as materialLightMap,ho as materialLineDashOffset,xo as materialLineDashSize,bo as materialLineGapSize,fo as materialLineScale,vo as materialLineWidth,wo as materialMetalness,_o as materialNormal,So as materialOpacity,To as materialPointSize,yo as materialReference,Vo as materialReflectivity,Mo as materialRefractionRatio,Fo as materialRotation,Io as materialRoughness,Do as materialSheen,Bo as materialSheenRoughness,Po as materialShininess,Co as materialSpecular,Ao as materialSpecularColor,No as materialSpecularIntensity,Ro as materialSpecularStrength,Oo as materialThickness,Lo as materialTransmission,ko as max,Go as maxMipLevel,Uo as mediumpModelViewMatrix,jo as metalness,Eo as min,Wo as mix,qo as mixElement,zo as mod,Xo as modInt,Zo as modelDirection,Ho as modelNormalMatrix,Ko as modelPosition,Yo as modelRadius,Jo as modelScale,Qo as modelViewMatrix,$o as modelViewPosition,ei as modelViewProjection,ti as modelWorldMatrix,ri as modelWorldMatrixInverse,ai as morphReference,oi as mrt,ii as mul,ni as mx_aastep,li as mx_add,si as mx_atan2,ci as mx_cell_noise_float,mi as mx_contrast,ui as mx_divide,pi as mx_fractal_noise_float,di as mx_fractal_noise_vec2,gi as mx_fractal_noise_vec3,hi as mx_fractal_noise_vec4,xi as mx_frame,bi as mx_heighttonormal,fi as mx_hsvtorgb,vi as mx_ifequal,wi as mx_ifgreater,_i as mx_ifgreatereq,Si as mx_invert,Ti as mx_modulo,yi as mx_multiply,Vi as mx_noise_float,Mi as mx_noise_vec3,Fi as mx_noise_vec4,Ii as mx_place2d,Di as mx_power,Bi as mx_ramp4,Pi as mx_ramplr,Ci as mx_ramptb,Ai as mx_rgbtohsv,Ni as mx_rotate2d,Ri as mx_rotate3d,Oi as mx_safepower,Li as mx_separate,ki as mx_splitlr,Gi as mx_splittb,Ui as mx_srgb_texture_to_lin_rec709,ji as mx_subtract,Ei as mx_timer,Wi as mx_transform_uv,qi as mx_unifiednoise2d,zi as mx_unifiednoise3d,Xi as mx_worley_noise_float,Zi as mx_worley_noise_vec2,Hi as mx_worley_noise_vec3,Ki as negate,Yi as neutralToneMapping,Ji as nodeArray,Qi as nodeImmutable,$i as nodeObject,en as nodeObjectIntent,tn as nodeObjects,rn as nodeProxy,an as nodeProxyIntent,on as normalFlat,nn as normalGeometry,ln as normalLocal,sn as normalMap,cn as normalView,mn as normalViewGeometry,un as normalWorld,pn as normalWorldGeometry,dn as normalize,gn as not,hn as notEqual,xn as numWorkgroups,bn as objectDirection,fn as objectGroup,vn as objectPosition,wn as objectRadius,_n as objectScale,Sn as objectViewPosition,Tn as objectWorldMatrix,In as oneMinus,Dn as or,Bn as orthographicDepthToViewZ,Pn as oscSawtooth,Cn as oscSine,An as oscSquare,Nn as oscTriangle,Rn as output,On as outputStruct,Ln as overlay,kn as overloadingFn,Gn as parabola,Un as parallaxDirection,jn as parallaxUV,En as parameter,Wn as pass,qn as passTexture,zn as pcurve,Xn as perspectiveDepthToViewZ,Zn as pmremTexture,Hn as pointShadow,Kn as pointUV,Yn as pointWidth,Jn as positionGeometry,Qn as positionLocal,$n as positionPrevious,el as positionView,tl as positionViewDirection,rl as positionWorld,al as positionWorldDirection,ol as posterize,il as pow,nl as pow2,ll as pow3,sl as pow4,cl as premultiplyAlpha,ml as property,ul as radians,pl as rand,dl as range,gl as rangeFog,hl as rangeFogFactor,xl as reciprocal,bl as reference,fl as referenceBuffer,vl as reflect,wl as reflectVector,_l as reflectView,Sl as reflector,Tl as refract,yl as refractVector,Vl as refractView,Ml as reinhardToneMapping,Fl as remap,Il as remapClamp,Dl as renderGroup,Bl as renderOutput,Pl as rendererReference,Cl as rotate,Al as rotateUV,Nl as roughness,Rl as round,Ol as rtt,Ll as sRGBTransferEOTF,kl as sRGBTransferOETF,Gl as sample,Ul as sampler,jl as samplerComparison,El as saturate,Wl as saturation,ql as screen,zl as screenCoordinate,Xl as screenDPR,Zl as screenSize,Hl as screenUV,Kl as scriptable,Yl as scriptableValue,Jl as select,Ql as setCurrentStack,$l as setName,es as shaderStages,ts as shadow,rs as shadowPositionWorld,as as shapeCircle,os as sharedUniformGroup,is as sheen,ns as sheenRoughness,ls as shiftLeft,ss as shiftRight,cs as shininess,ms as sign,us as sin,ps as sinc,ds as skinning,gs as smoothstep,hs as smoothstepElement,xs as specularColor,bs as specularF90,fs as spherizeUV,vs as split,ws as spritesheetUV,_s as sqrt,Ss as stack,Ts as step,ys as stepElement,Vs as storage,Ms as storageBarrier,Fs as storageObject,Is as storageTexture,Ds as string,Bs as struct,Ps as sub,Gs as subBuild,Cs as subgroupAdd,As as subgroupAll,Ns as subgroupAnd,Rs as subgroupAny,Os as subgroupBallot,Ls as subgroupBroadcast,ks as subgroupBroadcastFirst,Us as subgroupElect,js as subgroupExclusiveAdd,Es as subgroupExclusiveMul,Ws as subgroupInclusiveAdd,qs as subgroupInclusiveMul,zs as subgroupIndex,Xs as subgroupMax,Zs as subgroupMin,Hs as subgroupMul,Ks as subgroupOr,Ys as subgroupShuffle,Js as subgroupShuffleDown,Qs as subgroupShuffleUp,$s as subgroupShuffleXor,ec as subgroupSize,tc as subgroupXor,rc as tan,ac as tangentGeometry,oc as tangentLocal,ic as tangentView,nc as tangentWorld,lc as texture,sc as texture3D,cc as textureBarrier,mc as textureBicubic,uc as textureBicubicLevel,pc as textureCubeUV,hc as textureLevel,dc as textureLoad,gc as textureSize,xc as textureStore,bc as thickness,fc as time,vc as toneMapping,wc as toneMappingExposure,_c as toonOutlinePass,Sc as transformDirection,Tc as transformNormal,yc as transformNormalToView,Vc as transformedClearcoatNormalView,Mc as transformedNormalView,Fc as transformedNormalWorld,Ic as transmission,Dc as transpose,Bc as triNoise3D,Pc as triplanarTexture,Cc as triplanarTextures,Ac as trunc,Nc as uint,Rc as uintBitsToFloat,Oc as uniform,Lc as uniformArray,kc as uniformCubeTexture,Uc as uniformFlow,Gc as uniformGroup,jc as uniformTexture,Ec as unpremultiplyAlpha,Wc as userData,qc as uv,zc as uvec2,Xc as uvec3,Zc as uvec4,Hc as varying,Kc as varyingProperty,Yc as vec2,Jc as vec3,Qc as vec4,$c as vectorComponents,em as velocity,tm as vertexColor,rm as vertexIndex,am as vertexStage,om as vibrance,im as viewZToLogarithmicDepth,nm as viewZToOrthographicDepth,lm as viewZToPerspectiveDepth,sm as viewport,cm as viewportCoordinate,mm as viewportDepthTexture,um as viewportLinearDepth,pm as viewportMipTexture,dm as viewportResolution,gm as viewportSafeUV,hm as viewportSharedTexture,xm as viewportSize,bm as viewportTexture,fm as viewportUV,vm as wgsl,wm as wgslFn,_m as workgroupArray,Sm as workgroupBarrier,Tm as workgroupId,ym as workingToColorSpace,Vm as xor};