three.tsl.js 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560
  1. /**
  2. * @license
  3. * Copyright 2010-2025 Three.js Authors
  4. * SPDX-License-Identifier: MIT
  5. */
  6. import { TSL } from 'three/webgpu';
  7. const BRDF_GGX = TSL.BRDF_GGX;
  8. const BRDF_Lambert = TSL.BRDF_Lambert;
  9. const BasicShadowFilter = TSL.BasicShadowFilter;
  10. const Break = TSL.Break;
  11. const Continue = TSL.Continue;
  12. const DFGApprox = TSL.DFGApprox;
  13. const D_GGX = TSL.D_GGX;
  14. const Discard = TSL.Discard;
  15. const EPSILON = TSL.EPSILON;
  16. const F_Schlick = TSL.F_Schlick;
  17. const Fn = TSL.Fn;
  18. const INFINITY = TSL.INFINITY;
  19. const If = TSL.If;
  20. const Switch = TSL.Switch;
  21. const Loop = TSL.Loop;
  22. const NodeShaderStage = TSL.NodeShaderStage;
  23. const NodeType = TSL.NodeType;
  24. const NodeUpdateType = TSL.NodeUpdateType;
  25. const NodeAccess = TSL.NodeAccess;
  26. const PCFShadowFilter = TSL.PCFShadowFilter;
  27. const PCFSoftShadowFilter = TSL.PCFSoftShadowFilter;
  28. const PI = TSL.PI;
  29. const PI2 = TSL.PI2;
  30. const Return = TSL.Return;
  31. const Schlick_to_F0 = TSL.Schlick_to_F0;
  32. const ScriptableNodeResources = TSL.ScriptableNodeResources;
  33. const ShaderNode = TSL.ShaderNode;
  34. const TBNViewMatrix = TSL.TBNViewMatrix;
  35. const VSMShadowFilter = TSL.VSMShadowFilter;
  36. const V_GGX_SmithCorrelated = TSL.V_GGX_SmithCorrelated;
  37. const abs = TSL.abs;
  38. const acesFilmicToneMapping = TSL.acesFilmicToneMapping;
  39. const acos = TSL.acos;
  40. const add = TSL.add;
  41. const addNodeElement = TSL.addNodeElement;
  42. const agxToneMapping = TSL.agxToneMapping;
  43. const all = TSL.all;
  44. const alphaT = TSL.alphaT;
  45. const and = TSL.and;
  46. const anisotropy = TSL.anisotropy;
  47. const anisotropyB = TSL.anisotropyB;
  48. const anisotropyT = TSL.anisotropyT;
  49. const any = TSL.any;
  50. const append = TSL.append;
  51. const array = TSL.array;
  52. const arrayBuffer = TSL.arrayBuffer;
  53. const asin = TSL.asin;
  54. const assign = TSL.assign;
  55. const atan = TSL.atan;
  56. const atan2 = TSL.atan2;
  57. const atomicAdd = TSL.atomicAdd;
  58. const atomicAnd = TSL.atomicAnd;
  59. const atomicFunc = TSL.atomicFunc;
  60. const atomicMax = TSL.atomicMax;
  61. const atomicMin = TSL.atomicMin;
  62. const atomicOr = TSL.atomicOr;
  63. const atomicStore = TSL.atomicStore;
  64. const atomicSub = TSL.atomicSub;
  65. const atomicXor = TSL.atomicXor;
  66. const atomicLoad = TSL.atomicLoad;
  67. const attenuationColor = TSL.attenuationColor;
  68. const attenuationDistance = TSL.attenuationDistance;
  69. const attribute = TSL.attribute;
  70. const attributeArray = TSL.attributeArray;
  71. const backgroundBlurriness = TSL.backgroundBlurriness;
  72. const backgroundIntensity = TSL.backgroundIntensity;
  73. const backgroundRotation = TSL.backgroundRotation;
  74. const batch = TSL.batch;
  75. const billboarding = TSL.billboarding;
  76. const bitAnd = TSL.bitAnd;
  77. const bitNot = TSL.bitNot;
  78. const bitOr = TSL.bitOr;
  79. const bitXor = TSL.bitXor;
  80. const bitangentGeometry = TSL.bitangentGeometry;
  81. const bitangentLocal = TSL.bitangentLocal;
  82. const bitangentView = TSL.bitangentView;
  83. const bitangentWorld = TSL.bitangentWorld;
  84. const bitcast = TSL.bitcast;
  85. const blendBurn = TSL.blendBurn;
  86. const blendColor = TSL.blendColor;
  87. const blendDodge = TSL.blendDodge;
  88. const blendOverlay = TSL.blendOverlay;
  89. const blendScreen = TSL.blendScreen;
  90. const blur = TSL.blur;
  91. const bool = TSL.bool;
  92. const buffer = TSL.buffer;
  93. const bufferAttribute = TSL.bufferAttribute;
  94. const bumpMap = TSL.bumpMap;
  95. const burn = TSL.burn;
  96. const bvec2 = TSL.bvec2;
  97. const bvec3 = TSL.bvec3;
  98. const bvec4 = TSL.bvec4;
  99. const bypass = TSL.bypass;
  100. const cache = TSL.cache;
  101. const call = TSL.call;
  102. const cameraFar = TSL.cameraFar;
  103. const cameraIndex = TSL.cameraIndex;
  104. const cameraNear = TSL.cameraNear;
  105. const cameraNormalMatrix = TSL.cameraNormalMatrix;
  106. const cameraPosition = TSL.cameraPosition;
  107. const cameraProjectionMatrix = TSL.cameraProjectionMatrix;
  108. const cameraProjectionMatrixInverse = TSL.cameraProjectionMatrixInverse;
  109. const cameraViewMatrix = TSL.cameraViewMatrix;
  110. const cameraWorldMatrix = TSL.cameraWorldMatrix;
  111. const cbrt = TSL.cbrt;
  112. const cdl = TSL.cdl;
  113. const ceil = TSL.ceil;
  114. const checker = TSL.checker;
  115. const cineonToneMapping = TSL.cineonToneMapping;
  116. const clamp = TSL.clamp;
  117. const clearcoat = TSL.clearcoat;
  118. const clearcoatRoughness = TSL.clearcoatRoughness;
  119. const code = TSL.code;
  120. const color = TSL.color;
  121. const colorSpaceToWorking = TSL.colorSpaceToWorking;
  122. const colorToDirection = TSL.colorToDirection;
  123. const compute = TSL.compute;
  124. const computeSkinning = TSL.computeSkinning;
  125. const cond = TSL.cond;
  126. const Const = TSL.Const;
  127. const context = TSL.context;
  128. const convert = TSL.convert;
  129. const convertColorSpace = TSL.convertColorSpace;
  130. const convertToTexture = TSL.convertToTexture;
  131. const cos = TSL.cos;
  132. const cross = TSL.cross;
  133. const cubeTexture = TSL.cubeTexture;
  134. const dFdx = TSL.dFdx;
  135. const dFdy = TSL.dFdy;
  136. const dashSize = TSL.dashSize;
  137. const debug = TSL.debug;
  138. const decrement = TSL.decrement;
  139. const decrementBefore = TSL.decrementBefore;
  140. const defaultBuildStages = TSL.defaultBuildStages;
  141. const defaultShaderStages = TSL.defaultShaderStages;
  142. const defined = TSL.defined;
  143. const degrees = TSL.degrees;
  144. const deltaTime = TSL.deltaTime;
  145. const densityFog = TSL.densityFog;
  146. const densityFogFactor = TSL.densityFogFactor;
  147. const depth = TSL.depth;
  148. const depthPass = TSL.depthPass;
  149. const difference = TSL.difference;
  150. const diffuseColor = TSL.diffuseColor;
  151. const directPointLight = TSL.directPointLight;
  152. const directionToColor = TSL.directionToColor;
  153. const dispersion = TSL.dispersion;
  154. const distance = TSL.distance;
  155. const div = TSL.div;
  156. const dodge = TSL.dodge;
  157. const dot = TSL.dot;
  158. const drawIndex = TSL.drawIndex;
  159. const dynamicBufferAttribute = TSL.dynamicBufferAttribute;
  160. const element = TSL.element;
  161. const emissive = TSL.emissive;
  162. const equal = TSL.equal;
  163. const equals = TSL.equals;
  164. const equirectUV = TSL.equirectUV;
  165. const exp = TSL.exp;
  166. const exp2 = TSL.exp2;
  167. const expression = TSL.expression;
  168. const faceDirection = TSL.faceDirection;
  169. const faceForward = TSL.faceForward;
  170. const faceforward = TSL.faceforward;
  171. const float = TSL.float;
  172. const floor = TSL.floor;
  173. const fog = TSL.fog;
  174. const fract = TSL.fract;
  175. const frameGroup = TSL.frameGroup;
  176. const frameId = TSL.frameId;
  177. const frontFacing = TSL.frontFacing;
  178. const fwidth = TSL.fwidth;
  179. const gain = TSL.gain;
  180. const gapSize = TSL.gapSize;
  181. const getConstNodeType = TSL.getConstNodeType;
  182. const getCurrentStack = TSL.getCurrentStack;
  183. const getDirection = TSL.getDirection;
  184. const getDistanceAttenuation = TSL.getDistanceAttenuation;
  185. const getGeometryRoughness = TSL.getGeometryRoughness;
  186. const getNormalFromDepth = TSL.getNormalFromDepth;
  187. const getParallaxCorrectNormal = TSL.getParallaxCorrectNormal;
  188. const getRoughness = TSL.getRoughness;
  189. const getScreenPosition = TSL.getScreenPosition;
  190. const getShIrradianceAt = TSL.getShIrradianceAt;
  191. const getTextureIndex = TSL.getTextureIndex;
  192. const getViewPosition = TSL.getViewPosition;
  193. const getShadowMaterial = TSL.getShadowMaterial;
  194. const getShadowRenderObjectFunction = TSL.getShadowRenderObjectFunction;
  195. const glsl = TSL.glsl;
  196. const glslFn = TSL.glslFn;
  197. const grayscale = TSL.grayscale;
  198. const greaterThan = TSL.greaterThan;
  199. const greaterThanEqual = TSL.greaterThanEqual;
  200. const hash = TSL.hash;
  201. const highpModelNormalViewMatrix = TSL.highpModelNormalViewMatrix;
  202. const highpModelViewMatrix = TSL.highpModelViewMatrix;
  203. const hue = TSL.hue;
  204. const increment = TSL.increment;
  205. const incrementBefore = TSL.incrementBefore;
  206. const instance = TSL.instance;
  207. const instanceIndex = TSL.instanceIndex;
  208. const instancedArray = TSL.instancedArray;
  209. const instancedBufferAttribute = TSL.instancedBufferAttribute;
  210. const instancedDynamicBufferAttribute = TSL.instancedDynamicBufferAttribute;
  211. const instancedMesh = TSL.instancedMesh;
  212. const int = TSL.int;
  213. const inverseSqrt = TSL.inverseSqrt;
  214. const inversesqrt = TSL.inversesqrt;
  215. const invocationLocalIndex = TSL.invocationLocalIndex;
  216. const invocationSubgroupIndex = TSL.invocationSubgroupIndex;
  217. const ior = TSL.ior;
  218. const iridescence = TSL.iridescence;
  219. const iridescenceIOR = TSL.iridescenceIOR;
  220. const iridescenceThickness = TSL.iridescenceThickness;
  221. const ivec2 = TSL.ivec2;
  222. const ivec3 = TSL.ivec3;
  223. const ivec4 = TSL.ivec4;
  224. const js = TSL.js;
  225. const label = TSL.label;
  226. const length = TSL.length;
  227. const lengthSq = TSL.lengthSq;
  228. const lessThan = TSL.lessThan;
  229. const lessThanEqual = TSL.lessThanEqual;
  230. const lightPosition = TSL.lightPosition;
  231. const lightShadowMatrix = TSL.lightShadowMatrix;
  232. const lightTargetDirection = TSL.lightTargetDirection;
  233. const lightTargetPosition = TSL.lightTargetPosition;
  234. const lightViewPosition = TSL.lightViewPosition;
  235. const lightingContext = TSL.lightingContext;
  236. const lights = TSL.lights;
  237. const linearDepth = TSL.linearDepth;
  238. const linearToneMapping = TSL.linearToneMapping;
  239. const localId = TSL.localId;
  240. const globalId = TSL.globalId;
  241. const log = TSL.log;
  242. const log2 = TSL.log2;
  243. const logarithmicDepthToViewZ = TSL.logarithmicDepthToViewZ;
  244. const loop = TSL.loop;
  245. const luminance = TSL.luminance;
  246. const mediumpModelViewMatrix = TSL.mediumpModelViewMatrix;
  247. const mat2 = TSL.mat2;
  248. const mat3 = TSL.mat3;
  249. const mat4 = TSL.mat4;
  250. const matcapUV = TSL.matcapUV;
  251. const materialAO = TSL.materialAO;
  252. const materialAlphaTest = TSL.materialAlphaTest;
  253. const materialAnisotropy = TSL.materialAnisotropy;
  254. const materialAnisotropyVector = TSL.materialAnisotropyVector;
  255. const materialAttenuationColor = TSL.materialAttenuationColor;
  256. const materialAttenuationDistance = TSL.materialAttenuationDistance;
  257. const materialClearcoat = TSL.materialClearcoat;
  258. const materialClearcoatNormal = TSL.materialClearcoatNormal;
  259. const materialClearcoatRoughness = TSL.materialClearcoatRoughness;
  260. const materialColor = TSL.materialColor;
  261. const materialDispersion = TSL.materialDispersion;
  262. const materialEmissive = TSL.materialEmissive;
  263. const materialIOR = TSL.materialIOR;
  264. const materialIridescence = TSL.materialIridescence;
  265. const materialIridescenceIOR = TSL.materialIridescenceIOR;
  266. const materialIridescenceThickness = TSL.materialIridescenceThickness;
  267. const materialLightMap = TSL.materialLightMap;
  268. const materialLineDashOffset = TSL.materialLineDashOffset;
  269. const materialLineDashSize = TSL.materialLineDashSize;
  270. const materialLineGapSize = TSL.materialLineGapSize;
  271. const materialLineScale = TSL.materialLineScale;
  272. const materialLineWidth = TSL.materialLineWidth;
  273. const materialMetalness = TSL.materialMetalness;
  274. const materialNormal = TSL.materialNormal;
  275. const materialOpacity = TSL.materialOpacity;
  276. const materialPointSize = TSL.materialPointSize;
  277. const materialReference = TSL.materialReference;
  278. const materialReflectivity = TSL.materialReflectivity;
  279. const materialRefractionRatio = TSL.materialRefractionRatio;
  280. const materialRotation = TSL.materialRotation;
  281. const materialRoughness = TSL.materialRoughness;
  282. const materialSheen = TSL.materialSheen;
  283. const materialSheenRoughness = TSL.materialSheenRoughness;
  284. const materialShininess = TSL.materialShininess;
  285. const materialSpecular = TSL.materialSpecular;
  286. const materialSpecularColor = TSL.materialSpecularColor;
  287. const materialSpecularIntensity = TSL.materialSpecularIntensity;
  288. const materialSpecularStrength = TSL.materialSpecularStrength;
  289. const materialThickness = TSL.materialThickness;
  290. const materialTransmission = TSL.materialTransmission;
  291. const max = TSL.max;
  292. const maxMipLevel = TSL.maxMipLevel;
  293. const metalness = TSL.metalness;
  294. const min = TSL.min;
  295. const mix = TSL.mix;
  296. const mixElement = TSL.mixElement;
  297. const mod = TSL.mod;
  298. const modInt = TSL.modInt;
  299. const modelDirection = TSL.modelDirection;
  300. const modelNormalMatrix = TSL.modelNormalMatrix;
  301. const modelPosition = TSL.modelPosition;
  302. const modelRadius = TSL.modelRadius;
  303. const modelScale = TSL.modelScale;
  304. const modelViewMatrix = TSL.modelViewMatrix;
  305. const modelViewPosition = TSL.modelViewPosition;
  306. const modelViewProjection = TSL.modelViewProjection;
  307. const modelWorldMatrix = TSL.modelWorldMatrix;
  308. const modelWorldMatrixInverse = TSL.modelWorldMatrixInverse;
  309. const morphReference = TSL.morphReference;
  310. const mrt = TSL.mrt;
  311. const mul = TSL.mul;
  312. const mx_aastep = TSL.mx_aastep;
  313. const mx_cell_noise_float = TSL.mx_cell_noise_float;
  314. const mx_contrast = TSL.mx_contrast;
  315. const mx_fractal_noise_float = TSL.mx_fractal_noise_float;
  316. const mx_fractal_noise_vec2 = TSL.mx_fractal_noise_vec2;
  317. const mx_fractal_noise_vec3 = TSL.mx_fractal_noise_vec3;
  318. const mx_fractal_noise_vec4 = TSL.mx_fractal_noise_vec4;
  319. const mx_hsvtorgb = TSL.mx_hsvtorgb;
  320. const mx_noise_float = TSL.mx_noise_float;
  321. const mx_noise_vec3 = TSL.mx_noise_vec3;
  322. const mx_noise_vec4 = TSL.mx_noise_vec4;
  323. const mx_ramplr = TSL.mx_ramplr;
  324. const mx_ramptb = TSL.mx_ramptb;
  325. const mx_rgbtohsv = TSL.mx_rgbtohsv;
  326. const mx_safepower = TSL.mx_safepower;
  327. const mx_splitlr = TSL.mx_splitlr;
  328. const mx_splittb = TSL.mx_splittb;
  329. const mx_srgb_texture_to_lin_rec709 = TSL.mx_srgb_texture_to_lin_rec709;
  330. const mx_transform_uv = TSL.mx_transform_uv;
  331. const mx_worley_noise_float = TSL.mx_worley_noise_float;
  332. const mx_worley_noise_vec2 = TSL.mx_worley_noise_vec2;
  333. const mx_worley_noise_vec3 = TSL.mx_worley_noise_vec3;
  334. const negate = TSL.negate;
  335. const neutralToneMapping = TSL.neutralToneMapping;
  336. const nodeArray = TSL.nodeArray;
  337. const nodeImmutable = TSL.nodeImmutable;
  338. const nodeObject = TSL.nodeObject;
  339. const nodeObjects = TSL.nodeObjects;
  340. const nodeProxy = TSL.nodeProxy;
  341. const normalFlat = TSL.normalFlat;
  342. const normalGeometry = TSL.normalGeometry;
  343. const normalLocal = TSL.normalLocal;
  344. const normalMap = TSL.normalMap;
  345. const normalView = TSL.normalView;
  346. const normalWorld = TSL.normalWorld;
  347. const normalize = TSL.normalize;
  348. const not = TSL.not;
  349. const notEqual = TSL.notEqual;
  350. const numWorkgroups = TSL.numWorkgroups;
  351. const objectDirection = TSL.objectDirection;
  352. const objectGroup = TSL.objectGroup;
  353. const objectPosition = TSL.objectPosition;
  354. const objectRadius = TSL.objectRadius;
  355. const objectScale = TSL.objectScale;
  356. const objectViewPosition = TSL.objectViewPosition;
  357. const objectWorldMatrix = TSL.objectWorldMatrix;
  358. const oneMinus = TSL.oneMinus;
  359. const or = TSL.or;
  360. const orthographicDepthToViewZ = TSL.orthographicDepthToViewZ;
  361. const oscSawtooth = TSL.oscSawtooth;
  362. const oscSine = TSL.oscSine;
  363. const oscSquare = TSL.oscSquare;
  364. const oscTriangle = TSL.oscTriangle;
  365. const output = TSL.output;
  366. const outputStruct = TSL.outputStruct;
  367. const overlay = TSL.overlay;
  368. const overloadingFn = TSL.overloadingFn;
  369. const parabola = TSL.parabola;
  370. const parallaxDirection = TSL.parallaxDirection;
  371. const parallaxUV = TSL.parallaxUV;
  372. const parameter = TSL.parameter;
  373. const pass = TSL.pass;
  374. const passTexture = TSL.passTexture;
  375. const pcurve = TSL.pcurve;
  376. const perspectiveDepthToViewZ = TSL.perspectiveDepthToViewZ;
  377. const pmremTexture = TSL.pmremTexture;
  378. const pointUV = TSL.pointUV;
  379. const pointWidth = TSL.pointWidth;
  380. const positionGeometry = TSL.positionGeometry;
  381. const positionLocal = TSL.positionLocal;
  382. const positionPrevious = TSL.positionPrevious;
  383. const positionView = TSL.positionView;
  384. const positionViewDirection = TSL.positionViewDirection;
  385. const positionWorld = TSL.positionWorld;
  386. const positionWorldDirection = TSL.positionWorldDirection;
  387. const posterize = TSL.posterize;
  388. const pow = TSL.pow;
  389. const pow2 = TSL.pow2;
  390. const pow3 = TSL.pow3;
  391. const pow4 = TSL.pow4;
  392. const property = TSL.property;
  393. const radians = TSL.radians;
  394. const rand = TSL.rand;
  395. const range = TSL.range;
  396. const rangeFog = TSL.rangeFog;
  397. const rangeFogFactor = TSL.rangeFogFactor;
  398. const reciprocal = TSL.reciprocal;
  399. const lightProjectionUV = TSL.lightProjectionUV;
  400. const reference = TSL.reference;
  401. const referenceBuffer = TSL.referenceBuffer;
  402. const reflect = TSL.reflect;
  403. const reflectVector = TSL.reflectVector;
  404. const reflectView = TSL.reflectView;
  405. const reflector = TSL.reflector;
  406. const refract = TSL.refract;
  407. const refractVector = TSL.refractVector;
  408. const refractView = TSL.refractView;
  409. const reinhardToneMapping = TSL.reinhardToneMapping;
  410. const remainder = TSL.remainder;
  411. const remap = TSL.remap;
  412. const remapClamp = TSL.remapClamp;
  413. const renderGroup = TSL.renderGroup;
  414. const renderOutput = TSL.renderOutput;
  415. const rendererReference = TSL.rendererReference;
  416. const rotate = TSL.rotate;
  417. const rotateUV = TSL.rotateUV;
  418. const roughness = TSL.roughness;
  419. const round = TSL.round;
  420. const rtt = TSL.rtt;
  421. const sRGBTransferEOTF = TSL.sRGBTransferEOTF;
  422. const sRGBTransferOETF = TSL.sRGBTransferOETF;
  423. const sampler = TSL.sampler;
  424. const samplerComparison = TSL.samplerComparison;
  425. const saturate = TSL.saturate;
  426. const saturation = TSL.saturation;
  427. const screen = TSL.screen;
  428. const screenCoordinate = TSL.screenCoordinate;
  429. const screenSize = TSL.screenSize;
  430. const screenUV = TSL.screenUV;
  431. const scriptable = TSL.scriptable;
  432. const scriptableValue = TSL.scriptableValue;
  433. const select = TSL.select;
  434. const setCurrentStack = TSL.setCurrentStack;
  435. const shaderStages = TSL.shaderStages;
  436. const shadow = TSL.shadow;
  437. const pointShadow = TSL.pointShadow;
  438. const shadowPositionWorld = TSL.shadowPositionWorld;
  439. const sharedUniformGroup = TSL.sharedUniformGroup;
  440. const shapeCircle = TSL.shapeCircle;
  441. const sheen = TSL.sheen;
  442. const sheenRoughness = TSL.sheenRoughness;
  443. const shiftLeft = TSL.shiftLeft;
  444. const shiftRight = TSL.shiftRight;
  445. const shininess = TSL.shininess;
  446. const sign = TSL.sign;
  447. const sin = TSL.sin;
  448. const sinc = TSL.sinc;
  449. const skinning = TSL.skinning;
  450. const smoothstep = TSL.smoothstep;
  451. const smoothstepElement = TSL.smoothstepElement;
  452. const specularColor = TSL.specularColor;
  453. const specularF90 = TSL.specularF90;
  454. const spherizeUV = TSL.spherizeUV;
  455. const split = TSL.split;
  456. const spritesheetUV = TSL.spritesheetUV;
  457. const sqrt = TSL.sqrt;
  458. const stack = TSL.stack;
  459. const step = TSL.step;
  460. const storage = TSL.storage;
  461. const storageBarrier = TSL.storageBarrier;
  462. const storageObject = TSL.storageObject;
  463. const storageTexture = TSL.storageTexture;
  464. const string = TSL.string;
  465. const struct = TSL.struct;
  466. const sub = TSL.sub;
  467. const subgroupIndex = TSL.subgroupIndex;
  468. const subgroupSize = TSL.subgroupSize;
  469. const tan = TSL.tan;
  470. const tangentGeometry = TSL.tangentGeometry;
  471. const tangentLocal = TSL.tangentLocal;
  472. const tangentView = TSL.tangentView;
  473. const tangentWorld = TSL.tangentWorld;
  474. const temp = TSL.temp;
  475. const texture = TSL.texture;
  476. const texture3D = TSL.texture3D;
  477. const textureBarrier = TSL.textureBarrier;
  478. const textureBicubic = TSL.textureBicubic;
  479. const textureCubeUV = TSL.textureCubeUV;
  480. const textureLoad = TSL.textureLoad;
  481. const textureSize = TSL.textureSize;
  482. const textureStore = TSL.textureStore;
  483. const thickness = TSL.thickness;
  484. const threshold = TSL.threshold;
  485. const time = TSL.time;
  486. const timerDelta = TSL.timerDelta;
  487. const timerGlobal = TSL.timerGlobal;
  488. const timerLocal = TSL.timerLocal;
  489. const toOutputColorSpace = TSL.toOutputColorSpace;
  490. const toWorkingColorSpace = TSL.toWorkingColorSpace;
  491. const toneMapping = TSL.toneMapping;
  492. const toneMappingExposure = TSL.toneMappingExposure;
  493. const toonOutlinePass = TSL.toonOutlinePass;
  494. const transformDirection = TSL.transformDirection;
  495. const transformNormal = TSL.transformNormal;
  496. const transformNormalToView = TSL.transformNormalToView;
  497. const transformedBentNormalView = TSL.transformedBentNormalView;
  498. const transformedBitangentView = TSL.transformedBitangentView;
  499. const transformedBitangentWorld = TSL.transformedBitangentWorld;
  500. const transformedClearcoatNormalView = TSL.transformedClearcoatNormalView;
  501. const transformedNormalView = TSL.transformedNormalView;
  502. const transformedNormalWorld = TSL.transformedNormalWorld;
  503. const transformedTangentView = TSL.transformedTangentView;
  504. const transformedTangentWorld = TSL.transformedTangentWorld;
  505. const transmission = TSL.transmission;
  506. const transpose = TSL.transpose;
  507. const tri = TSL.tri;
  508. const tri3 = TSL.tri3;
  509. const triNoise3D = TSL.triNoise3D;
  510. const triplanarTexture = TSL.triplanarTexture;
  511. const triplanarTextures = TSL.triplanarTextures;
  512. const trunc = TSL.trunc;
  513. const tslFn = TSL.tslFn;
  514. const uint = TSL.uint;
  515. const uniform = TSL.uniform;
  516. const uniformArray = TSL.uniformArray;
  517. const uniformGroup = TSL.uniformGroup;
  518. const uniforms = TSL.uniforms;
  519. const userData = TSL.userData;
  520. const uv = TSL.uv;
  521. const uvec2 = TSL.uvec2;
  522. const uvec3 = TSL.uvec3;
  523. const uvec4 = TSL.uvec4;
  524. const Var = TSL.Var;
  525. const varying = TSL.varying;
  526. const varyingProperty = TSL.varyingProperty;
  527. const vec2 = TSL.vec2;
  528. const vec3 = TSL.vec3;
  529. const vec4 = TSL.vec4;
  530. const vectorComponents = TSL.vectorComponents;
  531. const velocity = TSL.velocity;
  532. const vertexColor = TSL.vertexColor;
  533. const vertexIndex = TSL.vertexIndex;
  534. const vibrance = TSL.vibrance;
  535. const viewZToLogarithmicDepth = TSL.viewZToLogarithmicDepth;
  536. const viewZToOrthographicDepth = TSL.viewZToOrthographicDepth;
  537. const viewZToPerspectiveDepth = TSL.viewZToPerspectiveDepth;
  538. const viewport = TSL.viewport;
  539. const viewportBottomLeft = TSL.viewportBottomLeft;
  540. const viewportCoordinate = TSL.viewportCoordinate;
  541. const viewportDepthTexture = TSL.viewportDepthTexture;
  542. const viewportLinearDepth = TSL.viewportLinearDepth;
  543. const viewportMipTexture = TSL.viewportMipTexture;
  544. const viewportResolution = TSL.viewportResolution;
  545. const viewportSafeUV = TSL.viewportSafeUV;
  546. const viewportSharedTexture = TSL.viewportSharedTexture;
  547. const viewportSize = TSL.viewportSize;
  548. const viewportTexture = TSL.viewportTexture;
  549. const viewportTopLeft = TSL.viewportTopLeft;
  550. const viewportUV = TSL.viewportUV;
  551. const wgsl = TSL.wgsl;
  552. const wgslFn = TSL.wgslFn;
  553. const workgroupArray = TSL.workgroupArray;
  554. const workgroupBarrier = TSL.workgroupBarrier;
  555. const workgroupId = TSL.workgroupId;
  556. const workingToColorSpace = TSL.workingToColorSpace;
  557. const xor = TSL.xor;
  558. export { BRDF_GGX, BRDF_Lambert, BasicShadowFilter, Break, Const, Continue, DFGApprox, D_GGX, Discard, EPSILON, F_Schlick, Fn, INFINITY, If, Loop, NodeAccess, NodeShaderStage, NodeType, NodeUpdateType, PCFShadowFilter, PCFSoftShadowFilter, PI, PI2, Return, Schlick_to_F0, ScriptableNodeResources, ShaderNode, Switch, TBNViewMatrix, VSMShadowFilter, V_GGX_SmithCorrelated, Var, abs, acesFilmicToneMapping, acos, add, 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, 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, clearcoatRoughness, code, color, colorSpaceToWorking, colorToDirection, compute, computeSkinning, cond, context, convert, convertColorSpace, convertToTexture, cos, cross, cubeTexture, dFdx, dFdy, dashSize, debug, decrement, decrementBefore, defaultBuildStages, defaultShaderStages, defined, degrees, deltaTime, densityFog, densityFogFactor, depth, depthPass, difference, diffuseColor, directPointLight, directionToColor, 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, 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, loop, luminance, mat2, mat3, mat4, matcapUV, materialAO, materialAlphaTest, materialAnisotropy, materialAnisotropyVector, materialAttenuationColor, materialAttenuationDistance, materialClearcoat, materialClearcoatNormal, materialClearcoatRoughness, materialColor, materialDispersion, materialEmissive, 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_cell_noise_float, mx_contrast, mx_fractal_noise_float, mx_fractal_noise_vec2, mx_fractal_noise_vec3, mx_fractal_noise_vec4, mx_hsvtorgb, mx_noise_float, mx_noise_vec3, mx_noise_vec4, mx_ramplr, mx_ramptb, mx_rgbtohsv, mx_safepower, mx_splitlr, mx_splittb, mx_srgb_texture_to_lin_rec709, mx_transform_uv, mx_worley_noise_float, mx_worley_noise_vec2, mx_worley_noise_vec3, negate, neutralToneMapping, nodeArray, nodeImmutable, nodeObject, nodeObjects, nodeProxy, normalFlat, normalGeometry, normalLocal, normalMap, normalView, normalWorld, 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, property, radians, rand, range, rangeFog, rangeFogFactor, reciprocal, reference, referenceBuffer, reflect, reflectVector, reflectView, reflector, refract, refractVector, refractView, reinhardToneMapping, remainder, remap, remapClamp, renderGroup, renderOutput, rendererReference, rotate, rotateUV, roughness, round, rtt, sRGBTransferEOTF, sRGBTransferOETF, sampler, samplerComparison, saturate, saturation, screen, screenCoordinate, screenSize, screenUV, scriptable, scriptableValue, select, setCurrentStack, shaderStages, shadow, shadowPositionWorld, shapeCircle, sharedUniformGroup, sheen, sheenRoughness, shiftLeft, shiftRight, shininess, sign, sin, sinc, skinning, smoothstep, smoothstepElement, specularColor, specularF90, spherizeUV, split, spritesheetUV, sqrt, stack, step, storage, storageBarrier, storageObject, storageTexture, string, struct, sub, subgroupIndex, subgroupSize, tan, tangentGeometry, tangentLocal, tangentView, tangentWorld, temp, texture, texture3D, textureBarrier, textureBicubic, textureCubeUV, textureLoad, textureSize, textureStore, thickness, threshold, time, timerDelta, timerGlobal, timerLocal, toOutputColorSpace, toWorkingColorSpace, toneMapping, toneMappingExposure, toonOutlinePass, transformDirection, transformNormal, transformNormalToView, transformedBentNormalView, transformedBitangentView, transformedBitangentWorld, transformedClearcoatNormalView, transformedNormalView, transformedNormalWorld, transformedTangentView, transformedTangentWorld, transmission, transpose, tri, tri3, triNoise3D, triplanarTexture, triplanarTextures, trunc, tslFn, uint, uniform, uniformArray, uniformGroup, uniforms, userData, uv, uvec2, uvec3, uvec4, varying, varyingProperty, vec2, vec3, vec4, vectorComponents, velocity, vertexColor, vertexIndex, vibrance, viewZToLogarithmicDepth, viewZToOrthographicDepth, viewZToPerspectiveDepth, viewport, viewportBottomLeft, viewportCoordinate, viewportDepthTexture, viewportLinearDepth, viewportMipTexture, viewportResolution, viewportSafeUV, viewportSharedTexture, viewportSize, viewportTexture, viewportTopLeft, viewportUV, wgsl, wgslFn, workgroupArray, workgroupBarrier, workgroupId, workingToColorSpace, xor };