@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.
- package/build/index.cjs +1 -1
- package/build/index.cjs.map +1 -1
- package/build/index.js +346 -185
- package/build/index.js.map +1 -1
- package/build/r3f.js +2 -2
- package/build/shaders.cjs +155 -43
- package/build/shaders.cjs.map +1 -1
- package/build/shaders.js +165 -51
- package/build/shaders.js.map +1 -1
- package/build/shared.cjs +1 -1
- package/build/shared.cjs.map +1 -1
- package/build/shared.js +104 -111
- package/build/shared.js.map +1 -1
- package/package.json +17 -1
- package/src/DataLoader.ts +4 -8
- package/src/STBNLoader.ts +21 -0
- package/src/bufferGeometry.ts +5 -4
- package/src/constants.ts +3 -0
- package/src/decorators.ts +207 -0
- package/src/defineShorthand.ts +68 -0
- package/src/index.ts +3 -0
- package/src/math.ts +36 -1
- package/src/r3f/types.ts +14 -13
- package/src/shaders/cascadedShadowMaps.glsl +79 -0
- package/src/shaders/index.ts +6 -2
- package/src/shaders/interleavedGradientNoise.glsl +6 -0
- package/src/shaders/math.glsl +56 -16
- package/src/shaders/vogelDisk.glsl +8 -0
- package/src/typedArrayParsers.ts +19 -8
- package/types/DataLoader.d.ts +4 -4
- package/types/STBNLoader.d.ts +1 -0
- package/types/bufferGeometry.d.ts +2 -1
- package/types/constants.d.ts +1 -0
- package/types/decorators.d.ts +22 -0
- package/types/defineShorthand.d.ts +16 -0
- package/types/index.d.ts +3 -0
- package/types/math.d.ts +4 -1
- package/types/r3f/types.d.ts +6 -7
- package/types/shaders/index.d.ts +3 -1
- package/src/shaders/poissonDisk.glsl +0 -21
package/build/index.js.map
CHANGED
@@ -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,
|
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
|
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=`//
|
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
|
-
`,
|
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
|
-
`,
|
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
|
-
|
36
|
-
|
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
|
-
|
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
|
-
`,
|
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
|
-
`,
|
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
|
package/build/shaders.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shaders.cjs","sources":["../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/
|
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 = `//
|
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
|
-
`,
|
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
|
-
`,
|
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
|
-
|
36
|
-
|
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
|
-
|
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
|
-
`,
|
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
|
-
`,
|
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
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
f as
|
282
|
-
|
283
|
-
|
284
|
-
|
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
|
package/build/shaders.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"shaders.js","sources":["../src/shaders/depth.glsl?raw","../src/shaders/generators.glsl?raw","../src/shaders/
|
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;"}
|