@takram/three-geospatial 0.0.1-alpha.6 → 0.0.1-alpha.8

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 +1 @@
1
- {"version":3,"file":"index.js","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/ArrayBufferLoader.ts","../src/assertions.ts","../src/bufferGeometry.ts","../src/constants.ts","../src/typedArray.ts","../src/typedArrayParsers.ts","../src/TypedArrayLoader.ts","../src/DataLoader.ts","../src/math.ts","../src/PointOfView.ts","../src/Rectangle.ts","../src/resolveIncludes.ts","../src/TileCoordinate.ts","../src/TilingScheme.ts","../src/unrollLoops.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","ArrayBufferLoader","Loader","url","onLoad","onProgress","onError","loader","FileLoader","arrayBuffer","error","assertType","toBufferGeometryLike","geometry","attributes","index","boundingBox","boundingSphere","attribute","_a","buffer","fromBufferGeometryLike","input","result","BufferGeometry","name","BufferAttribute","min","max","Box3","Vector3","center","radius","Sphere","STBN_TEXTURE_WIDTH","STBN_TEXTURE_HEIGHT","STBN_TEXTURE_DEPTH","getTypedArrayElementType","array","type","parseTypedArray","TypedArray","getValue","littleEndian","data","byteIndex","parseUint8Array","parseInt8Array","parseUint16Array","parseInt16Array","parseInt32Array","parseUint32Array","parseFloat32Array","parseFloat64Array","TypedArrayLoader","createTypedArrayLoaderClass","parser","__publicField","createTypedArrayLoader","Int16ArrayLoader","Uint16ArrayLoader","Float32ArrayLoader","defaultDataTextureParameter","RGBAFormat","ClampToEdgeWrapping","LinearFilter","DataLoader","texture","width","height","depth","params","UnsignedByteType","ByteType","FloatType","createDataLoaderClass","Texture","parameters","createData3DTextureLoaderClass","Data3DTexture","createDataTextureLoaderClass","DataTexture","createData3DTextureLoader","createDataTextureLoader","Int16Data2DLoader","Uint16Data2DLoader","Float32Data2DLoader","Float32Data3DLoader","clamp","MathUtils","euclideanModulo","inverseLerp","lerp","radians","degrees","isPowerOfTwo","ceilPowerOfTwo","floorPowerOfTwo","normalize","remap","smoothstep","x","saturate","closeTo","a","b","relativeEpsilon","absoluteEpsilon","diff","EPSILON","eastScratch","northScratch","upScratch","vectorScratch1","vectorScratch2","vectorScratch3","matrixScratch","Matrix4","quaternionScratch","Quaternion","rayScratch","Ray","PointOfView","distance","heading","pitch","roll","other","target","eye","quaternion","up","ellipsoid","Ellipsoid","offset","rollAxis","camera","direction","s","t","y","_Rectangle","west","south","east","north","Geodetic","Rectangle","includePattern","resolveIncludes","source","includes","match","path","include","parent","component","traverseChildren","z","maxZ","divisor","nextZ","scale","nextX","nextY","children","child","coord","TileCoordinate","vectorScratch","Vector2","TilingScheme","rectangle","geodetic","size","longitude","tile","unrollLoopPattern","loopReplacer","start","end","snippet","string","i","unrollLoops"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"index.js","sources":["../node_modules/.pnpm/tiny-invariant@1.3.3/node_modules/tiny-invariant/dist/esm/tiny-invariant.js","../src/ArrayBufferLoader.ts","../src/assertions.ts","../src/bufferGeometry.ts","../src/constants.ts","../src/typedArray.ts","../src/typedArrayParsers.ts","../src/TypedArrayLoader.ts","../src/DataLoader.ts","../src/math.ts","../src/decorators.ts","../src/defineShorthand.ts","../src/PointOfView.ts","../src/Rectangle.ts","../src/resolveIncludes.ts","../src/STBNLoader.ts","../src/TileCoordinate.ts","../src/TilingScheme.ts","../src/unrollLoops.ts"],"sourcesContent":null,"names":["isProduction","prefix","invariant","condition","message","value","ArrayBufferLoader","Loader","url","onLoad","onProgress","onError","loader","FileLoader","arrayBuffer","error","assertType","toBufferGeometryLike","geometry","attributes","index","boundingBox","boundingSphere","attribute","_a","buffer","fromBufferGeometryLike","input","result","BufferGeometry","name","BufferAttribute","min","max","Box3","Vector3","center","radius","Sphere","STBN_TEXTURE_WIDTH","STBN_TEXTURE_HEIGHT","STBN_TEXTURE_DEPTH","DEFAULT_STBN_URL","getTypedArrayElementType","array","type","hostLittleEndian","isHostLittleEndian","a","parseTypedArray","TypedArray","getValue","littleEndian","data","byteIndex","parseUint8Array","parseInt8Array","parseUint16Array","parseInt16Array","parseInt32Array","parseUint32Array","parseFloat32Array","parseFloat64Array","TypedArrayLoader","createTypedArrayLoaderClass","parser","createTypedArrayLoader","Int16ArrayLoader","Uint16ArrayLoader","Float32ArrayLoader","defaultDataTextureParameter","RGBAFormat","ClampToEdgeWrapping","LinearFilter","DataLoader","texture","width","height","depth","params","UnsignedByteType","ByteType","FloatType","createDataLoaderClass","Texture","parameters","createData3DTextureLoaderClass","Data3DTexture","createDataTextureLoaderClass","DataTexture","createData3DTextureLoader","createDataTextureLoader","Int16Data2DLoader","Uint16Data2DLoader","Float32Data2DLoader","Float32Data3DLoader","clamp","MathUtils","euclideanModulo","inverseLerp","lerp","radians","degrees","isPowerOfTwo","ceilPowerOfTwo","floorPowerOfTwo","normalize","remap","x","min1","max1","min2","max2","remapClamped","smoothstep","saturate","closeTo","b","relativeEpsilon","absoluteEpsilon","diff","define","target","propertyKey","Material","defineInt","prevValue","defineFloat","precision","defineExpression","validate","definePropertyShorthand","destination","sourceKeysArgs","descriptors","i","source","keys","key","defineUniformShorthand","EPSILON","eastScratch","northScratch","upScratch","vectorScratch1","vectorScratch2","vectorScratch3","matrixScratch","Matrix4","quaternionScratch","Quaternion","rayScratch","Ray","PointOfView","distance","heading","pitch","roll","other","eye","quaternion","up","ellipsoid","Ellipsoid","offset","rollAxis","camera","direction","s","t","y","_Rectangle","west","south","east","north","Geodetic","Rectangle","includePattern","resolveIncludes","includes","match","path","include","parent","component","STBNLoader","RedFormat","NearestFilter","RepeatWrapping","traverseChildren","z","maxZ","divisor","nextZ","scale","nextX","nextY","children","child","coord","TileCoordinate","vectorScratch","Vector2","TilingScheme","rectangle","geodetic","size","longitude","tile","unrollLoopPattern","loopReplacer","start","end","snippet","string","unrollLoops"],"mappings":"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","x_google_ignoreList":[0]}
package/build/r3f.js CHANGED
@@ -1,9 +1,9 @@
1
1
  import { jsx as a, jsxs as f } from "react/jsx-runtime";
2
2
  import { forwardRef as m, useMemo as u, useEffect as l, useRef as E } from "react";
3
- import { Group as h, Matrix4 as d, Vector3 as x } from "three";
3
+ import { Group as h, Vector3 as d, Matrix4 as x } from "three";
4
4
  import { E as p, G, a as w } from "./shared.js";
5
5
  import { extend as F } from "@react-three/fiber";
6
- const S = /* @__PURE__ */ new d(), N = /* @__PURE__ */ new G(), U = /* @__PURE__ */ new x();
6
+ const S = /* @__PURE__ */ new x(), N = /* @__PURE__ */ new G(), U = /* @__PURE__ */ new d();
7
7
  class j extends h {
8
8
  set(o, t, r, e = p.WGS84) {
9
9
  const s = N.set(o, t, r).toECEF(U);
package/build/shaders.cjs CHANGED
@@ -1,4 +1,83 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=`// cSpell:words logdepthbuf
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const n=`// Reference: https://github.com/mrdoob/three.js/blob/r171/examples/jsm/csm/CSMShader.js
2
+
3
+ #ifndef SHADOW_CASCADE_COUNT
4
+ #error "SHADOW_CASCADE_COUNT macro must be defined."
5
+ #endif // SHADOW_CASCADE_COUNT
6
+
7
+ int getCascadeIndex(
8
+ const mat4 viewMatrix,
9
+ const vec3 worldPosition,
10
+ const vec2 intervals[SHADOW_CASCADE_COUNT],
11
+ const float near,
12
+ const float far
13
+ ) {
14
+ vec4 viewPosition = viewMatrix * vec4(worldPosition, 1.0);
15
+ float depth = viewZToOrthographicDepth(viewPosition.z, near, far);
16
+ vec2 interval;
17
+ #pragma unroll_loop_start
18
+ for (int i = 0; i < 4; ++i) {
19
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
20
+ interval = intervals[i];
21
+ if (depth >= interval.x && depth < interval.y) {
22
+ return UNROLLED_LOOP_INDEX;
23
+ }
24
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
25
+ }
26
+ #pragma unroll_loop_end
27
+ return SHADOW_CASCADE_COUNT - 1;
28
+ }
29
+
30
+ int getFadedCascadeIndex(
31
+ const mat4 viewMatrix,
32
+ const vec3 worldPosition,
33
+ const vec2 intervals[SHADOW_CASCADE_COUNT],
34
+ const float near,
35
+ const float far,
36
+ const float jitter
37
+ ) {
38
+ vec4 viewPosition = viewMatrix * vec4(worldPosition, 1.0);
39
+ float depth = viewZToOrthographicDepth(viewPosition.z, near, far);
40
+
41
+ vec2 interval;
42
+ float intervalCenter;
43
+ float closestEdge;
44
+ float margin;
45
+ int nextIndex = -1;
46
+ int prevIndex = -1;
47
+ float alpha;
48
+
49
+ #pragma unroll_loop_start
50
+ for (int i = 0; i < 4; ++i) {
51
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
52
+ interval = intervals[i];
53
+ intervalCenter = (interval.x + interval.y) * 0.5;
54
+ closestEdge = depth < intervalCenter ? interval.x : interval.y;
55
+ margin = closestEdge * closestEdge * 0.5;
56
+ interval += margin * vec2(-0.5, 0.5);
57
+
58
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
59
+ if (depth >= interval.x && depth < interval.y) {
60
+ prevIndex = nextIndex;
61
+ nextIndex = UNROLLED_LOOP_INDEX;
62
+ alpha = saturate(min(depth - interval.x, interval.y - depth) / margin);
63
+ }
64
+ #else // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
65
+ // Don't fade out the last cascade.
66
+ if (depth >= interval.x) {
67
+ prevIndex = nextIndex;
68
+ nextIndex = UNROLLED_LOOP_INDEX;
69
+ alpha = saturate((depth - interval.x) / margin);
70
+ }
71
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
72
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
73
+ }
74
+ #pragma unroll_loop_end
75
+
76
+ return jitter <= alpha
77
+ ? nextIndex
78
+ : prevIndex;
79
+ }
80
+ `,e=`// cSpell:words logdepthbuf
2
81
 
3
82
  float reverseLogDepth(const float depth, const float near, const float far) {
4
83
  #ifdef USE_LOGDEPTHBUF
@@ -15,7 +94,7 @@ float linearizeDepth(const float depth, const float near, const float far) {
15
94
  float ndc = depth * 2.0 - 1.0;
16
95
  return 2.0 * near * far / (far + near - ndc * (far - near));
17
96
  }
18
- `,e=`float checker(const vec2 uv, const vec2 repeats) {
97
+ `,t=`float checker(const vec2 uv, const vec2 repeats) {
19
98
  vec2 c = floor(repeats * uv);
20
99
  float result = mod(c.x + c.y, 2.0);
21
100
  return sign(result);
@@ -24,25 +103,15 @@ float linearizeDepth(const float depth, const float near, const float far) {
24
103
  float checker(const vec2 uv, const float repeats) {
25
104
  return checker(uv, vec2(repeats));
26
105
  }
27
- `,t=`#if !defined(saturate)
28
- #define saturate(a) clamp(a, 0.0, 1.0)
29
- #endif // !defined(saturate)
30
-
31
- float inverseLerp(const float x, const float y, const float a) {
32
- return (a - x) / (y - x);
33
- }
106
+ `,c=`// Reference: https://advances.realtimerendering.com/s2014/index.html#_NEXT_GENERATION_POST
34
107
 
35
- vec2 inverseLerp(const vec2 x, const vec2 y, const vec2 a) {
36
- return (a - x) / (y - x);
37
- }
38
-
39
- vec3 inverseLerp(const vec3 x, const vec3 y, const vec3 a) {
40
- return (a - x) / (y - x);
41
- }
42
-
43
- vec4 inverseLerp(const vec4 x, const vec4 y, const vec4 a) {
44
- return (a - x) / (y - x);
108
+ float interleavedGradientNoise(const vec2 coord) {
109
+ const vec3 magic = vec3(0.06711056, 0.00583715, 52.9829189);
110
+ return fract(magic.z * fract(dot(coord, magic.xy)));
45
111
  }
112
+ `,i=`#if !defined(saturate)
113
+ #define saturate(a) clamp(a, 0.0, 1.0)
114
+ #endif // !defined(saturate)
46
115
 
47
116
  float remap(const float x, const float min1, const float max1, const float min2, const float max2) {
48
117
  return min2 + (x - min1) / (max1 - min1) * (max2 - min2);
@@ -60,6 +129,46 @@ vec4 remap(const vec4 x, const vec4 min1, const vec4 max1, const vec4 min2, cons
60
129
  return min2 + (x - min1) / (max1 - min1) * (max2 - min2);
61
130
  }
62
131
 
132
+ float remapClamped(
133
+ const float x,
134
+ const float min1,
135
+ const float max1,
136
+ const float min2,
137
+ const float max2
138
+ ) {
139
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
140
+ }
141
+
142
+ vec2 remapClamped(
143
+ const vec2 x,
144
+ const vec2 min1,
145
+ const vec2 max1,
146
+ const vec2 min2,
147
+ const vec2 max2
148
+ ) {
149
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
150
+ }
151
+
152
+ vec3 remapClamped(
153
+ const vec3 x,
154
+ const vec3 min1,
155
+ const vec3 max1,
156
+ const vec3 min2,
157
+ const vec3 max2
158
+ ) {
159
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
160
+ }
161
+
162
+ vec4 remapClamped(
163
+ const vec4 x,
164
+ const vec4 min1,
165
+ const vec4 max1,
166
+ const vec4 min2,
167
+ const vec4 max2
168
+ ) {
169
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
170
+ }
171
+
63
172
  // Implicitly remap to 0 and 1
64
173
  float remap(const float x, const float min1, const float max1) {
65
174
  return (x - min1) / (max1 - min1);
@@ -76,7 +185,23 @@ vec3 remap(const vec3 x, const vec3 min1, const vec3 max1) {
76
185
  vec4 remap(const vec4 x, const vec4 min1, const vec4 max1) {
77
186
  return (x - min1) / (max1 - min1);
78
187
  }
79
- `,c=`// Reference: https://jcgt.org/published/0003/02/01/paper.pdf
188
+
189
+ float remapClamped(const float x, const float min1, const float max1) {
190
+ return saturate((x - min1) / (max1 - min1));
191
+ }
192
+
193
+ vec2 remapClamped(const vec2 x, const vec2 min1, const vec2 max1) {
194
+ return saturate((x - min1) / (max1 - min1));
195
+ }
196
+
197
+ vec3 remapClamped(const vec3 x, const vec3 min1, const vec3 max1) {
198
+ return saturate((x - min1) / (max1 - min1));
199
+ }
200
+
201
+ vec4 remapClamped(const vec4 x, const vec4 min1, const vec4 max1) {
202
+ return saturate((x - min1) / (max1 - min1));
203
+ }
204
+ `,o=`// Reference: https://jcgt.org/published/0003/02/01/paper.pdf
80
205
 
81
206
  vec2 signNotZero(vec2 v) {
82
207
  return vec2(v.x >= 0.0 ? 1.0 : -1.0, v.y >= 0.0 ? 1.0 : -1.0);
@@ -96,27 +221,6 @@ vec3 unpackVec2ToNormal(vec2 e) {
96
221
  }
97
222
  return normalize(v);
98
223
  }
99
- `,o=`// Taken from: https://developer.download.nvidia.com/whitepapers/2008/PCSS_Integration.pdf
100
- const vec2 poissonDisk[16] = vec2[16](
101
- vec2(-0.94201624, -0.39906216),
102
- vec2(0.94558609, -0.76890725),
103
- vec2(-0.094184101, -0.9293887),
104
- vec2(0.34495938, 0.2938776),
105
- vec2(-0.91588581, 0.45771432),
106
- vec2(-0.81544232, -0.87912464),
107
- vec2(-0.38277543, 0.27676845),
108
- vec2(0.97484398, 0.75648379),
109
- vec2(0.44323325, -0.97511554),
110
- vec2(0.53742981, -0.4737342),
111
- vec2(-0.26496911, -0.41893023),
112
- vec2(0.79197514, 0.19090188),
113
- vec2(-0.2418884, 0.99706507),
114
- vec2(-0.81409955, 0.9143759),
115
- vec2(0.19984126, 0.78641367),
116
- vec2(0.14383161, -0.1410079)
117
- );
118
-
119
- #define POISSON_DISK_COUNT (16)
120
224
  `,r=`float raySphereFirstIntersection(
121
225
  const vec3 origin,
122
226
  const vec3 direction,
@@ -251,7 +355,7 @@ void raySphereIntersections(
251
355
  ) {
252
356
  raySphereIntersections(origin, direction, vec3(0.0), radius, intersection1, intersection2);
253
357
  }
254
- `,i=`vec3 screenToView(
358
+ `,a=`vec3 screenToView(
255
359
  const vec2 uv,
256
360
  const float depth,
257
361
  const float viewZ,
@@ -272,5 +376,13 @@ vec3 turbo(const float x) {
272
376
  float b = 0.1067 + x * (12.5925 - x * (60.1097 - x * (109.0745 - x * (88.5066 - x * 26.8183))));
273
377
  return vec3(r, g, b);
274
378
  }
275
- `,a=n,v=e,d=t,m=c,f=o,p=r,l=i,u=s;exports.depth=a;exports.generators=v;exports.math=d;exports.packing=m;exports.poissonDisk=f;exports.raySphereIntersection=p;exports.transform=l;exports.turbo=u;
379
+ `,v=`// Reference: https://www.gamedev.net/tutorials/programming/graphics/contact-hardening-soft-shadows-made-fast-r4906/
380
+
381
+ vec2 vogelDisk(const int index, const int sampleCount, const float phi) {
382
+ const float goldenAngle = 2.39996322972865332;
383
+ float r = sqrt(float(index) + 0.5) / sqrt(float(sampleCount));
384
+ float theta = float(index) * goldenAngle + phi;
385
+ return r * vec2(cos(theta), sin(theta));
386
+ }
387
+ `,m=n,d=e,l=t,x=c,f=i,p=o,u=r,h=a,g=s,_=v;exports.cascadedShadowMaps=m;exports.depth=d;exports.generators=l;exports.interleavedGradientNoise=x;exports.math=f;exports.packing=p;exports.raySphereIntersection=u;exports.transform=h;exports.turbo=g;exports.vogelDisk=_;
276
388
  //# sourceMappingURL=shaders.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"shaders.cjs","sources":["../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/poissonDisk.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_depth","_generators","_math","_packing","_poissonDisk","_raySphereIntersection","_transform","_turbo","depth","generators","math","packing","poissonDisk","raySphereIntersection","transform","turbo"],"mappings":"gFAAA,MAAeA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECSFC,EAAgBR,EAChBS,EAAqBR,EACrBS,EAAeR,EACfS,EAAkBR,EAClBS,EAAsBR,EACtBS,EAAgCR,EAChCS,EAAoBR,EACpBS,EAAgBR"}
1
+ {"version":3,"file":"shaders.cjs","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"gFAAA,MAAeA,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECAAC,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,ECWFC,EAA6BV,EAC7BW,EAAgBV,EAChBW,EAAqBV,EACrBW,EAA2BV,EAC3BW,EAAeV,EACfW,EAAkBV,EAClBW,EAAgCV,EAChCW,EAAoBV,EACpBW,EAAgBV,EAChBW,EAAYV"}
package/build/shaders.js CHANGED
@@ -1,4 +1,83 @@
1
- const n = `// cSpell:words logdepthbuf
1
+ const n = `// Reference: https://github.com/mrdoob/three.js/blob/r171/examples/jsm/csm/CSMShader.js
2
+
3
+ #ifndef SHADOW_CASCADE_COUNT
4
+ #error "SHADOW_CASCADE_COUNT macro must be defined."
5
+ #endif // SHADOW_CASCADE_COUNT
6
+
7
+ int getCascadeIndex(
8
+ const mat4 viewMatrix,
9
+ const vec3 worldPosition,
10
+ const vec2 intervals[SHADOW_CASCADE_COUNT],
11
+ const float near,
12
+ const float far
13
+ ) {
14
+ vec4 viewPosition = viewMatrix * vec4(worldPosition, 1.0);
15
+ float depth = viewZToOrthographicDepth(viewPosition.z, near, far);
16
+ vec2 interval;
17
+ #pragma unroll_loop_start
18
+ for (int i = 0; i < 4; ++i) {
19
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
20
+ interval = intervals[i];
21
+ if (depth >= interval.x && depth < interval.y) {
22
+ return UNROLLED_LOOP_INDEX;
23
+ }
24
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
25
+ }
26
+ #pragma unroll_loop_end
27
+ return SHADOW_CASCADE_COUNT - 1;
28
+ }
29
+
30
+ int getFadedCascadeIndex(
31
+ const mat4 viewMatrix,
32
+ const vec3 worldPosition,
33
+ const vec2 intervals[SHADOW_CASCADE_COUNT],
34
+ const float near,
35
+ const float far,
36
+ const float jitter
37
+ ) {
38
+ vec4 viewPosition = viewMatrix * vec4(worldPosition, 1.0);
39
+ float depth = viewZToOrthographicDepth(viewPosition.z, near, far);
40
+
41
+ vec2 interval;
42
+ float intervalCenter;
43
+ float closestEdge;
44
+ float margin;
45
+ int nextIndex = -1;
46
+ int prevIndex = -1;
47
+ float alpha;
48
+
49
+ #pragma unroll_loop_start
50
+ for (int i = 0; i < 4; ++i) {
51
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
52
+ interval = intervals[i];
53
+ intervalCenter = (interval.x + interval.y) * 0.5;
54
+ closestEdge = depth < intervalCenter ? interval.x : interval.y;
55
+ margin = closestEdge * closestEdge * 0.5;
56
+ interval += margin * vec2(-0.5, 0.5);
57
+
58
+ #if UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
59
+ if (depth >= interval.x && depth < interval.y) {
60
+ prevIndex = nextIndex;
61
+ nextIndex = UNROLLED_LOOP_INDEX;
62
+ alpha = saturate(min(depth - interval.x, interval.y - depth) / margin);
63
+ }
64
+ #else // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
65
+ // Don't fade out the last cascade.
66
+ if (depth >= interval.x) {
67
+ prevIndex = nextIndex;
68
+ nextIndex = UNROLLED_LOOP_INDEX;
69
+ alpha = saturate((depth - interval.x) / margin);
70
+ }
71
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT - 1
72
+ #endif // UNROLLED_LOOP_INDEX < SHADOW_CASCADE_COUNT
73
+ }
74
+ #pragma unroll_loop_end
75
+
76
+ return jitter <= alpha
77
+ ? nextIndex
78
+ : prevIndex;
79
+ }
80
+ `, e = `// cSpell:words logdepthbuf
2
81
 
3
82
  float reverseLogDepth(const float depth, const float near, const float far) {
4
83
  #ifdef USE_LOGDEPTHBUF
@@ -15,7 +94,7 @@ float linearizeDepth(const float depth, const float near, const float far) {
15
94
  float ndc = depth * 2.0 - 1.0;
16
95
  return 2.0 * near * far / (far + near - ndc * (far - near));
17
96
  }
18
- `, e = `float checker(const vec2 uv, const vec2 repeats) {
97
+ `, t = `float checker(const vec2 uv, const vec2 repeats) {
19
98
  vec2 c = floor(repeats * uv);
20
99
  float result = mod(c.x + c.y, 2.0);
21
100
  return sign(result);
@@ -24,25 +103,15 @@ float linearizeDepth(const float depth, const float near, const float far) {
24
103
  float checker(const vec2 uv, const float repeats) {
25
104
  return checker(uv, vec2(repeats));
26
105
  }
27
- `, t = `#if !defined(saturate)
28
- #define saturate(a) clamp(a, 0.0, 1.0)
29
- #endif // !defined(saturate)
30
-
31
- float inverseLerp(const float x, const float y, const float a) {
32
- return (a - x) / (y - x);
33
- }
106
+ `, c = `// Reference: https://advances.realtimerendering.com/s2014/index.html#_NEXT_GENERATION_POST
34
107
 
35
- vec2 inverseLerp(const vec2 x, const vec2 y, const vec2 a) {
36
- return (a - x) / (y - x);
37
- }
38
-
39
- vec3 inverseLerp(const vec3 x, const vec3 y, const vec3 a) {
40
- return (a - x) / (y - x);
41
- }
42
-
43
- vec4 inverseLerp(const vec4 x, const vec4 y, const vec4 a) {
44
- return (a - x) / (y - x);
108
+ float interleavedGradientNoise(const vec2 coord) {
109
+ const vec3 magic = vec3(0.06711056, 0.00583715, 52.9829189);
110
+ return fract(magic.z * fract(dot(coord, magic.xy)));
45
111
  }
112
+ `, i = `#if !defined(saturate)
113
+ #define saturate(a) clamp(a, 0.0, 1.0)
114
+ #endif // !defined(saturate)
46
115
 
47
116
  float remap(const float x, const float min1, const float max1, const float min2, const float max2) {
48
117
  return min2 + (x - min1) / (max1 - min1) * (max2 - min2);
@@ -60,6 +129,46 @@ vec4 remap(const vec4 x, const vec4 min1, const vec4 max1, const vec4 min2, cons
60
129
  return min2 + (x - min1) / (max1 - min1) * (max2 - min2);
61
130
  }
62
131
 
132
+ float remapClamped(
133
+ const float x,
134
+ const float min1,
135
+ const float max1,
136
+ const float min2,
137
+ const float max2
138
+ ) {
139
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
140
+ }
141
+
142
+ vec2 remapClamped(
143
+ const vec2 x,
144
+ const vec2 min1,
145
+ const vec2 max1,
146
+ const vec2 min2,
147
+ const vec2 max2
148
+ ) {
149
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
150
+ }
151
+
152
+ vec3 remapClamped(
153
+ const vec3 x,
154
+ const vec3 min1,
155
+ const vec3 max1,
156
+ const vec3 min2,
157
+ const vec3 max2
158
+ ) {
159
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
160
+ }
161
+
162
+ vec4 remapClamped(
163
+ const vec4 x,
164
+ const vec4 min1,
165
+ const vec4 max1,
166
+ const vec4 min2,
167
+ const vec4 max2
168
+ ) {
169
+ return clamp(min2 + (x - min1) / (max1 - min1) * (max2 - min2), min2, max2);
170
+ }
171
+
63
172
  // Implicitly remap to 0 and 1
64
173
  float remap(const float x, const float min1, const float max1) {
65
174
  return (x - min1) / (max1 - min1);
@@ -76,7 +185,23 @@ vec3 remap(const vec3 x, const vec3 min1, const vec3 max1) {
76
185
  vec4 remap(const vec4 x, const vec4 min1, const vec4 max1) {
77
186
  return (x - min1) / (max1 - min1);
78
187
  }
79
- `, c = `// Reference: https://jcgt.org/published/0003/02/01/paper.pdf
188
+
189
+ float remapClamped(const float x, const float min1, const float max1) {
190
+ return saturate((x - min1) / (max1 - min1));
191
+ }
192
+
193
+ vec2 remapClamped(const vec2 x, const vec2 min1, const vec2 max1) {
194
+ return saturate((x - min1) / (max1 - min1));
195
+ }
196
+
197
+ vec3 remapClamped(const vec3 x, const vec3 min1, const vec3 max1) {
198
+ return saturate((x - min1) / (max1 - min1));
199
+ }
200
+
201
+ vec4 remapClamped(const vec4 x, const vec4 min1, const vec4 max1) {
202
+ return saturate((x - min1) / (max1 - min1));
203
+ }
204
+ `, o = `// Reference: https://jcgt.org/published/0003/02/01/paper.pdf
80
205
 
81
206
  vec2 signNotZero(vec2 v) {
82
207
  return vec2(v.x >= 0.0 ? 1.0 : -1.0, v.y >= 0.0 ? 1.0 : -1.0);
@@ -96,27 +221,6 @@ vec3 unpackVec2ToNormal(vec2 e) {
96
221
  }
97
222
  return normalize(v);
98
223
  }
99
- `, o = `// Taken from: https://developer.download.nvidia.com/whitepapers/2008/PCSS_Integration.pdf
100
- const vec2 poissonDisk[16] = vec2[16](
101
- vec2(-0.94201624, -0.39906216),
102
- vec2(0.94558609, -0.76890725),
103
- vec2(-0.094184101, -0.9293887),
104
- vec2(0.34495938, 0.2938776),
105
- vec2(-0.91588581, 0.45771432),
106
- vec2(-0.81544232, -0.87912464),
107
- vec2(-0.38277543, 0.27676845),
108
- vec2(0.97484398, 0.75648379),
109
- vec2(0.44323325, -0.97511554),
110
- vec2(0.53742981, -0.4737342),
111
- vec2(-0.26496911, -0.41893023),
112
- vec2(0.79197514, 0.19090188),
113
- vec2(-0.2418884, 0.99706507),
114
- vec2(-0.81409955, 0.9143759),
115
- vec2(0.19984126, 0.78641367),
116
- vec2(0.14383161, -0.1410079)
117
- );
118
-
119
- #define POISSON_DISK_COUNT (16)
120
224
  `, r = `float raySphereFirstIntersection(
121
225
  const vec3 origin,
122
226
  const vec3 direction,
@@ -251,7 +355,7 @@ void raySphereIntersections(
251
355
  ) {
252
356
  raySphereIntersections(origin, direction, vec3(0.0), radius, intersection1, intersection2);
253
357
  }
254
- `, i = `vec3 screenToView(
358
+ `, a = `vec3 screenToView(
255
359
  const vec2 uv,
256
360
  const float depth,
257
361
  const float viewZ,
@@ -272,15 +376,25 @@ vec3 turbo(const float x) {
272
376
  float b = 0.1067 + x * (12.5925 - x * (60.1097 - x * (109.0745 - x * (88.5066 - x * 26.8183))));
273
377
  return vec3(r, g, b);
274
378
  }
275
- `, a = n, v = e, d = t, m = c, f = o, x = r, l = i, p = s;
379
+ `, v = `// Reference: https://www.gamedev.net/tutorials/programming/graphics/contact-hardening-soft-shadows-made-fast-r4906/
380
+
381
+ vec2 vogelDisk(const int index, const int sampleCount, const float phi) {
382
+ const float goldenAngle = 2.39996322972865332;
383
+ float r = sqrt(float(index) + 0.5) / sqrt(float(sampleCount));
384
+ float theta = float(index) * goldenAngle + phi;
385
+ return r * vec2(cos(theta), sin(theta));
386
+ }
387
+ `, m = n, d = e, l = t, x = c, f = i, p = o, u = r, h = a, g = s, _ = v;
276
388
  export {
277
- a as depth,
278
- v as generators,
279
- d as math,
280
- m as packing,
281
- f as poissonDisk,
282
- x as raySphereIntersection,
283
- l as transform,
284
- p as turbo
389
+ m as cascadedShadowMaps,
390
+ d as depth,
391
+ l as generators,
392
+ x as interleavedGradientNoise,
393
+ f as math,
394
+ p as packing,
395
+ u as raySphereIntersection,
396
+ h as transform,
397
+ g as turbo,
398
+ _ as vogelDisk
285
399
  };
286
400
  //# sourceMappingURL=shaders.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"shaders.js","sources":["../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/poissonDisk.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_depth","_generators","_math","_packing","_poissonDisk","_raySphereIntersection","_transform","_turbo","depth","generators","math","packing","poissonDisk","raySphereIntersection","transform","turbo"],"mappings":"AAAA,MAAeA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCSFC,IAAgBR,GAChBS,IAAqBR,GACrBS,IAAeR,GACfS,IAAkBR,GAClBS,IAAsBR,GACtBS,IAAgCR,GAChCS,IAAoBR,GACpBS,IAAgBR;"}
1
+ {"version":3,"file":"shaders.js","sources":["../src/shaders/cascadedShadowMaps.glsl?raw","../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/interleavedGradientNoise.glsl?raw","../src/shaders/math.glsl?raw","../src/shaders/packing.glsl?raw","../src/shaders/raySphereIntersection.glsl?raw","../src/shaders/transform.glsl?raw","../src/shaders/turbo.glsl?raw","../src/shaders/vogelDisk.glsl?raw","../src/shaders/index.ts"],"sourcesContent":null,"names":["_cascadedShadowMaps","_depth","_generators","_interleavedGradientNoise","_math","_packing","_raySphereIntersection","_transform","_turbo","_vogelDisk","cascadedShadowMaps","depth","generators","interleavedGradientNoise","math","packing","raySphereIntersection","transform","turbo","vogelDisk"],"mappings":"AAAA,MAAeA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCAAC,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GCWFC,IAA6BV,GAC7BW,IAAgBV,GAChBW,IAAqBV,GACrBW,IAA2BV,GAC3BW,IAAeV,GACfW,IAAkBV,GAClBW,IAAgCV,GAChCW,IAAoBV,GACpBW,IAAgBV,GAChBW,IAAYV;"}