tsl-textures 2.5.0 → 2.5.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.
@@ -1,4 +1,4 @@
1
- // TSL Textures v2.4.0
1
+ // TSL Textures v2.5.0
2
2
 
3
3
  'use strict';
4
4
 
@@ -1,2 +1,2 @@
1
- /*! TSL Textures v2.4.0 */
1
+ /*! TSL Textures v2.5.0 */
2
2
  "use strict";var o=require("three/tsl"),e=require("three");const a=o.Fn((([e,a,t,r])=>{var s=r.add(e.mul(12)).mod(12),l=a.mul(o.min(t,o.sub(1,t)));return t.sub(l.mul(o.max(-1,o.min(o.min(s.sub(3),o.sub(9,s)),1))))}));a.setLayout({name:"hslHelper",type:"float",inputs:[{name:"h",type:"float"},{name:"s",type:"float"},{name:"l",type:"float"},{name:"n",type:"float"}]});const t=o.Fn((([e,t,r])=>{e=e.fract().add(1).fract(),t=t.clamp(0,1),r=r.clamp(0,1);var s=a(e,t,r,0),l=a(e,t,r,8),n=a(e,t,r,4);return o.vec3(s,l,n)}));t.setLayout({name:"hsl",type:"vec3",inputs:[{name:"h",type:"float"},{name:"s",type:"float"},{name:"l",type:"float"}]});const r=o.Fn((([e])=>{var a=o.float(e.x).toVar(),t=o.float(e.y).toVar(),r=o.float(e.z).toVar(),s=o.max(a,o.max(t,r)).toVar(),l=o.min(a,o.min(t,r)).toVar(),n=o.float(0).toVar(),i=o.float(0).toVar(),m=o.add(s,l).div(2);return o.If(l.notEqual(s),(()=>{const e=o.sub(s,l).toVar();i.assign(o.select(m.lessThanEqual(.5),e.div(o.add(l,s)),e.div(o.sub(2,o.add(l,s))))),o.If(s.equal(a),(()=>{n.assign(o.sub(t,r).div(e).add(o.select(t.lessThanEqual(r),6,0)))})).ElseIf(s.equal(t),(()=>{n.assign(o.sub(r,a).div(e).add(2))})).Else((()=>{n.assign(o.sub(a,t).div(e).add(4))})),n.divAssign(6)})),o.vec3(n,i,m)}));r.setLayout({name:"toHsl",type:"vec3",inputs:[{name:"rgb",type:"vec3"}]});const s=o.Fn((([e,a])=>o.vec3(o.sin(a).mul(o.sin(e)),o.cos(e),o.cos(a).mul(o.sin(e)))));s.setLayout({name:"spherical",type:"vec3",inputs:[{name:"phi",type:"float"},{name:"theta",type:"float"}]});const l=o.Fn((([o,e])=>{var a=n(e);return i(o,a)}));l.setLayout({name:"applyEuler",type:"vec4",inputs:[{name:"vec",type:"vec3"},{name:"eu",type:"vec3"}]});const n=o.Fn((([e])=>{var a=o.cos(e.x.div(2)),t=o.cos(e.y.div(2)),r=o.cos(e.z.div(2)),s=o.sin(e.x.div(2)),l=o.sin(e.y.div(2)),n=o.sin(e.z.div(2));return o.vec4(o.add(o.mul(s,t,r),o.mul(a,l,n)),o.sub(o.mul(a,l,r),o.mul(s,t,n)),o.add(o.mul(a,t,n),o.mul(s,l,r)),o.sub(o.mul(a,t,r),o.mul(s,l,n)))}));n.setLayout({name:"quaternionFromEuler",type:"vec4",inputs:[{name:"eu",type:"vec3"}]});const i=o.Fn((([e,a])=>{var t=o.cross(a.xyz,e).mul(2).toVar();return o.add(e,t.mul(a.w),o.cross(a.xyz,t))}));i.setLayout({name:"applyQuaternion",type:"vec3",inputs:[{name:"vec",type:"vec3"},{name:"quat",type:"vec4"}]});const m=o.Fn((([e,a,t,r,s])=>(e=o.remap(e,a,t,0,1),e=o.pow(2,o.mul(e,o.log2(s.div(r))).add(o.log2(r))))));m.setLayout({name:"remapExp",type:"float",inputs:[{name:"x",type:"float"},{name:"fromMin",type:"float"},{name:"fromMax",type:"float"},{name:"toMin",type:"float"},{name:"toMax",type:"float"}]});const d=o.Fn((([e])=>e.dot(o.vec3(12.9898,78.233,-97.5123)).sin().mul(43758.5453).fract().mul(2).sub(1)));d.setLayout({name:"vnoise",type:"float",inputs:[{name:"v",type:"vec3"}]});const u=o.Fn((([e])=>{var a=e.cos().toVar(),t=e.sin().toVar();return o.mat4(1,0,0,0,0,a,t,0,0,t.negate(),a,0,0,0,0,1)}));u.setLayout({name:"matRotX",type:"mat4",inputs:[{name:"angle",type:"float"}]});const c=o.Fn((([e])=>{var a=e.cos().toVar(),t=e.sin().toVar();return o.mat4(a,0,t.negate(),0,0,1,0,0,t,0,a,0,0,0,0,1)}));c.setLayout({name:"matRotY",type:"mat4",inputs:[{name:"angle",type:"float"}]});const p=o.Fn((([e])=>{var a=e.cos().toVar(),t=e.sin().toVar();return o.mat4(a,t,0,0,t.negate(),a,0,0,0,0,1,0,0,0,0,1)}));p.setLayout({name:"matRotZ",type:"mat4",inputs:[{name:"angle",type:"float"}]});const x=o.Fn((([o])=>{var e=u(o.x),a=c(o.y),t=p(o.z);return a.mul(e).mul(t)}));x.setLayout({name:"matRotYXZ",type:"mat4",inputs:[{name:"angles",type:"vec3"}]});const v=o.Fn((([e])=>o.mat4(e.x,0,0,0,0,e.y,0,0,0,0,e.z,0,0,0,0,1)));v.setLayout({name:"matScale",type:"mat4",inputs:[{name:"scales",type:"vec3"}]});const y=o.Fn((([e])=>o.mat4(1,0,0,0,0,1,0,0,0,0,1,0,e.x,e.y,e.z,1)));y.setLayout({name:"matTrans",type:"mat4",inputs:[{name:"vector",type:"vec3"}]});const f=o.Fn((([e,a,t,r])=>{var l=s(a.x,a.y).mul(r).toVar(),n=t.sub(l.div(2)).sub(e).dot(l).div(l.dot(l)).negate();return o.smoothstep(0,1,n)}));f.setLayout({name:"selectPlanar",type:"float",inputs:[{name:"pos",type:"vec3"},{name:"selAngles",type:"vec2"},{name:"selCenter",type:"vec3"},{name:"selWidth",type:"float"}]});const g=o.Fn((e=>{var a=f(o.positionGeometry,e.selectorAngles,e.selectorCenter,e.selectorWidth).sub(.5).mul(2).abs().oneMinus().pow(.25).negate().mul(e.selectorShow);return o.vec3(0,a,a)})),b=o.Fn((([e])=>{var a=o.dFdx(e),t=o.dFdy(e);return o.transformNormalToView(o.cross(a,t).normalize())}));b.setLayout({name:"normalVector",type:"vec3",inputs:[{name:"pos",type:"vec3"}]});var _=null,V=10;function w(a,t){var r=[];for(var s of a)if(s&&"object"==typeof s){r=Object.keys(s);break}var l={...t};for(var n of r)void 0!==a[n]&&(l[n]=a[n]);for(var i of Object.keys(l))"number"==typeof l[i]?l[i]=o.float(l[i]):l[i]instanceof e.Color?l[i]=o.vec3(l[i].r,l[i].g,l[i].b):l[i]instanceof e.Vector3&&(l[i]=o.vec3(l[i].x,l[i].y,l[i].z));return l}function h(e,a=1,t=1,r=0){return o.mx_noise_float(e.mul(a,t).add(r))}function z(e,a,t=null){const r=o.Fn(e,t),s=new Map;s.set("defaults",a),s.set("opacity",null),s.set("roughness",null),s.set("normal",null);const l=function(){};return Object.setPrototypeOf(l,Object.getPrototypeOf(r.call)),new Proxy(l,{get:(o,e,a)=>"defaults"===e?s.get("defaults"):"opacity"===e?s.get("opacity"):"roughness"===e?s.get("roughness"):"normal"===e?s.get("normal"):"fn"===e?r:Reflect.get(r,e,a),set:(o,e,a,t)=>"defaults"===e?(s.set("defaults",a),!0):"opacity"===e?(s.set("opacity",a),!0):"roughness"===e?(s.set("roughness",a),!0):"normal"===e?(s.set("normal",a),!0):Reflect.set(r,e,a,t),apply:(o,e,a)=>Reflect.apply(r,e,a),getOwnPropertyDescriptor:(o,e)=>"defaults"===e?{value:s.get("defaults"),writable:!0,enumerable:!0,configurable:!0}:("opacity"===e&&Reflect.getOwnPropertyDescriptor(null,e),"roughness"===e&&Reflect.getOwnPropertyDescriptor(null,e),"normal"===e&&Reflect.getOwnPropertyDescriptor(null,e),Reflect.getOwnPropertyDescriptor(r,e))})}var C={$name:"Brain",scale:2,smooth:.5,wave:.5,speed:2.5,color:new e.Color(16765136),background:new e.Color(5242880),seed:0},k=z((e=>{e=w(e,C);var a=o.positionGeometry.mul(o.exp(e.scale.div(3))).add(e.seed).toVar(),t=o.exp(e.smooth.oneMinus().mul(2)),r=o.mx_fractal_noise_float(a.mul(5),t).add(1).div(2).clamp(0,1).pow(2);return o.mix(e.color,e.background,r)}),C);k.normal=z((e=>{e=w(e,C);var a=o.positionGeometry.mul(o.exp(e.scale.div(3))).add(e.seed).toVar(),t=o.exp(e.smooth.oneMinus().mul(2)),r=.01,s=o.mx_fractal_noise_float(a.mul(5),t),l=o.mx_fractal_noise_float(a.add(o.vec3(r,0,0)).mul(5),t).sub(s).div(r),n=o.mx_fractal_noise_float(a.add(o.vec3(0,r,0)).mul(5),t).sub(s).div(r),i=o.mx_noise_float(a.mul(e.wave.mul(5))).add(1).div(2).mul(6.28);return o.vec3(l,n,o.time.mul(e.speed).add(i).sin().add(s,1)).normalize()}),C);var G={$name:"Camouflage",scale:2,colorA:new e.Color(12762792),colorB:new e.Color(10258782),colorC:new e.Color(9610101),colorD:new e.Color(7435617),seed:0},M=z((e=>{e=w(e,G);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=o.vec3(0,0,0).toVar();return o.If(o.round(o.mx_noise_float(a,1,.2)).greaterThanEqual(1),(()=>{t.assign(e.colorA)})).ElseIf(o.round(o.mx_noise_float(a.yzx,1,.3)).greaterThanEqual(1),(()=>{t.assign(e.colorB)})).ElseIf(o.round(o.mx_noise_float(a.zxy,1,.4)).greaterThanEqual(1),(()=>{t.assign(e.colorC)})).Else((()=>{t.assign(e.colorD)})),t}),G),$={$name:"Cave art",scale:2,thinness:2,noise:.3,color:new e.Color(13845829),background:new e.Color(16775408),seed:0},S=z((e=>{e=w(e,$);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=o.mx_noise_float(a,4).sin().toVar(),r=o.mx_noise_float(a.mul(1.5),4).cos().toVar(),s=o.exp(o.sub(o.float(3),e.thinness)),l=o.sub(s,o.pow2(o.abs(o.add(t,r))).mul(20)).toVar();return o.If(o.or(t.greaterThan(r),l.lessThan(0)),(()=>{l.assign(0)})),o.If(l.lessThanEqual(0),(()=>{l.assign(e.noise.mul(o.pow2(o.mx_noise_float(a.mul(30)))))})),o.mix(e.background,e.color,l)}),$),A={$name:"Circles",scale:2,variety:1,color:new e.Color(15786192),flat:0,seed:0},L=z((e=>{e=w(e,A);for(var a=o.select(e.flat,o.positionGeometry,o.positionGeometry.normalize()),s=o.acos(o.clamp(a.y,-1,1)).mul(20),l=o.exp(e.scale.sub(1)),n=s.div(3e3).mul(l),i=o.float(e.seed.sin().mul(100)).toVar(),m=0;m<=10;m++)i.addAssign(o.sin(n.mul(2**m).sub(Math.PI*m/2)).mul(-m*(m+1)/2));i.assign(i.div(200).clamp(-2,2));var d=r(e.color),u=d.x.add(i.mul(e.variety)).mod(1).mul(10),c=u.floor(),p=u.sub(c);return p=o.select(p.lessThan(.5),p.pow(1.5),p.pow(1/1.5)),t(c.add(p).div(10),d.y,d.z)}),A),F={$name:"Clouds",scale:2,density:.5,opacity:1,color:new e.Color(16777215),subcolor:new e.Color(10526896),seed:0},I=o.Fn((e=>{const a=o.positionGeometry,t=o.exp(e.scale.div(1.5).sub(.5)),r=o.add(h(a,t,1,e.seed),h(a,t,2,e.seed).mul(.8),h(a,t,6,e.seed).mul(.1),h(a,t,8,e.seed).mul(.07,e.opacity),e.density.remap(0,1,-.5,1.5)),s=o.clamp(0,1,o.mul(r,2).pow(1.5).sub(1).mul(e.opacity));return o.vec4(o.mix(e.subcolor,e.color,r.clamp(0,1)),s)})),P=z((o=>(o=w(o,F),I(o).rgb)),F);P.opacity=z((o=>(o=w(o,F),I(o).a)),F);var T={$name:"Concrete",$normalNode:!0,scale:2,density:.5,bump:.5,seed:0},B=o.Fn((([e,a,t,r,s])=>{var l=o.mx_noise_float(e.add(s)).mul(.5).add(.5);return l=t.mul(o.pow(o.abs(l),r)),e.add(l.mul(a))})),E=z((e=>{e=w(e,T);var a=o.positionGeometry.mul(o.exp(e.scale.div(2).add(2))).toVar(),t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.001).toVar(),s=o.cross(t,r).normalize().mul(.001).toVar(),l=o.remap(e.density,0,1,10,.5).toVar(),n=o.vec3(o.sin(e.seed).mul(100),o.cos(e.seed.div(2)).mul(100),o.sin(e.seed.div(3)).mul(100)).toVar(),i=B(a,t,e.bump,l,n),m=B(a.add(r),t,e.bump,l,n),d=B(a.add(s),t,e.bump,l,n),u=o.sub(m,i),c=o.sub(d,i);return o.transformNormalToView(o.cross(u,c).normalize())}),T),j={$name:"Cork",scale:1,straight:1,noise:.3,color:new e.Color(16773312),background:new e.Color(13664352),seed:0},R=o.Fn((([o])=>o.add(d(o)))),q=z((e=>{e=w(e,j);var a=o.positionGeometry.mul(o.exp(e.scale.div(1.5).add(1))).add(e.seed).toVar(),t=a.round().toVar(),r=t.toVar(),s=o.float(1).toVar(),l=o.vec3().toVar(),n=o.float().toVar(),i=o.float(0).toVar();o.Loop(27,(()=>{var m=i.mod(3).sub(1),d=i.div(3).floor().mod(3).sub(1),u=i.div(9).floor().sub(1);l.assign(t.add(o.vec3(m,d,u))),n.assign(a.distance(R(l))),n.addAssign(o.mx_noise_float(a.add(l)).div(e.straight.exp())),o.If(n.lessThan(s),(()=>{s.assign(n),r.assign(l)})),i.addAssign(1)}));var m=o.mx_noise_float(r.mul(Math.PI)).toVar(),d=o.mx_noise_float(a.mul(12)).toVar();d.assign(d.sign().mul(d.abs().pow3())),d.addAssign(o.mx_noise_float(a.mul(40)).div(3));var u=m.add(1).div(2);return o.mix(e.color,e.background,u.add(d.mul(e.noise))).toVar()}),j),W={$name:"Dalmatian spots",$width:260,scale:2,density:.6,color:new e.Color(16777215),background:new e.Color(0),seed:0},N=z((e=>{e=w(e,W);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).sub(1e3).toVar(),t=o.float(1).toVar(),r=o.float(1.5).sub(e.density).mul(2).toVar(),s=e.density.mul(5).add(5).toVar();return o.Loop(s,(()=>{t.mulAssign(o.mx_noise_float(a).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),a.assign(a.mul(1.01)),t.mulAssign(o.mx_noise_float(a.yzx).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),a.assign(a.mul(1.01)),t.mulAssign(o.mx_noise_float(a.zxy).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),a.assign(a.mul(1.01))})),o.mix(e.background,e.color,t.clamp(0,1))}),W),D={$name:"Darth Maul",scale:2,shift:new e.Vector3(0,0,0),complexity:0,angle:60,distance:1.9,color:new e.Color(15745088),background:new e.Color(0),balance:0,seed:0},O=z((e=>{e=w(e,D);var a=o.positionGeometry.add(e.shift).mul(o.exp(e.scale.div(1.5).sub(1))).sub(e.shift).mul(o.vec3(1,.5,.5)).toVar(),t=o.select(o.positionGeometry.y.mul(e.angle.radians().cos()).add(o.positionGeometry.z.mul(e.angle.radians().sin())).greaterThan(e.distance),1,0);a.x.assign(a.x.add(e.shift.x).abs()),a.y.addAssign(e.seed),a.z.mulAssign(e.shift.z);var r=o.mx_noise_float(a).toVar(),s=r.sin().mul(r.mul(e.complexity.mul(2).add(1).exp()).sin()).remap(0,.2,1,-1).greaterThan(e.balance).select(0,1),l=o.select(a.x.greaterThan(o.mx_noise_float(a.mul(2.3)).abs().mul(.5).add(.02)),1,0);return o.mix(e.background,e.color,s.mul(t).mul(l).clamp(0,1))}),D),U={$name:"Dyson sphere",scale:2,complexity:2,variation:0,color:new e.Color(12636415),background:new e.Color(0),seed:0},Y=o.Fn((([e])=>{var a=e.mul(5**.5).fract().toVar();return a.addAssign(a.dot(a.add(o.vec3(31.4159,27.1828,14.142)))),a.z.mul(a.x.add(a.y)).fract().mul(2).sub(1)})),H=o.Fn((([e])=>{var a=e.oneMinus().clamp(0,1).toVar();return a.mul(a).mul(o.float(3).sub(a.mul(2)))})),Z=o.Fn((([e])=>{var a=e.x.floor().toVar(),t=a.add(1).toVar(),r=e.y.floor().toVar(),s=r.add(1).toVar(),l=e.z.floor().toVar(),n=l.add(1).toVar(),i=H(e.x.fract()).toVar(),m=H(e.y.fract()).toVar(),d=H(e.z.fract()).toVar(),u=H(i.oneMinus()).toVar(),c=H(m.oneMinus()).toVar(),p=H(d.oneMinus()).toVar(),x=Y(o.vec3(a,r,l)).mul(u).mul(c).mul(p).toVar(),v=Y(o.vec3(a,r,n)).mul(u).mul(c).mul(d).toVar(),y=Y(o.vec3(a,s,l)).mul(u).mul(m).mul(p).toVar(),f=Y(o.vec3(a,s,n)).mul(u).mul(m).mul(d).toVar(),g=Y(o.vec3(t,r,l)).mul(i).mul(c).mul(p).toVar(),b=Y(o.vec3(t,r,n)).mul(i).mul(c).mul(d).toVar(),_=Y(o.vec3(t,s,l)).mul(i).mul(m).mul(p).toVar(),V=Y(o.vec3(t,s,n)).mul(i).mul(m).mul(d).toVar();return x.add(v).add(y).add(f).add(g).add(b).add(_).add(V)})),X=z((e=>{e=w(e,U);var a=o.positionGeometry.mul(o.exp(e.scale.div(2).add(.5))).add(e.seed).toVar(),t=o.vec3().toVar(),r=o.float(1).toVar();return o.Loop(e.complexity.add(4),(()=>{t.addAssign(Z(a.mul(r))),r.addAssign(r)})),o.mix(e.background,e.color,t.x.add(1).div(5))}),U),J={$name:"Entangled",scale:2,density:10,color:new e.Color(8256),background:new e.Color(16777215),seed:0},K=z((e=>{e=w(e,J);var a=o.exp(e.scale.div(2)).toVar(),t=o.positionGeometry.add(e.seed).toVar(),r=o.float(-1e4).toVar(),s=o.float(0).toVar();return o.Loop(o.floor(o.float(e.density)),(()=>{s.assign(o.sin(o.mx_noise_float(o.mul(t,a)).mul(3*Math.PI))),r.assign(o.max(r,s)),a.mulAssign(1.2)})),r.assign(o.oneMinus(o.pow(o.abs(r),5)).mul(6)),o.mix(e.color,e.background,r)}),J),Q={$name:"Fordite",scale:2,color:new e.Color(0,0,0),seed:0},oo=z((e=>{e=w(e,Q);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),r=o.mx_noise_float(o.vec3(o.mx_noise_float(a),o.mx_noise_float(a).mul(2),o.mx_noise_float(a).mul(3))).toVar();return t(r,1,o.sin(o.mul(r,Math.PI,4)).mul(.5).add(.5)).add(e.color)}),Q),eo={$name:"Gas giant",scale:2,turbulence:.3,blur:.6,colorA:new e.Color(16775408),colorB:new e.Color(15788208),colorC:new e.Color(11509968),seed:0},ao=z((e=>{var a=(e=w(e,eo)).scale.div(2).add(1).toVar(),s=o.positionGeometry.mul(o.exp(a)).add(e.seed).toVar(),l=e.turbulence.mul(o.mx_noise_float(o.vec3(0,s.y.mul(.5),0).add(1)).add(o.mx_noise_float(o.vec3(0,s.y.mul(1),0).add(1)).mul(.5),o.mx_noise_float(o.vec3(1,s.y.mul(2),1).add(1)).mul(.25))).mul(5).abs().toVar(),n=o.mx_noise_float(s.div(4)).add(1).div(2).pow(10).mul(10).smoothstep(0,1);s.addAssign(o.vec3(o.mx_noise_float(s),o.mx_noise_float(s.yxz),o.mx_noise_float(s.yzx)).mul(l.mul(n.mul(2).exp())));var i=e.blur.pow(.2).oneMinus().mul(l.add(1)).toVar(),m=o.mx_noise_float(s.mul(o.vec3(0,a,0)));m=(m=m.add(o.mx_noise_float(s.mul(o.vec3(1,15,1))).mul(i))).add(-.5).smoothstep(-1,1).oneMinus();var d=o.mx_noise_float(o.vec3(0,s.y.mul(.75),0)).add(1),u=r(o.mix(e.colorB,e.colorA,d)),c=t(u.x.add(o.mx_noise_float(s.mul(o.vec3(0,a,0))).div(4)),u.y,u.z).toVar();return c.assign(o.mix(c,e.colorC,l.mul(.3))),c.mul(m)}),eo),to={$name:"Grid",countU:32,countV:16,thinness:.8,color:new e.Color(0),background:new e.Color(16777215),flat:0},ro=z((e=>{e=w(e,to);var a=o.select(e.flat,o.screenSize.x.div(o.screenSize.y),2),t=o.select(e.flat,o.screenUV,o.equirectUV(o.positionGeometry.normalize())).toVar(),r=o.mul(t.x,a,Math.PI),s=o.mul(t.y,Math.PI).toVar(),l=o.div(o.round(o.mul(t.x,e.countU)),e.countU),n=o.div(o.round(o.mul(t.y,e.countV)),e.countV),i=o.mul(l,a,Math.PI),m=o.mul(n,Math.PI),d=o.abs(o.sub(r,i)).mul(o.select(e.flat,1,o.sin(s))),u=o.abs(o.sub(s,m)),c=o.min(d,u),p=o.mul(o.min(o.div(a.mul(Math.PI),e.countU),o.div(Math.PI,e.countV)),o.remapClamp(o.pow(e.thinness,.5),0,1,.9,.04),.5),x=o.oneMinus(o.smoothstep(o.sub(p,.002),o.add(p,.002),c));return o.mix(e.background,e.color,x)}),to),so={$name:"Isolines",scale:2,density:40,blur:.3,thinness:.6,color:new e.Color(16777215),background:new e.Color(0),seed:0},lo=z((e=>{e=w(e,so);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=o.mx_noise_float(a).mul(e.density);return t=o.oneMinus(o.sin(t)).div(2),t=o.smoothstep(o.sub(e.thinness,e.blur),o.add(e.thinness,e.blur),t),o.mix(e.color,e.background,t)}),so),no={$name:"Karst rock",scale:2,color:new e.Color(16774384),background:new e.Color(13684944),seed:0},io=z((e=>{e=w(e,no);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed.sin().mul(5)).toVar(),t=a.add(o.mx_noise_float(a.mul(2))).toVar(),r=o.mx_noise_float(t).div(o.mx_noise_float(t.mul(1.01))).clamp(0,2).toVar();return r.addAssign(o.mx_noise_float(a.mul(100)).div(3)),r.addAssign(o.mx_noise_float(a.mul(2)).div(2)),o.mix(e.background,e.color,r).mul(r.pow(.1))}),no),mo={$name:"Marble",scale:1.2,thinness:5,noise:.3,color:new e.Color(4539859),background:new e.Color(15792383),seed:0},uo=z((e=>{e=w(e,mo);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=o.add(o.mx_noise_float(a),o.mx_noise_float(a.mul(2)).mul(.5),o.mx_noise_float(a.mul(6)).mul(.1)),r=(t=o.oneMinus(t.abs().pow(2.5)).toVar(),o.oneMinus(o.pow(.5,e.thinness.add(7))).toVar()),s=o.oneMinus(o.pow(.5,e.thinness.add(7).mul(.5))).toVar();return o.If(t.greaterThan(r),(()=>{t.assign(1)})).ElseIf(t.lessThan(s),(()=>{t.assign(0)})).Else((()=>{var e=t.sub(s),l=r.sub(s);t.assign(o.pow(o.div(e,l),5).mul(.75)),t.assign(t.mul(o.add(.5,o.mx_noise_float(a.mul(2)).mul(1.5))))})),t.assign(t.add(o.mul(e.noise,o.mx_noise_float(a.mul(150)).abs().pow3()))),o.mix(e.background,e.color,t)}),mo),co={$name:"Neon Lights",scale:1.5,thinness:.8,mode:0,colorA:new e.Color(16711680),colorB:new e.Color(65280),colorC:new e.Color(255),background:new e.Color(0),seed:0},po=z((e=>{e=w(e,co);var a=o.positionGeometry,s=o.exp(e.scale.remap(0,4,2,-2)).toVar(),l=o.exp(e.thinness.remap(0,1,1.5,0)).toVar(),n=e.background.toVar(),i=o.vec3(0).toVar(),m=o.mx_noise_float(a.xyz).toVar(),d=o.mx_noise_float(a.yzx).toVar(),u=o.mx_noise_float(a.zxy).toVar(),c=o.mx_noise_float(o.vec3(m,d,u).mul(s).add(e.seed)).toVar();c.assign(o.oneMinus(o.sqrt(o.abs(c))).pow(3)),i.assign(e.colorA);var p=r(i);i.assign(t(p.x,p.y,p.z.mul(c))),n.addAssign(o.select(e.mode.equal(0),i,i.negate()).mul(l)),c.assign(o.mx_noise_float(o.vec3(d,u,m).mul(s).sub(e.seed))),c.assign(o.oneMinus(o.sqrt(o.abs(c))).pow(3)),i.assign(e.colorB);p=r(i);i.assign(t(p.x,p.y,p.z.mul(c))),n.addAssign(o.select(e.mode.equal(0),i,i.negate()).mul(l)),c.assign(o.mx_noise_float(o.vec3(u,m,d.negate()).mul(s).add(e.seed))),c.assign(o.oneMinus(o.sqrt(o.abs(c))).pow(3)),i.assign(e.colorC);p=r(i);return i.assign(t(p.x,p.y,p.z.mul(c))),n.addAssign(o.select(e.mode.equal(0),i,i.negate()).mul(l)),n}),co),xo={$name:"Photosphere",scale:2,color:new e.Color(16776960),background:new e.Color(16711680),seed:0},vo=z((e=>{e=w(e,xo);var a=o.exp(e.scale.add(1)).toVar(),t=o.positionGeometry.toVar(),r=o.vec3(t).toVar();o.Loop(6,(()=>{r.assign(l(r,t.mul(a))),a.mulAssign(e.seed.mul(a).sin().mul(.05).add(1.1))}));var s=o.mx_noise_float(r).add(1).div(2);return o.mix(e.background,e.color,s)}),xo),yo={$name:"Planet",scale:2,iterations:5,levelSea:.3,levelMountain:.7,balanceWater:.3,balanceSand:.2,balanceSnow:.8,colorDeep:new e.Color(1194585).convertLinearToSRGB(),colorShallow:new e.Color(8900331).convertLinearToSRGB(),colorBeach:new e.Color(16775885).convertLinearToSRGB(),colorGrass:new e.Color(3978097).convertLinearToSRGB(),colorForest:new e.Color(12288).convertLinearToSRGB(),colorSnow:new e.Color(15794175).convertLinearToSRGB(),seed:0},fo=z((e=>{e=w(e,yo);var a=o.float(0).toVar(),t=o.float(0).toVar(),r=o.exp(e.scale.sub(2)).toVar(),s=o.float(2).toVar();o.Loop(e.iterations.add(10),(()=>{a.addAssign(o.mul(s,o.mx_noise_float(o.positionGeometry.mul(r).add(e.seed)))),t.addAssign(s),r.mulAssign(1.5),s.mulAssign(.8)})),a.assign(o.mul(a,a,.5).div(t));var l=e.levelSea.pow(2).toVar(),n=e.levelMountain.pow(2).toVar(),i=o.mix(l,n,e.balanceSand).toVar(),m=o.mix(l,i,.4).toVar(),d=o.mix(l,i,.6).toVar(),u=o.vec3().toVar();return o.If(a.lessThan(l),(()=>{u.assign(o.mix(e.colorDeep,e.colorShallow,o.remap(a,0,l,0,1).pow(o.exp(e.balanceWater.mul(-8).add(4)))))})).ElseIf(a.lessThan(m),(()=>{u.assign(o.mix(e.colorShallow,e.colorBeach,o.remap(a,l,m)))})).ElseIf(a.lessThan(d),(()=>{u.assign(e.colorBeach)})).ElseIf(a.lessThan(i),(()=>{u.assign(o.mix(e.colorBeach,e.colorGrass,o.remap(a,d,i)))})).ElseIf(a.lessThan(n),(()=>{u.assign(o.mix(e.colorGrass,e.colorForest,o.remap(a,i,n).pow(.75)))})).Else((()=>{var t=o.mix(1,n,e.balanceSnow);u.assign(o.mix(e.colorForest,e.colorSnow,o.smoothstep(o.mix(t,n,e.balanceSnow.pow(.5)),t,a)))})),u}),yo),go={$name:"Polka dots",count:2,size:.5,blur:.25,color:new e.Color(0),background:new e.Color(16777215),flat:0},bo=(1+5**.5)/2,_o=z((e=>{e=w(e,go);var a=o.float(1).toVar();o.If(e.flat.equal(1),(()=>{var t=e.count.pow(2).sub(.5).toVar(),r=o.positionGeometry.xy.mul(t).mul(o.mat2(1,1,-1,1)),s=r.round().toVar();a.assign(r.distance(s).div(t))})).Else((()=>{var t=o.pow(10,e.count).toVar(),r=o.positionGeometry.normalize().toVar(),l=o.oneMinus(r.y).mul(t).sub(1).div(2),n=o.max(10,t.pow(.5)),i=l.sub(n).floor().clamp(0,t),m=l.add(n).floor().clamp(0,t);a.assign(1).toVar(),o.Loop(m.sub(i),(({i:e})=>{var l=o.add(e,i),n=o.mod(o.mul(2*Math.PI/bo,l),2*Math.PI),m=o.acos(o.oneMinus(o.float(l).mul(2).add(1).div(t))),d=s(m,n);a.assign(o.min(a,o.distance(r,d)))}))}));var t=o.exp(e.size.mul(5).sub(5)).toVar(),r=e.blur.pow(4).toVar(),l=o.smoothstep(t.sub(r),t.add(r),a);return o.mix(e.color,e.background,l)}),go),Vo={$name:"Processed wood",$width:260,scale:2,lengths:4,strength:.3,angle:0,color:new e.Color(7348256),background:new e.Color(15782048),seed:0},wo=z((e=>{e=w(e,Vo);var a=o.radians(e.angle).toVar(),t=o.vec3(o.sub(o.positionGeometry.x.mul(o.cos(a)),o.positionGeometry.y.mul(o.sin(a))),o.add(o.positionGeometry.x.mul(o.sin(a)),o.positionGeometry.y.mul(o.cos(a))),o.positionGeometry.z).toVar(),r=e.scale.div(2).add(1).toVar(),s=t.mul(o.exp(r)).add(e.seed).toVar(),l=e.lengths.add(5).reciprocal().toVar(),n=o.mx_noise_float(s.mul(r,o.vec3(1,l,l)));return n=(n=n.mul(o.mx_noise_float(s.mul(o.vec3(25,1,1))).add(-1).mul(.2))).add(e.strength.sub(.5)).smoothstep(-.3,.3).oneMinus(),o.mix(e.color,e.background,n)}),Vo),ho={$name:"Protozoa",scale:1.5,fat:.7,amount:.4,color:new e.Color(10526880),subcolor:new e.Color(14739711),background:new e.Color(15792383),seed:0},zo=o.Fn((([e,a])=>o.mx_noise_float(e).mul(a).clamp(-3.14,3.14).cos().add(1).div(2))),Co=z((e=>{e=w(e,ho);var a=o.positionGeometry.mul(o.exp(e.scale.sub(1))).add(e.seed).toVar(),t=o.vec3(o.matcapUV,o.matcapUV.length()).toVar(),r=o.float(0).toVar(),s=o.float(0).toVar(),l=o.float(0).toVar(),n=o.float(0).toVar(),i=e.fat.add(.2).oneMinus().mul(60).add(30).toVar(),m=o.float(2).toVar(),d=e.amount.div(2).add(.5).exp().toVar();return o.Loop(10,(()=>{r.assign(zo(a.xyz.add(t),i)),s.assign(zo(a.yzx.add(t),i)),l.addAssign(r.mul(s).mul(m)),n.addAssign(r.max(s).mul(m)),a.assign(o.mix(a.mul(d),0,.4)),m.mulAssign(.9)})),o.mix(e.background,o.mix(e.color,e.subcolor,n.mul(.1)),l)}),ho),ko={$name:"Rotator",$positionNode:!0,$selectorPlanar:!0,angles:new e.Vector3(.4,-.6,0),center:new e.Vector3(0,0,0),selectorCenter:new e.Vector3(0,0,0),selectorAngles:new e.Vector2(0,0),selectorWidth:2},Go=o.Fn((([e,a])=>{var t=f(e,a.selectorAngles,a.selectorCenter,a.selectorWidth),r=x(a.angles.mul(t)),s=y(a.center),l=y(a.center.negate());return s.mul(r).mul(l).mul(o.vec4(e,1)).xyz})),Mo=z((e=>(e=w(e,ko),Go(o.positionGeometry,e))),ko);Mo.normal=z((e=>{e=w(e,ko);var a=o.positionGeometry,t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.01).toVar(),s=o.cross(t,r).normalize().mul(.01).toVar(),l=Go(a,e),n=Go(a.add(r),e),i=Go(a.add(s),e),m=o.sub(n,l),d=o.sub(i,l);return o.transformNormalToView(o.cross(m,d).normalize())}),ko);var $o={$name:"Rough clay",$normalNode:!0,scale:2,bump:.5,curvature:.2,seed:0},So=o.Fn((([e,a,t,r])=>{var s=o.mx_worley_noise_float(e.add(o.mx_noise_float(e).mul(r))).add(.8).pow(5).toVar();return s.addAssign(s.pow(.5)),e.add(a.mul(s).mul(t))})),Ao=z((e=>{var a=(e=w(e,$o)).bump.div(50).toVar(),t=o.positionGeometry.mul(o.exp(e.scale.div(2))).add(e.seed.sin().mul(10)).toVar(),r=o.normalLocal.normalize().toVar(),s=o.tangentLocal.normalize().mul(.001).toVar(),l=o.cross(r,s).normalize().mul(.001).toVar(),n=So(t,r,a,e.curvature),i=So(t.add(s),r,a,e.curvature),m=So(t.add(l),r,a,e.curvature),d=o.sub(i,n),u=o.sub(m,n);return o.transformNormalToView(o.cross(d,u).normalize())}),$o),Lo={$name:"Runny eggs",scale:1,sizeYolk:.2,sizeWhite:.7,colorYolk:new e.Color("orange"),colorWhite:new e.Color("white"),colorBackground:new e.Color("lightgray"),seed:0},Fo=z((e=>{e=w(e,Lo);var a=o.positionGeometry.mul(o.exp(e.scale.div(1))).add(e.seed.sin().mul(10)).toVar(),t=e.sizeYolk.oneMinus(),r=e.sizeWhite.oneMinus(),s=o.mx_worley_noise_float(a).toVar(),l=s.add(r).pow(8).oneMinus().clamp(-.5,1),n=s.add(t).pow(18).oneMinus().clamp(0,1).pow(.4).clamp(0,1);return o.mix(e.colorBackground,o.mix(e.colorWhite,e.colorYolk,n),l)}),Lo),Io=o.Fn((([e,a,t,r,s])=>{var l=o.mx_worley_noise_float(e).toVar(),n=l.add(s).pow(8).oneMinus(),i=l.add(r).pow(18).oneMinus().clamp(0,1),m=o.mix(0,o.mix(0,1,i),n);return e.add(a.mul(m).mul(t))}));Fo.normal=z((e=>{e=w(e,Lo);var a=.05,t=o.positionGeometry.mul(o.exp(e.scale.div(1))).add(e.seed.sin().mul(10)).toVar(),r=o.normalLocal.normalize().toVar(),s=o.tangentLocal.normalize().mul(.001).toVar(),l=o.cross(r,s).normalize().mul(.001).toVar(),n=e.sizeYolk.oneMinus(),i=e.sizeWhite.oneMinus(),m=Io(t,r,a,n,i),d=Io(t.add(s),r,a,n,i),u=Io(t.add(l),r,a,n,i),c=o.sub(d,m),p=o.sub(u,m);return o.transformNormalToView(o.cross(c,p).normalize())}),Lo),Fo.roughness=z((e=>{e=w(e,Lo);var a=o.positionGeometry.mul(o.exp(e.scale.div(1))).add(e.seed.sin().mul(10)).toVar(),t=e.sizeYolk.oneMinus();return o.mx_worley_noise_float(a).toVar().add(t).pow(18).clamp(0,1)}),Lo);var Po={$name:"rust",scale:2,iterations:8,amount:-.3,opacity:.5,noise:.5,noiseScale:.5,color:new e.Color(12615680),background:new e.Color(32),seed:0},To=o.Fn((e=>{var a=o.positionGeometry.mul(o.exp(e.scale.div(4).add(-1))).add(e.seed).toVar(),t=e.amount.mul(o.mx_noise_float(a.mul(e.amount.div(2).add(4))).add(4)).toVar(),r=o.mx_noise_float(a).toVar();return o.Loop(e.iterations,(()=>{a.mulAssign(2),r.addAssign(o.mx_noise_float(a))})),r.subAssign(o.mx_noise_float(a.mul(2)).abs()),r.assign(r.sub(t).clamp(0,15)),r})),Bo=z((e=>{e=w(e,Po);var a=To(e).mul(1.25).pow(.5),t=o.positionGeometry.mul(o.exp(e.scale.add(e.noiseScale.mul(3),2)));return a.addAssign(e.noise.mul(o.mx_noise_float(t).abs().add(.1).pow(2))),o.mix(e.color,e.background,a)}),Po);Bo.opacity=z((o=>(o=w(o,Po),To(o).mul(o.opacity.add(.2)).oneMinus())),Po);var Eo={$name:"Satin",scale:2,color:new e.Color(7373055),background:new e.Color(80),seed:0},jo=z((e=>{e=w(e,Eo);var a=o.positionGeometry.toVar(),t=o.exp(e.scale.div(3)).toVar(),r=o.mx_noise_float(o.vec3(o.mx_noise_float(o.vec3(a.x.mul(2),a.y,a.z).mul(t)),o.mx_noise_float(o.vec3(a.x,a.y.mul(2),a.z).mul(t)),o.mx_noise_float(o.vec3(a.x,a.y,a.z.mul(2)).mul(t))).mul(t).add(e.seed));return r=o.pow(o.abs(r),3).mul(20),o.mix(e.background,e.color,r)}),Eo);jo.defaults={$name:"Satin",scale:2,color:new e.Color(7373055),background:new e.Color(80),seed:0};var Ro={$name:"Scaler",$positionNode:!0,$selectorPlanar:!0,scales:new e.Vector3(.01,.9,1.7),center:new e.Vector3(0,0,0),selectorCenter:new e.Vector3(0,0,0),selectorAngles:new e.Vector2(0,0),selectorWidth:2},qo=o.Fn((([e,a])=>{var t=f(e,a.selectorAngles,a.selectorCenter,a.selectorWidth),r=v(o.mix(o.vec3(1,1,1),a.scales,t)),s=y(a.center),l=y(a.center.negate());return s.mul(r).mul(l).mul(o.vec4(e,1)).xyz})),Wo=z((e=>(e=w(e,Ro),qo(o.positionGeometry,e))),Ro);Wo.normal=z((e=>{e=w(e,Ro);var a=o.positionGeometry,t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.01).toVar(),s=o.cross(t,r).normalize().mul(.01).toVar(),l=qo(a,e),n=qo(a.add(r),e),i=qo(a.add(s),e),m=o.sub(n,l),d=o.sub(i,l);return o.transformNormalToView(o.cross(m,d).normalize())}),Ro);var No={$name:"Scepter head",xFactor:10,yFactor:22,zFactor:10,colorRim:new e.Color(16777215),colorA:new e.Color(7397631),colorB:new e.Color(3145983)},Do=z((e=>{e=w(e,No);var a=o.positionGeometry,s=a.x.mul(m(e.xFactor,0,100,1.35,30)).toVar(),l=a.y.mul(m(e.yFactor,0,100,1.35,30)).toVar(),n=a.z.mul(m(e.zFactor,0,100,1.35,30)).toVar(),i=o.cos(s).toVar(),d=o.cos(l).toVar(),u=o.cos(n).toVar(),c=o.mx_noise_float(o.vec3(a.x.div(i),a.y.div(d),a.z.div(u)));c=o.sign(c).mul(o.abs(c).pow(.75));var p=o.abs(o.mul(s,o.tan(s)).add(1).div(o.cos(s))),x=o.abs(o.mul(l,o.tan(l)).add(1).div(o.cos(l))),v=o.abs(o.mul(n,o.tan(n)).add(1).div(o.cos(n))),y=o.vec3().toVar(),f=o.abs(o.floor(s.mul(2/Math.PI).add(1).div(2))),g=o.abs(o.floor(l.mul(2/Math.PI).add(1).div(2))),b=o.abs(o.floor(n.mul(2/Math.PI).add(1).div(2))),_=o.mod(o.add(f,g,b),2);y.assign(r(o.mix(e.colorA,e.colorB,_)));var V=t(y.x,y.y,y.z.mul(c)).toVar();y.assign(r(e.colorRim));var h=t(y.x,y.y,o.mul(2,c,y.z)).toVar();return o.mix(V,h,o.remapClamp(o.max(p,o.max(x,v)),45,65))}),No),Oo={$name:"Scream",scale:2,variety:1,color:new e.Color(15790176),background:new e.Color(13668496),seed:0},Uo=z((e=>{e=w(e,Oo);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),s=o.mx_noise_float(o.add(o.sin(a.xyz),o.cos(a.yzx)));a.assign(o.positionGeometry.mul(o.exp(e.scale).mul(s)).add(e.seed));s=o.mx_noise_float(o.add(o.sin(a.xyz),o.cos(a.yzx)).mul(2));var l=o.mix(e.background,e.color,s).toVar(),n=r(l).toVar();return t(o.add(n.x,e.variety.mul(o.sin(s.mul(Math.PI))).mul(.5)),n.y,n.z)}),Oo);Uo.defaults={$name:"Scream",scale:2,variety:1,color:new e.Color(15790176),background:new e.Color(13668496),seed:0};var Yo={$name:"Simplex noise",scale:2,balance:0,contrast:0,color:new e.Color(16777215),background:new e.Color(0),seed:0},Ho=z((e=>{e=w(e,Yo);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed),t=o.clamp(0,1,o.mx_noise_float(a).mul(.5,o.exp(e.contrast)).add(.5,e.balance));return o.mix(e.background,e.color,t)}),Yo),Zo={$name:"Stars",scale:2,density:2,variation:0,color:new e.Color(16774640),background:new e.Color(96),seed:0},Xo=z((e=>{e=w(e,Zo);var a=o.positionGeometry.mul(o.exp(e.scale.div(2).add(3))).add(e.seed).toVar(),s=o.abs(o.mx_noise_float(a)).pow(10).mul(10);s=s.mul(o.exp(e.density.sub(2)));var l=o.select(s.greaterThan(.1),e.variation.mul(o.mx_noise_float(a)),0),n=r(o.mix(e.background,e.color,s));return t(o.add(n.x,l),n.y,n.z)}),Zo),Jo={$name:"Static noise",scale:2,balance:0,contrast:0,delay:0,seed:0},Ko=z((e=>{e=w(e,Jo);var a=o.screenCoordinate.div(o.exp(e.scale)).add(e.seed),t=e.delay.sub(1).mul(5).exp(),r=o.time.div(t).round().mul(t),s=d(r.sin()).mul(1e3),l=o.clamp(0,1,o.mx_noise_float(a.add(s)));return l=l.mul(.5,o.exp(e.contrast)).add(.5,e.balance),o.vec3(l)}),Jo),Qo={$name:"Supersphere",$positionNode:!0,exponent:3},oe=o.Fn((([e,a])=>{var t=o.float(2).pow(a.exponent),r=e.div(e.length()).toVar(),s=r.x.abs().pow(t).add(r.y.abs().pow(t)).add(r.z.abs().pow(t)).pow(o.float(1).div(t));return r.div(s)})),ee=z((e=>(e=w(e,Qo),oe(o.positionGeometry,e))),Qo);ee.normal=z((e=>{e=w(e,Qo);var a=o.positionGeometry,t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.01).toVar(),s=o.cross(t,r).normalize().mul(.01).toVar(),l=oe(a,e),n=oe(a.add(r),e),i=oe(a.add(s),e),m=o.sub(n,l),d=o.sub(i,l);return o.transformNormalToView(o.cross(m,d).normalize())}),Qo);var ae={$name:"Tiger fur",scale:2,lengths:4,blur:.3,strength:.3,hairs:.5,color:new e.Color(16755200),bottomColor:new e.Color(16777198),seed:0},te=z((e=>{var a=(e=w(e,ae)).scale.div(2).add(1).toVar(),t=o.positionGeometry.mul(o.exp(a)).add(e.seed).toVar(),r=e.lengths.add(5).reciprocal().toVar(),s=e.hairs.mul(.3).toVar(),l=o.mx_noise_float(t.mul(a,o.vec3(1,r,r)));l=(l=l.add(o.mx_noise_float(t.mul(o.vec3(25,1,1))).add(1).mul(s))).add(e.strength.sub(.5)).smoothstep(e.blur.negate(),e.blur).oneMinus();var n=o.positionGeometry.y.add(s.sub(.5)).smoothstep(-1,.5);return o.mix(e.bottomColor,e.color,n).mul(l)}),ae),re={$name:"Translator",$positionNode:!0,$selectorPlanar:!0,distance:new e.Vector3(-.5,0,.2),selectorCenter:new e.Vector3(0,0,0),selectorAngles:new e.Vector2(0,0),selectorWidth:.7},se=o.Fn((([e,a])=>{var t=f(e,a.selectorAngles,a.selectorCenter,a.selectorWidth);return y(a.distance.mul(t)).mul(o.vec4(e,1)).xyz})),le=z((e=>(e=w(e,re),se(o.positionGeometry,e))),re);le.normal=z((e=>{e=w(e,re);var a=o.positionGeometry,t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.01).toVar(),s=o.cross(t,r).normalize().mul(.01).toVar(),l=se(a,e),n=se(a.add(r),e),i=se(a.add(s),e),m=o.sub(n,l),d=o.sub(i,l);return o.transformNormalToView(o.cross(m,d).normalize())}),re);var ne={$name:"Voronoi cells",scale:2,variation:0,facet:0,color:new e.Color(0),background:new e.Color(12636415),seed:0},ie=o.Fn((([e])=>e.add(o.mx_noise_float(e.mul(Math.PI))))),me=z((e=>{e=w(e,ne);var a=o.positionGeometry.mul(o.exp(e.scale.div(2).add(.5))).add(e.seed).toVar(),t=a.round().toVar(),r=t.toVar(),s=o.float(1).toVar(),l=o.vec3().toVar(),n=o.float().toVar(),i=o.float(0).toVar();o.Loop(27,(()=>{var e=i.mod(3).sub(1),m=i.div(3).floor().mod(3).sub(1),d=i.div(9).floor().sub(1);l.assign(t.add(o.vec3(e,m,d))),n.assign(a.distance(ie(l)).add(o.mx_noise_float(a).div(5))),o.If(n.lessThan(s),(()=>{s.assign(n),r.assign(l)})),i.addAssign(1)}));var m=o.mx_noise_float(r.mul(Math.PI)).toVar(),d=o.mix(s,m.add(1).div(2),e.facet),u=o.mix(e.color,e.background,d).toVar(),c=o.vec3(m.mul(16.8),m.mul(31.4159),m.mul(27.1828)).sin().add(1).div(2);return o.mix(u,o.mix(u,c,e.variation),e.variation)}),ne),de={$name:"Water Drops",$normalNode:!0,scale:1.4,density:.5,bump:.6,seed:0},ue=o.Fn((([e,a,t,r,s])=>{var l=o.mx_noise_float(e.add(s)).add(r).clamp(0,1);return l=o.cos(l.mul(Math.PI)).add(1).pow(.5).toVar(),e.add(l.mul(a,t))})),ce=z((e=>{e=w(e,de);var a=o.positionGeometry.mul(o.exp(e.scale.div(1).add(1))).toVar(),t=o.normalLocal.normalize().toVar(),r=o.tangentLocal.normalize().mul(.001).toVar(),s=o.cross(t,r).normalize().mul(.001).toVar(),l=o.remap(e.density,0,1,1.5,.7).toVar(),n=o.vec3(o.sin(e.seed).mul(100),o.cos(e.seed.div(2)).mul(100),o.sin(e.seed.div(3)).mul(100)).toVar(),i=ue(a,t,e.bump,l,n),m=ue(a.add(r),t,e.bump,l,n),d=ue(a.add(s),t,e.bump,l,n),u=o.sub(m,i),c=o.sub(d,i);return o.transformNormalToView(o.cross(u,c).normalize())}),de),pe={$name:"Watermelon",scale:2,stripes:12,variation:.5,noise:.25,color:new e.Color("yellowgreen"),background:new e.Color("darkgreen"),flat:0,seed:0},xe=z((e=>{e=w(e,pe);var a=o.select(e.flat,e.variation.mul(.85).add(.15),e.variation),t=o.positionGeometry.mul(o.exp(e.scale.div(4).add(2))).add(e.seed).toVar(),r=o.select(e.flat,o.screenUV,o.equirectUV(o.positionGeometry.normalize())).toVar(),s=r.x.mul(e.stripes.round(),o.select(e.flat,Math.PI,2*Math.PI)).add(o.mx_noise_float(t.mul(o.vec3(1,.3,1))).mul(2)).sin().add(.5).div(2).mul(r.y.remap(0,1,-Math.PI,Math.PI).cos().add(1.2).clamp(0,1)).add(a.mul(2,o.mx_noise_float(t.mul(1.5)).div(2))).add(a.mul(2,o.mx_noise_float(t.mul(4)).div(6))).toVar();return s.assign(s.mix(s.round(),.75).add(o.mx_noise_float(t.mul(2)).mul(e.noise,.5)).add(o.mx_noise_float(t.mul(3)).mul(e.noise,1)).add(o.mx_noise_float(t.mul(15)).mul(e.noise,.2)).clamp(0,1)),o.mix(e.background,e.color,s).toVar()}),pe),ve={$name:"Wood",scale:2.5,rings:4.5,lengths:1,angle:0,fibers:.3,fibersDensity:10,color:new e.Color(.8,.4,0),background:new e.Color(.4,.1,0),seed:0},ye=z((e=>{e=w(e,ve);var a=o.radians(e.angle).toVar(),t=o.vec3(o.sub(o.positionGeometry.x.mul(o.cos(a)),o.positionGeometry.y.mul(o.sin(a))),o.add(o.positionGeometry.x.mul(o.sin(a)),o.positionGeometry.y.mul(o.cos(a))),o.positionGeometry.z).toVar(),r=t.mul(o.exp(e.scale.sub(3)).mul(o.vec3(o.reciprocal(e.lengths),4,o.reciprocal(e.lengths)))).add(e.seed).toVar(),s=o.mx_noise_float(r).add(1).mul(10).mul(e.rings);s=s.add(s.cos()).cos().add(1).div(2);var l=o.float(0).toVar(),n=o.float(0).toVar(),i=o.exp(e.scale.sub(2)).mul(o.vec3(1,e.fibersDensity,1)).toVar(),m=o.float(2).toVar();return o.Loop(10,(()=>{l.addAssign(o.mul(m,o.mx_noise_float(t.mul(i).add(e.seed)))),n.addAssign(m),i.mulAssign(1.8),m.mulAssign(.6)})),l.assign(o.mul(l,5).div(n).mul(10).sin().add(1).div(2)),o.mix(e.color,e.background,o.mix(s,l,e.fibers))}),ve),fe={$name:"Zebra lines",scale:2,thinness:.5,phi:0,theta:0,color:new e.Color(0),background:new e.Color(16777215),flat:0},ge=z((e=>{e=w(e,fe);var a=o.select(e.flat,o.positionGeometry,o.positionGeometry.normalize()).toVar(),t=o.select(e.flat,o.vec2(o.cos(e.phi),o.sin(e.phi)),s(e.phi,e.theta)).toVar(),r=o.select(e.flat,o.clamp(t.dot(a),-2,2),o.acos(o.clamp(t.dot(a),-1,1))).toVar(),l=o.exp(e.scale.add(1)).toVar(),n=o.sin(r.mul(l)).sub(e.thinness.sub(.5).mul(2));return n=o.clamp(n.mul(1e3).div(l),-1,1).mul(.5).add(.5),o.mix(e.background,e.color,n)}),fe),be={$name:"Circle decor",scale:2,grains:.2,complexity:1,blur:.2,color:new e.Color(0),background:new e.Color(16777215),seed:0},_e=z((e=>{e=w(e,be);var a=o.positionGeometry.mul(o.exp(e.scale.div(4))).add(e.seed).toVar(),t=a.mul(2).toVar(),r=o.mx_worley_noise_float(a),s=o.mx_worley_noise_float(t),l=o.mx_worley_noise_float(a.mul(e.grains.mul(4).add(2))).mul(2),n=o.mx_noise_float(a).div(2).add(1),i=r.min(s,l).clamp(0,1).mul(e.complexity.add(2).exp(),n,Math.PI).sin().smoothstep(e.blur.negate(),e.blur);return o.mix(e.color,e.background,i.oneMinus())}),be),Ve={$name:"Reticular veins",scale:2,reticulation:5,strength:.2,organelles:.2,color:new e.Color(16777200),background:new e.Color(2129952),seed:0},we=z((e=>{e=w(e,Ve);var a=o.positionGeometry.mul(o.exp(e.scale.div(2).add(.5))).add(e.seed).toVar(),t=o.mx_worley_noise_float(a.mul(1)),r=o.mx_worley_noise_float(a.add(100).mul(e.reticulation)).mul(e.strength),s=o.mx_noise_float(a.mul(100)).mul(e.strength,e.organelles),l=t.add(r).add(s);return o.mix(e.background,e.color,l)}),Ve),he={$name:"Roman paving",scale:2,depth:.5,seed:0},ze=z((e=>{e=w(e,he);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=o.mx_worley_noise_vec2(a).toVar();return t.y.sub(t.x).pow(e.depth.mul(3).sub(3).exp()).smoothstep(0,1)}),he),Ce={$name:"Crumpled fabric",$width:260,scale:2,pinch:.5,color:new e.Color(11596031),subcolor:new e.Color(4210928),background:new e.Color(12288),seed:0},ke=z((e=>{e=w(e,Ce);var a=o.positionGeometry.mul(o.exp(e.scale.sub(.5))).add(e.seed).toVar();o.Loop(4,(()=>{var t=o.mx_noise_float(a.xyz).mul(e.pinch),r=o.mx_noise_float(a.yzx).mul(e.pinch),s=o.mx_noise_float(a.zxy).mul(e.pinch);a.addAssign(o.vec3(t,r,s))}));var t=o.mx_noise_float(a).add(1).div(2).clamp(0,1),r=e.color.mul(t.mul(2).sub(1).abs().oneMinus()),s=e.subcolor.mul(t).pow(2),l=e.background.mul(t.oneMinus().pow(2));return r.add(s).add(l)}),Ce),Ge={$name:"Isolayers",scale:2,layers:10,edge:.5,darkness:0,color:new e.Color(16777200),background:new e.Color(16728128),seed:0},Me=z((e=>{e=w(e,Ge);var a=o.positionGeometry.mul(o.exp(e.scale.sub(1))).add(e.seed).toVar(),s=e.edge.remap(0,1,40,10),l=o.mx_noise_float(a).mul(1.2).add(1).div(2),n=l.mul(e.layers).round().div(e.layers).clamp(0,1),i=l.sub(o.float(.53).div(e.layers)).mul(e.layers).fract().mul(o.float(2).pow(s.reciprocal())).pow(s).sub(1).abs().oneMinus(),m=o.mix(r(e.background),r(e.color),n).toVar();return m.z.mulAssign(o.mix(1,n.mul(1.5),e.darkness).clamp(0,1)),t(m.x,m.y,m.z).sub(i)}),Ge),$e={$name:"Turbulent smoke",$width:260,scale:2,speed:0,details:5,seed:0},Se=z((e=>{e=w(e,$e);var a=o.positionGeometry.mul(o.exp(e.scale.sub(1))).add(e.seed).toVar(),t=o.time.mul(e.speed.sub(1).exp()),r=a.add(o.vec3(o.mx_fractal_noise_float(a.add(o.vec3(1,t.sin(),-1))),o.mx_fractal_noise_float(a.add(o.vec3(t.add(2*Math.PI/3).sin(),1,-1))),o.mx_fractal_noise_float(a.add(o.vec3(1,-1,t.add(4*Math.PI/3).sin()))))),s=o.mx_fractal_noise_vec3(r,e.details);return o.mx_worley_noise_float(a.add(s.div(2))).pow(4).mul(4).oneMinus()}),$e),Ae={$name:"Caustics",scale:2,speed:0,color:new e.Color(5286080),seed:0},Le=z((e=>{e=w(e,Ae);var a=o.positionGeometry.mul(o.exp(e.scale.sub(1))).add(e.seed).toVar(),t=o.time.mul(e.speed.sub(1).exp()).add(o.vec3(0,2*Math.PI/3,4*Math.PI/3)).sin();return o.mx_worley_noise_vec3(a.add(o.vec3(o.mx_worley_noise_float(a.add(t.xyz)),o.mx_worley_noise_float(a.add(t.yzx)),o.mx_worley_noise_float(a.add(t.zxy))))).length().div(Math.sqrt(3)).add(e.color.sub(.5).mul(2))}),Ae),Fe={$name:"Bricks",scale:2,brickSize:new e.Vector3(2,1,2),brickShift:2,jointSize:.05,jointSpan:.5,jointJitter:.5,jointBlur:.03,noiseSize:.5,noiseStrength:.2,colorShade:.5,color:new e.Color(16728064),additional:new e.Color(13672496),background:new e.Color(11184810),seed:0},Ie=z((e=>{e=w(e,Fe);var a=o.positionGeometry.mul(o.exp(e.scale)).add(e.seed).toVar(),t=e.brickSize,r=a.div(t).floor().div(e.brickShift),s=o.vec3(r.y,0,r.y).toVar(),l=a.div(t).fract().add(s).fract().toVar(),n=o.mx_fractal_noise_vec3(a.mul(m(e.jointSpan,0,1,20,.2))).div(m(e.jointJitter,0,1,500,1)).toVar(),i=o.mul(l.mul(t).add(n.z).smoothstep(t.y.sub(e.jointSize,e.jointBlur),t.y.sub(e.jointSize)).y.oneMinus(),l.mul(t).add(n.y).smoothstep(e.jointSize,e.jointSize.add(e.jointBlur)).y,l.mul(t).add(n.y).smoothstep(t.x.sub(e.jointSize,e.jointBlur),t.x.sub(e.jointSize)).x.oneMinus(),l.mul(t).add(n.x).smoothstep(e.jointSize,e.jointSize.add(e.jointBlur)).x,l.mul(t).add(n.x).smoothstep(t.z.sub(e.jointSize,e.jointBlur),t.z.sub(e.jointSize)).z.oneMinus(),l.mul(t).add(n.z).smoothstep(e.jointSize,e.jointSize.add(e.jointBlur)).z).clamp(0,1),d=o.mix(o.float(1),o.mx_noise_float(o.mx_noise_float(a.xyz.div(t).add(s).floor().zxy.mul(100).add(Math.PI)).mul(10)).add(2).div(2).pow(4).clamp(0,1),e.colorShade),u=o.mx_noise_float(a.mul(m(e.noiseSize,0,1,5,250))).mul(e.noiseStrength).add(1),c=o.mx_noise_float(o.mx_noise_float(a.xyz.div(t).add(s).floor().zxy.mul(200).add(Math.PI)).mul(10)).add(1).div(1),p=o.mix(e.color,e.additional,c.pow(2));return o.mix(e.background,d.mul(p,i),i).mul(u)}),Fe);Object.defineProperty(exports,"noise",{enumerable:!0,get:function(){return o.mx_noise_float}}),exports.TSLFn=z,exports.applyEuler=l,exports.brain=k,exports.bricks=Ie,exports.camouflage=M,exports.caustics=Le,exports.caveArt=S,exports.circleDecor=_e,exports.circles=L,exports.clouds=P,exports.concrete=E,exports.cork=q,exports.crumpledFabric=ke,exports.dalmatianSpots=N,exports.darthMaul=O,exports.dynamic=function(a){var t={};for(var[r,s]of Object.entries(a))"$"!=r[0]&&(s instanceof e.Vector3?t[r]=o.uniform(s,"vec3"):t[r]=o.uniform(s));return t},exports.dysonSphere=X,exports.entangled=K,exports.fordite=oo,exports.gasGiant=ao,exports.grid=ro,exports.hideFallbackWarning=function(){_&&(V>0?V--:(_.style.display="none",_=null))},exports.hsl=t,exports.isolayers=Me,exports.isolines=lo,exports.karstRock=io,exports.marble=uo,exports.matRotX=u,exports.matRotY=c,exports.matRotYXZ=x,exports.matRotZ=p,exports.matScale=v,exports.matTrans=y,exports.neonLights=po,exports.noised=h,exports.normalVector=b,exports.overlayPlanar=g,exports.photosphere=vo,exports.planet=fo,exports.polkaDots=_o,exports.prepare=w,exports.processedWood=wo,exports.protozoa=Co,exports.remapExp=m,exports.reticularVeins=we,exports.romanPaving=ze,exports.rotator=Mo,exports.roughClay=Ao,exports.runnyEggs=Fo,exports.rust=Bo,exports.satin=jo,exports.scaler=Wo,exports.scepterHead=Do,exports.scream=Uo,exports.selectPlanar=f,exports.showFallbackWarning=async function(){if(null!=navigator.gpu&&await navigator.gpu.requestAdapter())return;(_=document.createElement("div")).innerHTML='\n\t<div style="font-size:1.25em; font-weight:bold;">PLEASE, WAIT</div>\n\t<div style="font-size:0.85em; font-weight:100;" >NO WEBGPU &mdash; TRYING WEBGL2</div>\n\t<div id="counter"></div>\n\t',_.style.left="calc(50% - 8em)",_.style.width="16em",_.style.fontFamily="Bahnschrifts, Arial",_.style.position="absolute",_.style.bottom="20px",_.style.padding="12px 6px",_.style.border="1px solid white",_.style.borderRadius="4px",_.style.background="rgba(0,0,0,0.5)",_.style.color="white",_.style.textAlign="center",_.style.opacity="0.8",_.style.outline="none",_.style.zIndex="999",document.body.appendChild(_)},exports.simplexNoise=Ho,exports.spherical=s,exports.stars=Xo,exports.staticNoise=Ko,exports.supersphere=ee,exports.tigerFur=te,exports.toHsl=r,exports.translator=le,exports.turbulentSmoke=Se,exports.vnoise=d,exports.voronoiCells=me,exports.waterDrops=ce,exports.watermelon=xe,exports.wood=ye,exports.zebraLines=ge;
@@ -1,4 +1,4 @@
1
- // TSL Textures v2.4.0
1
+ // TSL Textures v2.5.0
2
2
 
3
3
  import { Fn, min, sub, max, vec3, float, add, If, select, sin, cos, vec4, mul, cross, remap, pow, log2, mat4, smoothstep, positionGeometry, dFdx, dFdy, transformNormalToView, mx_noise_float, uniform, exp, mx_fractal_noise_float, mix, time, round, pow2, abs, or, acos, clamp, normalLocal, tangentLocal, Loop, floor, oneMinus, screenSize, screenUV, equirectUV, div, remapClamp, sqrt, mat2, mod, distance, radians, matcapUV, mx_worley_noise_float, sign, tan, screenCoordinate, reciprocal, vec2, mx_worley_noise_vec2, mx_fractal_noise_vec3, mx_worley_noise_vec3 } from 'three/tsl';
4
4
  export { mx_noise_float as noise } from 'three/tsl';
@@ -1,2 +1,2 @@
1
- /*! TSL Textures v2.4.0 */
1
+ /*! TSL Textures v2.5.0 */
2
2
  import{Fn as a,min as e,sub as o,max as r,vec3 as n,float as t,add as l,If as s,select as d,sin as u,cos as m,vec4 as i,mul as c,cross as v,remap as p,pow as g,log2 as y,mat4 as V,smoothstep as b,positionGeometry as w,dFdx as h,dFdy as f,transformNormalToView as z,mx_noise_float as x,uniform as k,exp as M,mx_fractal_noise_float as $,mix as A,time as S,round as P,pow2 as I,abs as T,or as B,acos as j,clamp as E,normalLocal as L,tangentLocal as C,Loop as R,floor as W,oneMinus as q,screenSize as D,screenUV as G,equirectUV as O,div as F,remapClamp as N,sqrt as Y,mat2 as U,mod as H,distance as Z,radians as J,matcapUV as X,mx_worley_noise_float as _,sign as K,tan as Q,screenCoordinate as aa,reciprocal as ea,vec2 as oa,mx_worley_noise_vec2 as ra,mx_fractal_noise_vec3 as na,mx_worley_noise_vec3 as ta}from"three/tsl";export{mx_noise_float as noise}from"three/tsl";import{Color as la,Vector3 as sa,Vector2 as da}from"three";const ua=a((([a,n,t,l])=>{var s=l.add(a.mul(12)).mod(12),d=n.mul(e(t,o(1,t)));return t.sub(d.mul(r(-1,e(e(s.sub(3),o(9,s)),1))))}));ua.setLayout({name:"hslHelper",type:"float",inputs:[{name:"h",type:"float"},{name:"s",type:"float"},{name:"l",type:"float"},{name:"n",type:"float"}]});const ma=a((([a,e,o])=>{a=a.fract().add(1).fract(),e=e.clamp(0,1),o=o.clamp(0,1);var r=ua(a,e,o,0),t=ua(a,e,o,8),l=ua(a,e,o,4);return n(r,t,l)}));ma.setLayout({name:"hsl",type:"vec3",inputs:[{name:"h",type:"float"},{name:"s",type:"float"},{name:"l",type:"float"}]});const ia=a((([a])=>{var u=t(a.x).toVar(),m=t(a.y).toVar(),i=t(a.z).toVar(),c=r(u,r(m,i)).toVar(),v=e(u,e(m,i)).toVar(),p=t(0).toVar(),g=t(0).toVar(),y=l(c,v).div(2);return s(v.notEqual(c),(()=>{const a=o(c,v).toVar();g.assign(d(y.lessThanEqual(.5),a.div(l(v,c)),a.div(o(2,l(v,c))))),s(c.equal(u),(()=>{p.assign(o(m,i).div(a).add(d(m.lessThanEqual(i),6,0)))})).ElseIf(c.equal(m),(()=>{p.assign(o(i,u).div(a).add(2))})).Else((()=>{p.assign(o(u,m).div(a).add(4))})),p.divAssign(6)})),n(p,g,y)}));function ca(a){var e={};for(var[o,r]of Object.entries(a))"$"!=o[0]&&(e[o]=r instanceof sa?k(r,"vec3"):k(r));return e}ia.setLayout({name:"toHsl",type:"vec3",inputs:[{name:"rgb",type:"vec3"}]});const va=a((([a,e])=>n(u(e).mul(u(a)),m(a),m(e).mul(u(a)))));va.setLayout({name:"spherical",type:"vec3",inputs:[{name:"phi",type:"float"},{name:"theta",type:"float"}]});const pa=a((([a,e])=>{var o=ga(e);return ya(a,o)}));pa.setLayout({name:"applyEuler",type:"vec4",inputs:[{name:"vec",type:"vec3"},{name:"eu",type:"vec3"}]});const ga=a((([a])=>{var e=m(a.x.div(2)),r=m(a.y.div(2)),n=m(a.z.div(2)),t=u(a.x.div(2)),s=u(a.y.div(2)),d=u(a.z.div(2));return i(l(c(t,r,n),c(e,s,d)),o(c(e,s,n),c(t,r,d)),l(c(e,r,d),c(t,s,n)),o(c(e,r,n),c(t,s,d)))}));ga.setLayout({name:"quaternionFromEuler",type:"vec4",inputs:[{name:"eu",type:"vec3"}]});const ya=a((([a,e])=>{var o=v(e.xyz,a).mul(2).toVar();return l(a,o.mul(e.w),v(e.xyz,o))}));ya.setLayout({name:"applyQuaternion",type:"vec3",inputs:[{name:"vec",type:"vec3"},{name:"quat",type:"vec4"}]});const Va=a((([a,e,o,r,n])=>(a=p(a,e,o,0,1),a=g(2,c(a,y(n.div(r))).add(y(r))))));Va.setLayout({name:"remapExp",type:"float",inputs:[{name:"x",type:"float"},{name:"fromMin",type:"float"},{name:"fromMax",type:"float"},{name:"toMin",type:"float"},{name:"toMax",type:"float"}]});const ba=a((([a])=>a.dot(n(12.9898,78.233,-97.5123)).sin().mul(43758.5453).fract().mul(2).sub(1)));ba.setLayout({name:"vnoise",type:"float",inputs:[{name:"v",type:"vec3"}]});const wa=a((([a])=>{var e=a.cos().toVar(),o=a.sin().toVar();return V(1,0,0,0,0,e,o,0,0,o.negate(),e,0,0,0,0,1)}));wa.setLayout({name:"matRotX",type:"mat4",inputs:[{name:"angle",type:"float"}]});const ha=a((([a])=>{var e=a.cos().toVar(),o=a.sin().toVar();return V(e,0,o.negate(),0,0,1,0,0,o,0,e,0,0,0,0,1)}));ha.setLayout({name:"matRotY",type:"mat4",inputs:[{name:"angle",type:"float"}]});const fa=a((([a])=>{var e=a.cos().toVar(),o=a.sin().toVar();return V(e,o,0,0,o.negate(),e,0,0,0,0,1,0,0,0,0,1)}));fa.setLayout({name:"matRotZ",type:"mat4",inputs:[{name:"angle",type:"float"}]});const za=a((([a])=>{var e=wa(a.x),o=ha(a.y),r=fa(a.z);return o.mul(e).mul(r)}));za.setLayout({name:"matRotYXZ",type:"mat4",inputs:[{name:"angles",type:"vec3"}]});const xa=a((([a])=>V(a.x,0,0,0,0,a.y,0,0,0,0,a.z,0,0,0,0,1)));xa.setLayout({name:"matScale",type:"mat4",inputs:[{name:"scales",type:"vec3"}]});const ka=a((([a])=>V(1,0,0,0,0,1,0,0,0,0,1,0,a.x,a.y,a.z,1)));ka.setLayout({name:"matTrans",type:"mat4",inputs:[{name:"vector",type:"vec3"}]});const Ma=a((([a,e,o,r])=>{var n=va(e.x,e.y).mul(r).toVar(),t=o.sub(n.div(2)).sub(a).dot(n).div(n.dot(n)).negate();return b(0,1,t)}));Ma.setLayout({name:"selectPlanar",type:"float",inputs:[{name:"pos",type:"vec3"},{name:"selAngles",type:"vec2"},{name:"selCenter",type:"vec3"},{name:"selWidth",type:"float"}]});const $a=a((a=>{var e=Ma(w,a.selectorAngles,a.selectorCenter,a.selectorWidth).sub(.5).mul(2).abs().oneMinus().pow(.25).negate().mul(a.selectorShow);return n(0,e,e)})),Aa=a((([a])=>{var e=h(a),o=f(a);return z(v(e,o).normalize())}));Aa.setLayout({name:"normalVector",type:"vec3",inputs:[{name:"pos",type:"vec3"}]});var Sa=null,Pa=10;async function Ia(){if(null!=navigator.gpu&&await navigator.gpu.requestAdapter())return;(Sa=document.createElement("div")).innerHTML='\n\t<div style="font-size:1.25em; font-weight:bold;">PLEASE, WAIT</div>\n\t<div style="font-size:0.85em; font-weight:100;" >NO WEBGPU &mdash; TRYING WEBGL2</div>\n\t<div id="counter"></div>\n\t',Sa.style.left="calc(50% - 8em)",Sa.style.width="16em",Sa.style.fontFamily="Bahnschrifts, Arial",Sa.style.position="absolute",Sa.style.bottom="20px",Sa.style.padding="12px 6px",Sa.style.border="1px solid white",Sa.style.borderRadius="4px",Sa.style.background="rgba(0,0,0,0.5)",Sa.style.color="white",Sa.style.textAlign="center",Sa.style.opacity="0.8",Sa.style.outline="none",Sa.style.zIndex="999",document.body.appendChild(Sa)}function Ta(){Sa&&(Pa>0?Pa--:(Sa.style.display="none",Sa=null))}function Ba(a,e){var o=[];for(var r of a)if(r&&"object"==typeof r){o=Object.keys(r);break}var l={...e};for(var s of o)void 0!==a[s]&&(l[s]=a[s]);for(var d of Object.keys(l))"number"==typeof l[d]?l[d]=t(l[d]):l[d]instanceof la?l[d]=n(l[d].r,l[d].g,l[d].b):l[d]instanceof sa&&(l[d]=n(l[d].x,l[d].y,l[d].z));return l}function ja(a,e=1,o=1,r=0){return x(a.mul(e,o).add(r))}function Ea(e,o,r=null){const n=a(e,r),t=new Map;t.set("defaults",o),t.set("opacity",null),t.set("roughness",null),t.set("normal",null);const l=function(){};return Object.setPrototypeOf(l,Object.getPrototypeOf(n.call)),new Proxy(l,{get:(a,e,o)=>"defaults"===e?t.get("defaults"):"opacity"===e?t.get("opacity"):"roughness"===e?t.get("roughness"):"normal"===e?t.get("normal"):"fn"===e?n:Reflect.get(n,e,o),set:(a,e,o,r)=>"defaults"===e?(t.set("defaults",o),!0):"opacity"===e?(t.set("opacity",o),!0):"roughness"===e?(t.set("roughness",o),!0):"normal"===e?(t.set("normal",o),!0):Reflect.set(n,e,o,r),apply:(a,e,o)=>Reflect.apply(n,e,o),getOwnPropertyDescriptor:(a,e)=>"defaults"===e?{value:t.get("defaults"),writable:!0,enumerable:!0,configurable:!0}:("opacity"===e&&Reflect.getOwnPropertyDescriptor(null,e),"roughness"===e&&Reflect.getOwnPropertyDescriptor(null,e),"normal"===e&&Reflect.getOwnPropertyDescriptor(null,e),Reflect.getOwnPropertyDescriptor(n,e))})}var La={$name:"Brain",scale:2,smooth:.5,wave:.5,speed:2.5,color:new la(16765136),background:new la(5242880),seed:0},Ca=Ea((a=>{a=Ba(a,La);var e=w.mul(M(a.scale.div(3))).add(a.seed).toVar(),o=M(a.smooth.oneMinus().mul(2)),r=$(e.mul(5),o).add(1).div(2).clamp(0,1).pow(2);return A(a.color,a.background,r)}),La);Ca.normal=Ea((a=>{a=Ba(a,La);var e=w.mul(M(a.scale.div(3))).add(a.seed).toVar(),o=M(a.smooth.oneMinus().mul(2)),r=.01,t=$(e.mul(5),o),l=$(e.add(n(r,0,0)).mul(5),o).sub(t).div(r),s=$(e.add(n(0,r,0)).mul(5),o).sub(t).div(r),d=x(e.mul(a.wave.mul(5))).add(1).div(2).mul(6.28);return n(l,s,S.mul(a.speed).add(d).sin().add(t,1)).normalize()}),La);var Ra={$name:"Camouflage",scale:2,colorA:new la(12762792),colorB:new la(10258782),colorC:new la(9610101),colorD:new la(7435617),seed:0},Wa=Ea((a=>{a=Ba(a,Ra);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=n(0,0,0).toVar();return s(P(x(e,1,.2)).greaterThanEqual(1),(()=>{o.assign(a.colorA)})).ElseIf(P(x(e.yzx,1,.3)).greaterThanEqual(1),(()=>{o.assign(a.colorB)})).ElseIf(P(x(e.zxy,1,.4)).greaterThanEqual(1),(()=>{o.assign(a.colorC)})).Else((()=>{o.assign(a.colorD)})),o}),Ra),qa={$name:"Cave art",scale:2,thinness:2,noise:.3,color:new la(13845829),background:new la(16775408),seed:0},Da=Ea((a=>{a=Ba(a,qa);var e=w.mul(M(a.scale)).add(a.seed).toVar(),r=x(e,4).sin().toVar(),n=x(e.mul(1.5),4).cos().toVar(),d=M(o(t(3),a.thinness)),u=o(d,I(T(l(r,n))).mul(20)).toVar();return s(B(r.greaterThan(n),u.lessThan(0)),(()=>{u.assign(0)})),s(u.lessThanEqual(0),(()=>{u.assign(a.noise.mul(I(x(e.mul(30)))))})),A(a.background,a.color,u)}),qa),Ga={$name:"Circles",scale:2,variety:1,color:new la(15786192),flat:0,seed:0},Oa=Ea((a=>{a=Ba(a,Ga);for(var e=d(a.flat,w,w.normalize()),o=j(E(e.y,-1,1)).mul(20),r=M(a.scale.sub(1)),n=o.div(3e3).mul(r),l=t(a.seed.sin().mul(100)).toVar(),s=0;s<=10;s++)l.addAssign(u(n.mul(2**s).sub(Math.PI*s/2)).mul(-s*(s+1)/2));l.assign(l.div(200).clamp(-2,2));var m=ia(a.color),i=m.x.add(l.mul(a.variety)).mod(1).mul(10),c=i.floor(),v=i.sub(c);return v=d(v.lessThan(.5),v.pow(1.5),v.pow(1/1.5)),ma(c.add(v).div(10),m.y,m.z)}),Ga),Fa={$name:"Clouds",scale:2,density:.5,opacity:1,color:new la(16777215),subcolor:new la(10526896),seed:0},Na=a((a=>{const e=w,o=M(a.scale.div(1.5).sub(.5)),r=l(ja(e,o,1,a.seed),ja(e,o,2,a.seed).mul(.8),ja(e,o,6,a.seed).mul(.1),ja(e,o,8,a.seed).mul(.07,a.opacity),a.density.remap(0,1,-.5,1.5)),n=E(0,1,c(r,2).pow(1.5).sub(1).mul(a.opacity));return i(A(a.subcolor,a.color,r.clamp(0,1)),n)})),Ya=Ea((a=>(a=Ba(a,Fa),Na(a).rgb)),Fa);Ya.opacity=Ea((a=>(a=Ba(a,Fa),Na(a).a)),Fa);var Ua={$name:"Concrete",$normalNode:!0,scale:2,density:.5,bump:.5,seed:0},Ha=a((([a,e,o,r,n])=>{var t=x(a.add(n)).mul(.5).add(.5);return t=o.mul(g(T(t),r)),a.add(t.mul(e))})),Za=Ea((a=>{a=Ba(a,Ua);var e=w.mul(M(a.scale.div(2).add(2))).toVar(),r=L.normalize().toVar(),t=C.normalize().mul(.001).toVar(),l=v(r,t).normalize().mul(.001).toVar(),s=p(a.density,0,1,10,.5).toVar(),d=n(u(a.seed).mul(100),m(a.seed.div(2)).mul(100),u(a.seed.div(3)).mul(100)).toVar(),i=Ha(e,r,a.bump,s,d),c=Ha(e.add(t),r,a.bump,s,d),g=Ha(e.add(l),r,a.bump,s,d),y=o(c,i),V=o(g,i);return z(v(y,V).normalize())}),Ua),Ja={$name:"Cork",scale:1,straight:1,noise:.3,color:new la(16773312),background:new la(13664352),seed:0},Xa=a((([a])=>a.add(ba(a)))),_a=Ea((a=>{a=Ba(a,Ja);var e=w.mul(M(a.scale.div(1.5).add(1))).add(a.seed).toVar(),o=e.round().toVar(),r=o.toVar(),l=t(1).toVar(),d=n().toVar(),u=t().toVar(),m=t(0).toVar();R(27,(()=>{var t=m.mod(3).sub(1),i=m.div(3).floor().mod(3).sub(1),c=m.div(9).floor().sub(1);d.assign(o.add(n(t,i,c))),u.assign(e.distance(Xa(d))),u.addAssign(x(e.add(d)).div(a.straight.exp())),s(u.lessThan(l),(()=>{l.assign(u),r.assign(d)})),m.addAssign(1)}));var i=x(r.mul(Math.PI)).toVar(),c=x(e.mul(12)).toVar();c.assign(c.sign().mul(c.abs().pow3())),c.addAssign(x(e.mul(40)).div(3));var v=i.add(1).div(2);return A(a.color,a.background,v.add(c.mul(a.noise))).toVar()}),Ja),Ka={$name:"Dalmatian spots",$width:260,scale:2,density:.6,color:new la(16777215),background:new la(0),seed:0},Qa=Ea((a=>{a=Ba(a,Ka);var e=w.mul(M(a.scale)).add(a.seed).sub(1e3).toVar(),o=t(1).toVar(),r=t(1.5).sub(a.density).mul(2).toVar(),n=a.density.mul(5).add(5).toVar();return R(n,(()=>{o.mulAssign(x(e).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),e.assign(e.mul(1.01)),o.mulAssign(x(e.yzx).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),e.assign(e.mul(1.01)),o.mulAssign(x(e.zxy).abs().pow(r).mul(100).sub(50).clamp(0,1).oneMinus()),e.assign(e.mul(1.01))})),A(a.background,a.color,o.clamp(0,1))}),Ka),ae={$name:"Darth Maul",scale:2,shift:new sa(0,0,0),complexity:0,angle:60,distance:1.9,color:new la(15745088),background:new la(0),balance:0,seed:0},ee=Ea((a=>{a=Ba(a,ae);var e=w.add(a.shift).mul(M(a.scale.div(1.5).sub(1))).sub(a.shift).mul(n(1,.5,.5)).toVar(),o=d(w.y.mul(a.angle.radians().cos()).add(w.z.mul(a.angle.radians().sin())).greaterThan(a.distance),1,0);e.x.assign(e.x.add(a.shift.x).abs()),e.y.addAssign(a.seed),e.z.mulAssign(a.shift.z);var r=x(e).toVar(),t=r.sin().mul(r.mul(a.complexity.mul(2).add(1).exp()).sin()).remap(0,.2,1,-1).greaterThan(a.balance).select(0,1),l=d(e.x.greaterThan(x(e.mul(2.3)).abs().mul(.5).add(.02)),1,0);return A(a.background,a.color,t.mul(o).mul(l).clamp(0,1))}),ae),oe={$name:"Dyson sphere",scale:2,complexity:2,variation:0,color:new la(12636415),background:new la(0),seed:0},re=a((([a])=>{var e=a.mul(5**.5).fract().toVar();return e.addAssign(e.dot(e.add(n(31.4159,27.1828,14.142)))),e.z.mul(e.x.add(e.y)).fract().mul(2).sub(1)})),ne=a((([a])=>{var e=a.oneMinus().clamp(0,1).toVar();return e.mul(e).mul(t(3).sub(e.mul(2)))})),te=a((([a])=>{var e=a.x.floor().toVar(),o=e.add(1).toVar(),r=a.y.floor().toVar(),t=r.add(1).toVar(),l=a.z.floor().toVar(),s=l.add(1).toVar(),d=ne(a.x.fract()).toVar(),u=ne(a.y.fract()).toVar(),m=ne(a.z.fract()).toVar(),i=ne(d.oneMinus()).toVar(),c=ne(u.oneMinus()).toVar(),v=ne(m.oneMinus()).toVar(),p=re(n(e,r,l)).mul(i).mul(c).mul(v).toVar(),g=re(n(e,r,s)).mul(i).mul(c).mul(m).toVar(),y=re(n(e,t,l)).mul(i).mul(u).mul(v).toVar(),V=re(n(e,t,s)).mul(i).mul(u).mul(m).toVar(),b=re(n(o,r,l)).mul(d).mul(c).mul(v).toVar(),w=re(n(o,r,s)).mul(d).mul(c).mul(m).toVar(),h=re(n(o,t,l)).mul(d).mul(u).mul(v).toVar(),f=re(n(o,t,s)).mul(d).mul(u).mul(m).toVar();return p.add(g).add(y).add(V).add(b).add(w).add(h).add(f)})),le=Ea((a=>{a=Ba(a,oe);var e=w.mul(M(a.scale.div(2).add(.5))).add(a.seed).toVar(),o=n().toVar(),r=t(1).toVar();return R(a.complexity.add(4),(()=>{o.addAssign(te(e.mul(r))),r.addAssign(r)})),A(a.background,a.color,o.x.add(1).div(5))}),oe),se={$name:"Entangled",scale:2,density:10,color:new la(8256),background:new la(16777215),seed:0},de=Ea((a=>{a=Ba(a,se);var e=M(a.scale.div(2)).toVar(),o=w.add(a.seed).toVar(),n=t(-1e4).toVar(),l=t(0).toVar();return R(W(t(a.density)),(()=>{l.assign(u(x(c(o,e)).mul(3*Math.PI))),n.assign(r(n,l)),e.mulAssign(1.2)})),n.assign(q(g(T(n),5)).mul(6)),A(a.color,a.background,n)}),se),ue={$name:"Fordite",scale:2,color:new la(0,0,0),seed:0},me=Ea((a=>{a=Ba(a,ue);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=x(n(x(e),x(e).mul(2),x(e).mul(3))).toVar();return ma(o,1,u(c(o,Math.PI,4)).mul(.5).add(.5)).add(a.color)}),ue),ie={$name:"Gas giant",scale:2,turbulence:.3,blur:.6,colorA:new la(16775408),colorB:new la(15788208),colorC:new la(11509968),seed:0},ce=Ea((a=>{var e=(a=Ba(a,ie)).scale.div(2).add(1).toVar(),o=w.mul(M(e)).add(a.seed).toVar(),r=a.turbulence.mul(x(n(0,o.y.mul(.5),0).add(1)).add(x(n(0,o.y.mul(1),0).add(1)).mul(.5),x(n(1,o.y.mul(2),1).add(1)).mul(.25))).mul(5).abs().toVar(),t=x(o.div(4)).add(1).div(2).pow(10).mul(10).smoothstep(0,1);o.addAssign(n(x(o),x(o.yxz),x(o.yzx)).mul(r.mul(t.mul(2).exp())));var l=a.blur.pow(.2).oneMinus().mul(r.add(1)).toVar(),s=x(o.mul(n(0,e,0)));s=(s=s.add(x(o.mul(n(1,15,1))).mul(l))).add(-.5).smoothstep(-1,1).oneMinus();var d=x(n(0,o.y.mul(.75),0)).add(1),u=ia(A(a.colorB,a.colorA,d)),m=ma(u.x.add(x(o.mul(n(0,e,0))).div(4)),u.y,u.z).toVar();return m.assign(A(m,a.colorC,r.mul(.3))),m.mul(s)}),ie),ve={$name:"Grid",countU:32,countV:16,thinness:.8,color:new la(0),background:new la(16777215),flat:0},pe=Ea((a=>{a=Ba(a,ve);var r=d(a.flat,D.x.div(D.y),2),n=d(a.flat,G,O(w.normalize())).toVar(),t=c(n.x,r,Math.PI),s=c(n.y,Math.PI).toVar(),m=F(P(c(n.x,a.countU)),a.countU),i=F(P(c(n.y,a.countV)),a.countV),v=c(m,r,Math.PI),p=c(i,Math.PI),y=T(o(t,v)).mul(d(a.flat,1,u(s))),V=T(o(s,p)),h=e(y,V),f=c(e(F(r.mul(Math.PI),a.countU),F(Math.PI,a.countV)),N(g(a.thinness,.5),0,1,.9,.04),.5),z=q(b(o(f,.002),l(f,.002),h));return A(a.background,a.color,z)}),ve),ge={$name:"Isolines",scale:2,density:40,blur:.3,thinness:.6,color:new la(16777215),background:new la(0),seed:0},ye=Ea((a=>{a=Ba(a,ge);var e=w.mul(M(a.scale)).add(a.seed).toVar(),r=x(e).mul(a.density);return r=q(u(r)).div(2),r=b(o(a.thinness,a.blur),l(a.thinness,a.blur),r),A(a.color,a.background,r)}),ge),Ve={$name:"Karst rock",scale:2,color:new la(16774384),background:new la(13684944),seed:0},be=Ea((a=>{a=Ba(a,Ve);var e=w.mul(M(a.scale)).add(a.seed.sin().mul(5)).toVar(),o=e.add(x(e.mul(2))).toVar(),r=x(o).div(x(o.mul(1.01))).clamp(0,2).toVar();return r.addAssign(x(e.mul(100)).div(3)),r.addAssign(x(e.mul(2)).div(2)),A(a.background,a.color,r).mul(r.pow(.1))}),Ve),we={$name:"Marble",scale:1.2,thinness:5,noise:.3,color:new la(4539859),background:new la(15792383),seed:0},he=Ea((a=>{a=Ba(a,we);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=l(x(e),x(e.mul(2)).mul(.5),x(e.mul(6)).mul(.1)),r=(o=q(o.abs().pow(2.5)).toVar(),q(g(.5,a.thinness.add(7))).toVar()),n=q(g(.5,a.thinness.add(7).mul(.5))).toVar();return s(o.greaterThan(r),(()=>{o.assign(1)})).ElseIf(o.lessThan(n),(()=>{o.assign(0)})).Else((()=>{var a=o.sub(n),t=r.sub(n);o.assign(g(F(a,t),5).mul(.75)),o.assign(o.mul(l(.5,x(e.mul(2)).mul(1.5))))})),o.assign(o.add(c(a.noise,x(e.mul(150)).abs().pow3()))),A(a.background,a.color,o)}),we),fe={$name:"Neon Lights",scale:1.5,thinness:.8,mode:0,colorA:new la(16711680),colorB:new la(65280),colorC:new la(255),background:new la(0),seed:0},ze=Ea((a=>{a=Ba(a,fe);var e=w,o=M(a.scale.remap(0,4,2,-2)).toVar(),r=M(a.thinness.remap(0,1,1.5,0)).toVar(),t=a.background.toVar(),l=n(0).toVar(),s=x(e.xyz).toVar(),u=x(e.yzx).toVar(),m=x(e.zxy).toVar(),i=x(n(s,u,m).mul(o).add(a.seed)).toVar();i.assign(q(Y(T(i))).pow(3)),l.assign(a.colorA);var c=ia(l);l.assign(ma(c.x,c.y,c.z.mul(i))),t.addAssign(d(a.mode.equal(0),l,l.negate()).mul(r)),i.assign(x(n(u,m,s).mul(o).sub(a.seed))),i.assign(q(Y(T(i))).pow(3)),l.assign(a.colorB);c=ia(l);l.assign(ma(c.x,c.y,c.z.mul(i))),t.addAssign(d(a.mode.equal(0),l,l.negate()).mul(r)),i.assign(x(n(m,s,u.negate()).mul(o).add(a.seed))),i.assign(q(Y(T(i))).pow(3)),l.assign(a.colorC);c=ia(l);return l.assign(ma(c.x,c.y,c.z.mul(i))),t.addAssign(d(a.mode.equal(0),l,l.negate()).mul(r)),t}),fe),xe={$name:"Photosphere",scale:2,color:new la(16776960),background:new la(16711680),seed:0},ke=Ea((a=>{a=Ba(a,xe);var e=M(a.scale.add(1)).toVar(),o=w.toVar(),r=n(o).toVar();R(6,(()=>{r.assign(pa(r,o.mul(e))),e.mulAssign(a.seed.mul(e).sin().mul(.05).add(1.1))}));var t=x(r).add(1).div(2);return A(a.background,a.color,t)}),xe),Me={$name:"Planet",scale:2,iterations:5,levelSea:.3,levelMountain:.7,balanceWater:.3,balanceSand:.2,balanceSnow:.8,colorDeep:new la(1194585).convertLinearToSRGB(),colorShallow:new la(8900331).convertLinearToSRGB(),colorBeach:new la(16775885).convertLinearToSRGB(),colorGrass:new la(3978097).convertLinearToSRGB(),colorForest:new la(12288).convertLinearToSRGB(),colorSnow:new la(15794175).convertLinearToSRGB(),seed:0},$e=Ea((a=>{a=Ba(a,Me);var e=t(0).toVar(),o=t(0).toVar(),r=M(a.scale.sub(2)).toVar(),l=t(2).toVar();R(a.iterations.add(10),(()=>{e.addAssign(c(l,x(w.mul(r).add(a.seed)))),o.addAssign(l),r.mulAssign(1.5),l.mulAssign(.8)})),e.assign(c(e,e,.5).div(o));var d=a.levelSea.pow(2).toVar(),u=a.levelMountain.pow(2).toVar(),m=A(d,u,a.balanceSand).toVar(),i=A(d,m,.4).toVar(),v=A(d,m,.6).toVar(),g=n().toVar();return s(e.lessThan(d),(()=>{g.assign(A(a.colorDeep,a.colorShallow,p(e,0,d,0,1).pow(M(a.balanceWater.mul(-8).add(4)))))})).ElseIf(e.lessThan(i),(()=>{g.assign(A(a.colorShallow,a.colorBeach,p(e,d,i)))})).ElseIf(e.lessThan(v),(()=>{g.assign(a.colorBeach)})).ElseIf(e.lessThan(m),(()=>{g.assign(A(a.colorBeach,a.colorGrass,p(e,v,m)))})).ElseIf(e.lessThan(u),(()=>{g.assign(A(a.colorGrass,a.colorForest,p(e,m,u).pow(.75)))})).Else((()=>{var o=A(1,u,a.balanceSnow);g.assign(A(a.colorForest,a.colorSnow,b(A(o,u,a.balanceSnow.pow(.5)),o,e)))})),g}),Me),Ae={$name:"Polka dots",count:2,size:.5,blur:.25,color:new la(0),background:new la(16777215),flat:0},Se=(1+5**.5)/2,Pe=Ea((a=>{a=Ba(a,Ae);var o=t(1).toVar();s(a.flat.equal(1),(()=>{var e=a.count.pow(2).sub(.5).toVar(),r=w.xy.mul(e).mul(U(1,1,-1,1)),n=r.round().toVar();o.assign(r.distance(n).div(e))})).Else((()=>{var n=g(10,a.count).toVar(),s=w.normalize().toVar(),d=q(s.y).mul(n).sub(1).div(2),u=r(10,n.pow(.5)),m=d.sub(u).floor().clamp(0,n),i=d.add(u).floor().clamp(0,n);o.assign(1).toVar(),R(i.sub(m),(({i:a})=>{var r=l(a,m),d=H(c(2*Math.PI/Se,r),2*Math.PI),u=j(q(t(r).mul(2).add(1).div(n))),i=va(u,d);o.assign(e(o,Z(s,i)))}))}));var n=M(a.size.mul(5).sub(5)).toVar(),d=a.blur.pow(4).toVar(),u=b(n.sub(d),n.add(d),o);return A(a.color,a.background,u)}),Ae),Ie={$name:"Processed wood",$width:260,scale:2,lengths:4,strength:.3,angle:0,color:new la(7348256),background:new la(15782048),seed:0},Te=Ea((a=>{a=Ba(a,Ie);var e=J(a.angle).toVar(),r=n(o(w.x.mul(m(e)),w.y.mul(u(e))),l(w.x.mul(u(e)),w.y.mul(m(e))),w.z).toVar(),t=a.scale.div(2).add(1).toVar(),s=r.mul(M(t)).add(a.seed).toVar(),d=a.lengths.add(5).reciprocal().toVar(),i=x(s.mul(t,n(1,d,d)));return i=(i=i.mul(x(s.mul(n(25,1,1))).add(-1).mul(.2))).add(a.strength.sub(.5)).smoothstep(-.3,.3).oneMinus(),A(a.color,a.background,i)}),Ie),Be={$name:"Protozoa",scale:1.5,fat:.7,amount:.4,color:new la(10526880),subcolor:new la(14739711),background:new la(15792383),seed:0},je=a((([a,e])=>x(a).mul(e).clamp(-3.14,3.14).cos().add(1).div(2))),Ee=Ea((a=>{a=Ba(a,Be);var e=w.mul(M(a.scale.sub(1))).add(a.seed).toVar(),o=n(X,X.length()).toVar(),r=t(0).toVar(),l=t(0).toVar(),s=t(0).toVar(),d=t(0).toVar(),u=a.fat.add(.2).oneMinus().mul(60).add(30).toVar(),m=t(2).toVar(),i=a.amount.div(2).add(.5).exp().toVar();return R(10,(()=>{r.assign(je(e.xyz.add(o),u)),l.assign(je(e.yzx.add(o),u)),s.addAssign(r.mul(l).mul(m)),d.addAssign(r.max(l).mul(m)),e.assign(A(e.mul(i),0,.4)),m.mulAssign(.9)})),A(a.background,A(a.color,a.subcolor,d.mul(.1)),s)}),Be),Le={$name:"Rotator",$positionNode:!0,$selectorPlanar:!0,angles:new sa(.4,-.6,0),center:new sa(0,0,0),selectorCenter:new sa(0,0,0),selectorAngles:new da(0,0),selectorWidth:2},Ce=a((([a,e])=>{var o=Ma(a,e.selectorAngles,e.selectorCenter,e.selectorWidth),r=za(e.angles.mul(o)),n=ka(e.center),t=ka(e.center.negate());return n.mul(r).mul(t).mul(i(a,1)).xyz})),Re=Ea((a=>(a=Ba(a,Le),Ce(w,a))),Le);Re.normal=Ea((a=>{a=Ba(a,Le);var e=w,r=L.normalize().toVar(),n=C.normalize().mul(.01).toVar(),t=v(r,n).normalize().mul(.01).toVar(),l=Ce(e,a),s=Ce(e.add(n),a),d=Ce(e.add(t),a),u=o(s,l),m=o(d,l);return z(v(u,m).normalize())}),Le);var We={$name:"Rough clay",$normalNode:!0,scale:2,bump:.5,curvature:.2,seed:0},qe=a((([a,e,o,r])=>{var n=_(a.add(x(a).mul(r))).add(.8).pow(5).toVar();return n.addAssign(n.pow(.5)),a.add(e.mul(n).mul(o))})),De=Ea((a=>{var e=(a=Ba(a,We)).bump.div(50).toVar(),r=w.mul(M(a.scale.div(2))).add(a.seed.sin().mul(10)).toVar(),n=L.normalize().toVar(),t=C.normalize().mul(.001).toVar(),l=v(n,t).normalize().mul(.001).toVar(),s=qe(r,n,e,a.curvature),d=qe(r.add(t),n,e,a.curvature),u=qe(r.add(l),n,e,a.curvature),m=o(d,s),i=o(u,s);return z(v(m,i).normalize())}),We),Ge={$name:"Runny eggs",scale:1,sizeYolk:.2,sizeWhite:.7,colorYolk:new la("orange"),colorWhite:new la("white"),colorBackground:new la("lightgray"),seed:0},Oe=Ea((a=>{a=Ba(a,Ge);var e=w.mul(M(a.scale.div(1))).add(a.seed.sin().mul(10)).toVar(),o=a.sizeYolk.oneMinus(),r=a.sizeWhite.oneMinus(),n=_(e).toVar(),t=n.add(r).pow(8).oneMinus().clamp(-.5,1),l=n.add(o).pow(18).oneMinus().clamp(0,1).pow(.4).clamp(0,1);return A(a.colorBackground,A(a.colorWhite,a.colorYolk,l),t)}),Ge),Fe=a((([a,e,o,r,n])=>{var t=_(a).toVar(),l=t.add(n).pow(8).oneMinus(),s=t.add(r).pow(18).oneMinus().clamp(0,1),d=A(0,A(0,1,s),l);return a.add(e.mul(d).mul(o))}));Oe.normal=Ea((a=>{a=Ba(a,Ge);var e=.05,r=w.mul(M(a.scale.div(1))).add(a.seed.sin().mul(10)).toVar(),n=L.normalize().toVar(),t=C.normalize().mul(.001).toVar(),l=v(n,t).normalize().mul(.001).toVar(),s=a.sizeYolk.oneMinus(),d=a.sizeWhite.oneMinus(),u=Fe(r,n,e,s,d),m=Fe(r.add(t),n,e,s,d),i=Fe(r.add(l),n,e,s,d),c=o(m,u),p=o(i,u);return z(v(c,p).normalize())}),Ge),Oe.roughness=Ea((a=>{a=Ba(a,Ge);var e=w.mul(M(a.scale.div(1))).add(a.seed.sin().mul(10)).toVar(),o=a.sizeYolk.oneMinus();return _(e).toVar().add(o).pow(18).clamp(0,1)}),Ge);var Ne={$name:"rust",scale:2,iterations:8,amount:-.3,opacity:.5,noise:.5,noiseScale:.5,color:new la(12615680),background:new la(32),seed:0},Ye=a((a=>{var e=w.mul(M(a.scale.div(4).add(-1))).add(a.seed).toVar(),o=a.amount.mul(x(e.mul(a.amount.div(2).add(4))).add(4)).toVar(),r=x(e).toVar();return R(a.iterations,(()=>{e.mulAssign(2),r.addAssign(x(e))})),r.subAssign(x(e.mul(2)).abs()),r.assign(r.sub(o).clamp(0,15)),r})),Ue=Ea((a=>{a=Ba(a,Ne);var e=Ye(a).mul(1.25).pow(.5),o=w.mul(M(a.scale.add(a.noiseScale.mul(3),2)));return e.addAssign(a.noise.mul(x(o).abs().add(.1).pow(2))),A(a.color,a.background,e)}),Ne);Ue.opacity=Ea((a=>(a=Ba(a,Ne),Ye(a).mul(a.opacity.add(.2)).oneMinus())),Ne);var He={$name:"Satin",scale:2,color:new la(7373055),background:new la(80),seed:0},Ze=Ea((a=>{a=Ba(a,He);var e=w.toVar(),o=M(a.scale.div(3)).toVar(),r=x(n(x(n(e.x.mul(2),e.y,e.z).mul(o)),x(n(e.x,e.y.mul(2),e.z).mul(o)),x(n(e.x,e.y,e.z.mul(2)).mul(o))).mul(o).add(a.seed));return r=g(T(r),3).mul(20),A(a.background,a.color,r)}),He);Ze.defaults={$name:"Satin",scale:2,color:new la(7373055),background:new la(80),seed:0};var Je={$name:"Scaler",$positionNode:!0,$selectorPlanar:!0,scales:new sa(.01,.9,1.7),center:new sa(0,0,0),selectorCenter:new sa(0,0,0),selectorAngles:new da(0,0),selectorWidth:2},Xe=a((([a,e])=>{var o=Ma(a,e.selectorAngles,e.selectorCenter,e.selectorWidth),r=xa(A(n(1,1,1),e.scales,o)),t=ka(e.center),l=ka(e.center.negate());return t.mul(r).mul(l).mul(i(a,1)).xyz})),_e=Ea((a=>(a=Ba(a,Je),Xe(w,a))),Je);_e.normal=Ea((a=>{a=Ba(a,Je);var e=w,r=L.normalize().toVar(),n=C.normalize().mul(.01).toVar(),t=v(r,n).normalize().mul(.01).toVar(),l=Xe(e,a),s=Xe(e.add(n),a),d=Xe(e.add(t),a),u=o(s,l),m=o(d,l);return z(v(u,m).normalize())}),Je);var Ke={$name:"Scepter head",xFactor:10,yFactor:22,zFactor:10,colorRim:new la(16777215),colorA:new la(7397631),colorB:new la(3145983)},Qe=Ea((a=>{a=Ba(a,Ke);var e=w,o=e.x.mul(Va(a.xFactor,0,100,1.35,30)).toVar(),t=e.y.mul(Va(a.yFactor,0,100,1.35,30)).toVar(),s=e.z.mul(Va(a.zFactor,0,100,1.35,30)).toVar(),d=m(o).toVar(),u=m(t).toVar(),i=m(s).toVar(),v=x(n(e.x.div(d),e.y.div(u),e.z.div(i)));v=K(v).mul(T(v).pow(.75));var p=T(c(o,Q(o)).add(1).div(m(o))),g=T(c(t,Q(t)).add(1).div(m(t))),y=T(c(s,Q(s)).add(1).div(m(s))),V=n().toVar(),b=T(W(o.mul(2/Math.PI).add(1).div(2))),h=T(W(t.mul(2/Math.PI).add(1).div(2))),f=T(W(s.mul(2/Math.PI).add(1).div(2))),z=H(l(b,h,f),2);V.assign(ia(A(a.colorA,a.colorB,z)));var k=ma(V.x,V.y,V.z.mul(v)).toVar();V.assign(ia(a.colorRim));var M=ma(V.x,V.y,c(2,v,V.z)).toVar();return A(k,M,N(r(p,r(g,y)),45,65))}),Ke),ao={$name:"Scream",scale:2,variety:1,color:new la(15790176),background:new la(13668496),seed:0},eo=Ea((a=>{a=Ba(a,ao);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=x(l(u(e.xyz),m(e.yzx)));e.assign(w.mul(M(a.scale).mul(o)).add(a.seed));o=x(l(u(e.xyz),m(e.yzx)).mul(2));var r=A(a.background,a.color,o).toVar(),n=ia(r).toVar();return ma(l(n.x,a.variety.mul(u(o.mul(Math.PI))).mul(.5)),n.y,n.z)}),ao);eo.defaults={$name:"Scream",scale:2,variety:1,color:new la(15790176),background:new la(13668496),seed:0};var oo={$name:"Simplex noise",scale:2,balance:0,contrast:0,color:new la(16777215),background:new la(0),seed:0},ro=Ea((a=>{a=Ba(a,oo);var e=w.mul(M(a.scale)).add(a.seed),o=E(0,1,x(e).mul(.5,M(a.contrast)).add(.5,a.balance));return A(a.background,a.color,o)}),oo),no={$name:"Stars",scale:2,density:2,variation:0,color:new la(16774640),background:new la(96),seed:0},to=Ea((a=>{a=Ba(a,no);var e=w.mul(M(a.scale.div(2).add(3))).add(a.seed).toVar(),o=T(x(e)).pow(10).mul(10);o=o.mul(M(a.density.sub(2)));var r=d(o.greaterThan(.1),a.variation.mul(x(e)),0),n=ia(A(a.background,a.color,o));return ma(l(n.x,r),n.y,n.z)}),no),lo={$name:"Static noise",scale:2,balance:0,contrast:0,delay:0,seed:0},so=Ea((a=>{a=Ba(a,lo);var e=aa.div(M(a.scale)).add(a.seed),o=a.delay.sub(1).mul(5).exp(),r=S.div(o).round().mul(o),t=ba(r.sin()).mul(1e3),l=E(0,1,x(e.add(t)));return l=l.mul(.5,M(a.contrast)).add(.5,a.balance),n(l)}),lo),uo={$name:"Supersphere",$positionNode:!0,exponent:3},mo=a((([a,e])=>{var o=t(2).pow(e.exponent),r=a.div(a.length()).toVar(),n=r.x.abs().pow(o).add(r.y.abs().pow(o)).add(r.z.abs().pow(o)).pow(t(1).div(o));return r.div(n)})),io=Ea((a=>(a=Ba(a,uo),mo(w,a))),uo);io.normal=Ea((a=>{a=Ba(a,uo);var e=w,r=L.normalize().toVar(),n=C.normalize().mul(.01).toVar(),t=v(r,n).normalize().mul(.01).toVar(),l=mo(e,a),s=mo(e.add(n),a),d=mo(e.add(t),a),u=o(s,l),m=o(d,l);return z(v(u,m).normalize())}),uo);var co={$name:"Tiger fur",scale:2,lengths:4,blur:.3,strength:.3,hairs:.5,color:new la(16755200),bottomColor:new la(16777198),seed:0},vo=Ea((a=>{var e=(a=Ba(a,co)).scale.div(2).add(1).toVar(),o=w.mul(M(e)).add(a.seed).toVar(),r=a.lengths.add(5).reciprocal().toVar(),t=a.hairs.mul(.3).toVar(),l=x(o.mul(e,n(1,r,r)));l=(l=l.add(x(o.mul(n(25,1,1))).add(1).mul(t))).add(a.strength.sub(.5)).smoothstep(a.blur.negate(),a.blur).oneMinus();var s=w.y.add(t.sub(.5)).smoothstep(-1,.5);return A(a.bottomColor,a.color,s).mul(l)}),co),po={$name:"Translator",$positionNode:!0,$selectorPlanar:!0,distance:new sa(-.5,0,.2),selectorCenter:new sa(0,0,0),selectorAngles:new da(0,0),selectorWidth:.7},go=a((([a,e])=>{var o=Ma(a,e.selectorAngles,e.selectorCenter,e.selectorWidth);return ka(e.distance.mul(o)).mul(i(a,1)).xyz})),yo=Ea((a=>(a=Ba(a,po),go(w,a))),po);yo.normal=Ea((a=>{a=Ba(a,po);var e=w,r=L.normalize().toVar(),n=C.normalize().mul(.01).toVar(),t=v(r,n).normalize().mul(.01).toVar(),l=go(e,a),s=go(e.add(n),a),d=go(e.add(t),a),u=o(s,l),m=o(d,l);return z(v(u,m).normalize())}),po);var Vo={$name:"Voronoi cells",scale:2,variation:0,facet:0,color:new la(0),background:new la(12636415),seed:0},bo=a((([a])=>a.add(x(a.mul(Math.PI))))),wo=Ea((a=>{a=Ba(a,Vo);var e=w.mul(M(a.scale.div(2).add(.5))).add(a.seed).toVar(),o=e.round().toVar(),r=o.toVar(),l=t(1).toVar(),d=n().toVar(),u=t().toVar(),m=t(0).toVar();R(27,(()=>{var a=m.mod(3).sub(1),t=m.div(3).floor().mod(3).sub(1),i=m.div(9).floor().sub(1);d.assign(o.add(n(a,t,i))),u.assign(e.distance(bo(d)).add(x(e).div(5))),s(u.lessThan(l),(()=>{l.assign(u),r.assign(d)})),m.addAssign(1)}));var i=x(r.mul(Math.PI)).toVar(),c=A(l,i.add(1).div(2),a.facet),v=A(a.color,a.background,c).toVar(),p=n(i.mul(16.8),i.mul(31.4159),i.mul(27.1828)).sin().add(1).div(2);return A(v,A(v,p,a.variation),a.variation)}),Vo),ho={$name:"Water Drops",$normalNode:!0,scale:1.4,density:.5,bump:.6,seed:0},fo=a((([a,e,o,r,n])=>{var t=x(a.add(n)).add(r).clamp(0,1);return t=m(t.mul(Math.PI)).add(1).pow(.5).toVar(),a.add(t.mul(e,o))})),zo=Ea((a=>{a=Ba(a,ho);var e=w.mul(M(a.scale.div(1).add(1))).toVar(),r=L.normalize().toVar(),t=C.normalize().mul(.001).toVar(),l=v(r,t).normalize().mul(.001).toVar(),s=p(a.density,0,1,1.5,.7).toVar(),d=n(u(a.seed).mul(100),m(a.seed.div(2)).mul(100),u(a.seed.div(3)).mul(100)).toVar(),i=fo(e,r,a.bump,s,d),c=fo(e.add(t),r,a.bump,s,d),g=fo(e.add(l),r,a.bump,s,d),y=o(c,i),V=o(g,i);return z(v(y,V).normalize())}),ho),xo={$name:"Watermelon",scale:2,stripes:12,variation:.5,noise:.25,color:new la("yellowgreen"),background:new la("darkgreen"),flat:0,seed:0},ko=Ea((a=>{a=Ba(a,xo);var e=d(a.flat,a.variation.mul(.85).add(.15),a.variation),o=w.mul(M(a.scale.div(4).add(2))).add(a.seed).toVar(),r=d(a.flat,G,O(w.normalize())).toVar(),t=r.x.mul(a.stripes.round(),d(a.flat,Math.PI,2*Math.PI)).add(x(o.mul(n(1,.3,1))).mul(2)).sin().add(.5).div(2).mul(r.y.remap(0,1,-Math.PI,Math.PI).cos().add(1.2).clamp(0,1)).add(e.mul(2,x(o.mul(1.5)).div(2))).add(e.mul(2,x(o.mul(4)).div(6))).toVar();return t.assign(t.mix(t.round(),.75).add(x(o.mul(2)).mul(a.noise,.5)).add(x(o.mul(3)).mul(a.noise,1)).add(x(o.mul(15)).mul(a.noise,.2)).clamp(0,1)),A(a.background,a.color,t).toVar()}),xo),Mo={$name:"Wood",scale:2.5,rings:4.5,lengths:1,angle:0,fibers:.3,fibersDensity:10,color:new la(.8,.4,0),background:new la(.4,.1,0),seed:0},$o=Ea((a=>{a=Ba(a,Mo);var e=J(a.angle).toVar(),r=n(o(w.x.mul(m(e)),w.y.mul(u(e))),l(w.x.mul(u(e)),w.y.mul(m(e))),w.z).toVar(),s=r.mul(M(a.scale.sub(3)).mul(n(ea(a.lengths),4,ea(a.lengths)))).add(a.seed).toVar(),d=x(s).add(1).mul(10).mul(a.rings);d=d.add(d.cos()).cos().add(1).div(2);var i=t(0).toVar(),v=t(0).toVar(),p=M(a.scale.sub(2)).mul(n(1,a.fibersDensity,1)).toVar(),g=t(2).toVar();return R(10,(()=>{i.addAssign(c(g,x(r.mul(p).add(a.seed)))),v.addAssign(g),p.mulAssign(1.8),g.mulAssign(.6)})),i.assign(c(i,5).div(v).mul(10).sin().add(1).div(2)),A(a.color,a.background,A(d,i,a.fibers))}),Mo),Ao={$name:"Zebra lines",scale:2,thinness:.5,phi:0,theta:0,color:new la(0),background:new la(16777215),flat:0},So=Ea((a=>{a=Ba(a,Ao);var e=d(a.flat,w,w.normalize()).toVar(),o=d(a.flat,oa(m(a.phi),u(a.phi)),va(a.phi,a.theta)).toVar(),r=d(a.flat,E(o.dot(e),-2,2),j(E(o.dot(e),-1,1))).toVar(),n=M(a.scale.add(1)).toVar(),t=u(r.mul(n)).sub(a.thinness.sub(.5).mul(2));return t=E(t.mul(1e3).div(n),-1,1).mul(.5).add(.5),A(a.background,a.color,t)}),Ao),Po={$name:"Circle decor",scale:2,grains:.2,complexity:1,blur:.2,color:new la(0),background:new la(16777215),seed:0},Io=Ea((a=>{a=Ba(a,Po);var e=w.mul(M(a.scale.div(4))).add(a.seed).toVar(),o=e.mul(2).toVar(),r=_(e),n=_(o),t=_(e.mul(a.grains.mul(4).add(2))).mul(2),l=x(e).div(2).add(1),s=r.min(n,t).clamp(0,1).mul(a.complexity.add(2).exp(),l,Math.PI).sin().smoothstep(a.blur.negate(),a.blur);return A(a.color,a.background,s.oneMinus())}),Po),To={$name:"Reticular veins",scale:2,reticulation:5,strength:.2,organelles:.2,color:new la(16777200),background:new la(2129952),seed:0},Bo=Ea((a=>{a=Ba(a,To);var e=w.mul(M(a.scale.div(2).add(.5))).add(a.seed).toVar(),o=_(e.mul(1)),r=_(e.add(100).mul(a.reticulation)).mul(a.strength),n=x(e.mul(100)).mul(a.strength,a.organelles),t=o.add(r).add(n);return A(a.background,a.color,t)}),To),jo={$name:"Roman paving",scale:2,depth:.5,seed:0},Eo=Ea((a=>{a=Ba(a,jo);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=ra(e).toVar();return o.y.sub(o.x).pow(a.depth.mul(3).sub(3).exp()).smoothstep(0,1)}),jo),Lo={$name:"Crumpled fabric",$width:260,scale:2,pinch:.5,color:new la(11596031),subcolor:new la(4210928),background:new la(12288),seed:0},Co=Ea((a=>{a=Ba(a,Lo);var e=w.mul(M(a.scale.sub(.5))).add(a.seed).toVar();R(4,(()=>{var o=x(e.xyz).mul(a.pinch),r=x(e.yzx).mul(a.pinch),t=x(e.zxy).mul(a.pinch);e.addAssign(n(o,r,t))}));var o=x(e).add(1).div(2).clamp(0,1),r=a.color.mul(o.mul(2).sub(1).abs().oneMinus()),t=a.subcolor.mul(o).pow(2),l=a.background.mul(o.oneMinus().pow(2));return r.add(t).add(l)}),Lo),Ro={$name:"Isolayers",scale:2,layers:10,edge:.5,darkness:0,color:new la(16777200),background:new la(16728128),seed:0},Wo=Ea((a=>{a=Ba(a,Ro);var e=w.mul(M(a.scale.sub(1))).add(a.seed).toVar(),o=a.edge.remap(0,1,40,10),r=x(e).mul(1.2).add(1).div(2),n=r.mul(a.layers).round().div(a.layers).clamp(0,1),l=r.sub(t(.53).div(a.layers)).mul(a.layers).fract().mul(t(2).pow(o.reciprocal())).pow(o).sub(1).abs().oneMinus(),s=A(ia(a.background),ia(a.color),n).toVar();return s.z.mulAssign(A(1,n.mul(1.5),a.darkness).clamp(0,1)),ma(s.x,s.y,s.z).sub(l)}),Ro),qo={$name:"Turbulent smoke",$width:260,scale:2,speed:0,details:5,seed:0},Do=Ea((a=>{a=Ba(a,qo);var e=w.mul(M(a.scale.sub(1))).add(a.seed).toVar(),o=S.mul(a.speed.sub(1).exp()),r=e.add(n($(e.add(n(1,o.sin(),-1))),$(e.add(n(o.add(2*Math.PI/3).sin(),1,-1))),$(e.add(n(1,-1,o.add(4*Math.PI/3).sin()))))),t=na(r,a.details);return _(e.add(t.div(2))).pow(4).mul(4).oneMinus()}),qo),Go={$name:"Caustics",scale:2,speed:0,color:new la(5286080),seed:0},Oo=Ea((a=>{a=Ba(a,Go);var e=w.mul(M(a.scale.sub(1))).add(a.seed).toVar(),o=S.mul(a.speed.sub(1).exp()).add(n(0,2*Math.PI/3,4*Math.PI/3)).sin();return ta(e.add(n(_(e.add(o.xyz)),_(e.add(o.yzx)),_(e.add(o.zxy))))).length().div(Math.sqrt(3)).add(a.color.sub(.5).mul(2))}),Go),Fo={$name:"Bricks",scale:2,brickSize:new sa(2,1,2),brickShift:2,jointSize:.05,jointSpan:.5,jointJitter:.5,jointBlur:.03,noiseSize:.5,noiseStrength:.2,colorShade:.5,color:new la(16728064),additional:new la(13672496),background:new la(11184810),seed:0},No=Ea((a=>{a=Ba(a,Fo);var e=w.mul(M(a.scale)).add(a.seed).toVar(),o=a.brickSize,r=e.div(o).floor().div(a.brickShift),l=n(r.y,0,r.y).toVar(),s=e.div(o).fract().add(l).fract().toVar(),d=na(e.mul(Va(a.jointSpan,0,1,20,.2))).div(Va(a.jointJitter,0,1,500,1)).toVar(),u=c(s.mul(o).add(d.z).smoothstep(o.y.sub(a.jointSize,a.jointBlur),o.y.sub(a.jointSize)).y.oneMinus(),s.mul(o).add(d.y).smoothstep(a.jointSize,a.jointSize.add(a.jointBlur)).y,s.mul(o).add(d.y).smoothstep(o.x.sub(a.jointSize,a.jointBlur),o.x.sub(a.jointSize)).x.oneMinus(),s.mul(o).add(d.x).smoothstep(a.jointSize,a.jointSize.add(a.jointBlur)).x,s.mul(o).add(d.x).smoothstep(o.z.sub(a.jointSize,a.jointBlur),o.z.sub(a.jointSize)).z.oneMinus(),s.mul(o).add(d.z).smoothstep(a.jointSize,a.jointSize.add(a.jointBlur)).z).clamp(0,1),m=A(t(1),x(x(e.xyz.div(o).add(l).floor().zxy.mul(100).add(Math.PI)).mul(10)).add(2).div(2).pow(4).clamp(0,1),a.colorShade),i=x(e.mul(Va(a.noiseSize,0,1,5,250))).mul(a.noiseStrength).add(1),v=x(x(e.xyz.div(o).add(l).floor().zxy.mul(200).add(Math.PI)).mul(10)).add(1).div(1),p=A(a.color,a.additional,v.pow(2));return A(a.background,m.mul(p,u),u).mul(i)}),Fo);export{Ea as TSLFn,pa as applyEuler,Ca as brain,No as bricks,Wa as camouflage,Oo as caustics,Da as caveArt,Io as circleDecor,Oa as circles,Ya as clouds,Za as concrete,_a as cork,Co as crumpledFabric,Qa as dalmatianSpots,ee as darthMaul,ca as dynamic,le as dysonSphere,de as entangled,me as fordite,ce as gasGiant,pe as grid,Ta as hideFallbackWarning,ma as hsl,Wo as isolayers,ye as isolines,be as karstRock,he as marble,wa as matRotX,ha as matRotY,za as matRotYXZ,fa as matRotZ,xa as matScale,ka as matTrans,ze as neonLights,ja as noised,Aa as normalVector,$a as overlayPlanar,ke as photosphere,$e as planet,Pe as polkaDots,Ba as prepare,Te as processedWood,Ee as protozoa,Va as remapExp,Bo as reticularVeins,Eo as romanPaving,Re as rotator,De as roughClay,Oe as runnyEggs,Ue as rust,Ze as satin,_e as scaler,Qe as scepterHead,eo as scream,Ma as selectPlanar,Ia as showFallbackWarning,ro as simplexNoise,va as spherical,to as stars,so as staticNoise,io as supersphere,vo as tigerFur,ia as toHsl,yo as translator,Do as turbulentSmoke,ba as vnoise,wo as voronoiCells,zo as waterDrops,ko as watermelon,$o as wood,So as zebraLines};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tsl-textures",
3
- "version": "2.5.0",
3
+ "version": "2.5.1",
4
4
  "description": "A collection of Three.js Shading Language (TSL) textures ",
5
5
  "main": "./src/tsl-textures.js",
6
6
  "module": "./src/tsl-textures.js",