@3driseai/3drise-viewer 0.1.29 → 0.1.30
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/dist/animationsV2/ClipsRuntime.d.ts +4 -0
- package/dist/animationsV2/ClipsRuntime.d.ts.map +1 -1
- package/dist/animationsV2/ClipsRuntime.js +66 -2
- package/dist/animationsV2/clipUtils.js +1 -1
- package/dist/animationsV2/sequenceUtils.d.ts +5 -0
- package/dist/animationsV2/sequenceUtils.d.ts.map +1 -1
- package/dist/animationsV2/sequenceUtils.js +10 -0
- package/dist/animationsV2/types.d.ts +6 -0
- package/dist/animationsV2/types.d.ts.map +1 -1
- package/dist/components/EffectsGenerator.d.ts.map +1 -1
- package/dist/components/EffectsGenerator.js +43 -38
- package/dist/components/GeometryShape.d.ts.map +1 -1
- package/dist/components/GeometryShape.js +22 -2
- package/dist/components/ObjectNode.d.ts.map +1 -1
- package/dist/components/ObjectNode.js +6 -17
- package/dist/components/ParticlesGenerator.d.ts.map +1 -1
- package/dist/components/ParticlesGenerator.js +44 -24
- package/dist/components/PickVolume.d.ts +17 -0
- package/dist/components/PickVolume.d.ts.map +1 -0
- package/dist/components/PickVolume.js +20 -0
- package/dist/components/SkyStars.d.ts.map +1 -1
- package/dist/components/SkyStars.js +83 -2
- package/dist/components/TextGenerator.d.ts.map +1 -1
- package/dist/components/TextGenerator.js +3 -2
- package/dist/components/index.d.ts +1 -8
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +1 -4
- package/dist/components/particles/BioluminescentWakeParticles.d.ts +5 -0
- package/dist/components/particles/BioluminescentWakeParticles.d.ts.map +1 -1
- package/dist/components/particles/BioluminescentWakeParticles.js +2 -1
- package/dist/components/particles/BrownianDustParticles.d.ts +5 -0
- package/dist/components/particles/BrownianDustParticles.d.ts.map +1 -1
- package/dist/components/particles/BrownianDustParticles.js +2 -0
- package/dist/components/particles/ChladniSandParticles.d.ts +5 -0
- package/dist/components/particles/ChladniSandParticles.d.ts.map +1 -1
- package/dist/components/particles/ChladniSandParticles.js +2 -1
- package/dist/components/particles/ElectronOrbitalsParticles.d.ts +5 -0
- package/dist/components/particles/ElectronOrbitalsParticles.d.ts.map +1 -1
- package/dist/components/particles/ElectronOrbitalsParticles.js +2 -1
- package/dist/components/particles/FaradayPowderParticles.d.ts +5 -0
- package/dist/components/particles/FaradayPowderParticles.d.ts.map +1 -1
- package/dist/components/particles/FaradayPowderParticles.js +2 -1
- package/dist/components/particles/GrinderSparksParticles.d.ts +5 -0
- package/dist/components/particles/GrinderSparksParticles.d.ts.map +1 -1
- package/dist/components/particles/GrinderSparksParticles.js +2 -1
- package/dist/components/particles/MagneticBottleParticles.d.ts +5 -0
- package/dist/components/particles/MagneticBottleParticles.d.ts.map +1 -1
- package/dist/components/particles/MagneticBottleParticles.js +2 -1
- package/dist/components/particles/NeonRainParticles.d.ts +5 -0
- package/dist/components/particles/NeonRainParticles.d.ts.map +1 -1
- package/dist/components/particles/NeonRainParticles.js +2 -1
- package/dist/components/particles/ShapeBurstParticles.d.ts +5 -0
- package/dist/components/particles/ShapeBurstParticles.d.ts.map +1 -1
- package/dist/components/particles/ShapeBurstParticles.js +2 -1
- package/dist/components/particles/ShapeFlowParticles.d.ts +5 -0
- package/dist/components/particles/ShapeFlowParticles.d.ts.map +1 -1
- package/dist/components/particles/ShapeFlowParticles.js +2 -1
- package/dist/components/particles/TidalStreamParticles.d.ts +5 -0
- package/dist/components/particles/TidalStreamParticles.d.ts.map +1 -1
- package/dist/components/particles/TidalStreamParticles.js +2 -0
- package/dist/components/text/PlainText.d.ts +15 -0
- package/dist/components/text/PlainText.d.ts.map +1 -0
- package/dist/components/text/PlainText.js +4 -0
- package/dist/components/text/TextObjectView.d.ts +3 -1
- package/dist/components/text/TextObjectView.d.ts.map +1 -1
- package/dist/components/text/TextObjectView.js +9 -3
- package/dist/components/text/engine/looks/index.d.ts.map +1 -1
- package/dist/components/text/engine/looks/index.js +2 -1
- package/dist/components/text/engine/looks/plain.d.ts +146 -0
- package/dist/components/text/engine/looks/plain.d.ts.map +1 -0
- package/dist/components/text/engine/looks/plain.js +104 -0
- package/dist/components/text/fonts/bebas-neue.outline.d.ts +3 -0
- package/dist/components/text/fonts/bebas-neue.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/bebas-neue.outline.js +4 -0
- package/dist/components/text/fonts/bebas-neue.strokes.d.ts +3 -0
- package/dist/components/text/fonts/bebas-neue.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/bebas-neue.strokes.js +4 -0
- package/dist/components/text/fonts/index.d.ts +1 -1
- package/dist/components/text/fonts/index.d.ts.map +1 -1
- package/dist/components/text/fonts/index.js +15 -1
- package/dist/components/text/fonts/inter.outline.d.ts +3 -0
- package/dist/components/text/fonts/inter.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/inter.outline.js +4 -0
- package/dist/components/text/fonts/inter.strokes.d.ts +3 -0
- package/dist/components/text/fonts/inter.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/inter.strokes.js +4 -0
- package/dist/components/text/fonts/lora.outline.d.ts +3 -0
- package/dist/components/text/fonts/lora.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/lora.outline.js +4 -0
- package/dist/components/text/fonts/lora.strokes.d.ts +3 -0
- package/dist/components/text/fonts/lora.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/lora.strokes.js +4 -0
- package/dist/components/text/fonts/montserrat.outline.d.ts +3 -0
- package/dist/components/text/fonts/montserrat.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/montserrat.outline.js +4 -0
- package/dist/components/text/fonts/montserrat.strokes.d.ts +3 -0
- package/dist/components/text/fonts/montserrat.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/montserrat.strokes.js +4 -0
- package/dist/components/text/fonts/oswald.outline.d.ts +3 -0
- package/dist/components/text/fonts/oswald.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/oswald.outline.js +4 -0
- package/dist/components/text/fonts/oswald.strokes.d.ts +3 -0
- package/dist/components/text/fonts/oswald.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/oswald.strokes.js +4 -0
- package/dist/components/text/fonts/playfair-display.outline.d.ts +3 -0
- package/dist/components/text/fonts/playfair-display.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/playfair-display.outline.js +4 -0
- package/dist/components/text/fonts/playfair-display.strokes.d.ts +3 -0
- package/dist/components/text/fonts/playfair-display.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/playfair-display.strokes.js +4 -0
- package/dist/components/text/fonts/roboto.outline.d.ts +3 -0
- package/dist/components/text/fonts/roboto.outline.d.ts.map +1 -0
- package/dist/components/text/fonts/roboto.outline.js +4 -0
- package/dist/components/text/fonts/roboto.strokes.d.ts +3 -0
- package/dist/components/text/fonts/roboto.strokes.d.ts.map +1 -0
- package/dist/components/text/fonts/roboto.strokes.js +4 -0
- package/dist/components/text/index.d.ts +2 -0
- package/dist/components/text/index.d.ts.map +1 -1
- package/dist/components/text/index.js +1 -0
- package/dist/components/text/useTextObject.d.ts +1 -0
- package/dist/components/text/useTextObject.d.ts.map +1 -1
- package/dist/components/text/useTextObject.js +23 -11
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +2 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/operations/catalogue/flock.d.ts.map +1 -1
- package/dist/operations/catalogue/flock.js +44 -9
- package/dist/operations/catalogue/inkBloom.d.ts.map +1 -1
- package/dist/operations/catalogue/inkBloom.js +46 -9
- package/dist/operations/catalogue/liquidMetal.d.ts.map +1 -1
- package/dist/operations/catalogue/liquidMetal.js +41 -12
- package/dist/operations/catalogue/particleSwarm.d.ts.map +1 -1
- package/dist/operations/catalogue/particleSwarm.js +29 -9
- package/dist/operations/catalogue/petalPeel.d.ts.map +1 -1
- package/dist/operations/catalogue/petalPeel.js +33 -9
- package/dist/operations/catalogue/portal.d.ts.map +1 -1
- package/dist/operations/catalogue/portal.js +33 -11
- package/dist/operations/catalogue/sandErosion.d.ts.map +1 -1
- package/dist/operations/catalogue/sandErosion.js +36 -14
- package/dist/operations/catalogue/teleport.d.ts.map +1 -1
- package/dist/operations/catalogue/teleport.js +43 -12
- package/dist/operations/catalogue/unweave.d.ts.map +1 -1
- package/dist/operations/catalogue/unweave.js +34 -15
- package/dist/operations/catalogue/voxelize.d.ts.map +1 -1
- package/dist/operations/catalogue/voxelize.js +37 -10
- package/dist/triggers/engine.d.ts +1 -1
- package/dist/triggers/engine.d.ts.map +1 -1
- package/dist/triggers/engine.js +3 -0
- package/dist/triggers/hosts/actions.d.ts.map +1 -1
- package/dist/triggers/hosts/actions.js +1 -1
- package/dist/triggers/hosts/interactions.d.ts.map +1 -1
- package/dist/triggers/hosts/interactions.js +1 -1
- package/dist/utils/pickProxy.d.ts +11 -0
- package/dist/utils/pickProxy.d.ts.map +1 -0
- package/dist/utils/pickProxy.js +36 -0
- package/dist/utils/shapes.d.ts +4 -0
- package/dist/utils/shapes.d.ts.map +1 -1
- package/dist/utils/shapes.js +4 -1
- package/dist/utils/textShape.d.ts +24 -0
- package/dist/utils/textShape.d.ts.map +1 -0
- package/dist/utils/textShape.js +102 -0
- package/package.json +2 -2
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useMemo, useRef } from 'react';
|
|
3
|
+
import { useFrame } from '@react-three/fiber';
|
|
4
|
+
import { pickSphere, stopRaycast } from '../utils/pickProxy.js';
|
|
5
|
+
/**
|
|
6
|
+
* Hover / click land on one invisible sphere over a generative object's volume, never on what it draws: the
|
|
7
|
+
* sprites of a particle system live on the GPU (the CPU attributes are seeds, not positions), an effect's points
|
|
8
|
+
* are sparse, and a user who clicks a cloud means the cloud. The children are taken out of raycasting as they
|
|
9
|
+
* appear (a build can add meshes after mount), so the sphere is the only hit target. Its geometry also gives the
|
|
10
|
+
* selection gizmo a true bounding box.
|
|
11
|
+
*/
|
|
12
|
+
const PickVolume = ({ center = [0, 0, 0], radius, children }) => {
|
|
13
|
+
const inner = useRef(null);
|
|
14
|
+
const proxy = useMemo(() => pickSphere(), []);
|
|
15
|
+
useEffect(() => () => { proxy.geometry.dispose(); proxy.material.dispose(); }, [proxy]);
|
|
16
|
+
useFrame(() => { if (inner.current)
|
|
17
|
+
stopRaycast(inner.current); });
|
|
18
|
+
return (_jsxs("group", { children: [_jsx("primitive", { object: proxy, position: center, scale: [radius, radius, radius] }), _jsx("group", { ref: inner, children: children })] }));
|
|
19
|
+
};
|
|
20
|
+
export default PickVolume;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SkyStars.d.ts","sourceRoot":"","sources":["../../src/components/SkyStars.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAI1D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGzF,MAAM,WAAW,aAAa;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,sFAAsF;IACtF,KAAK,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC;
|
|
1
|
+
{"version":3,"file":"SkyStars.d.ts","sourceRoot":"","sources":["../../src/components/SkyStars.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAqC,MAAM,OAAO,CAAC;AAI1D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGzF,MAAM,WAAW,aAAa;IAC1B,YAAY,EAAE,YAAY,CAAC;IAC3B,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,sFAAsF;IACtF,KAAK,CAAC,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC;AA2KD,QAAA,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,aAAa,CAsGrC,CAAC;AAEF,eAAe,QAAQ,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { jsx as _jsx } from "react/jsx-runtime";
|
|
1
|
+
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { useEffect, useMemo, useRef } from 'react';
|
|
3
3
|
import * as THREE from 'three';
|
|
4
4
|
import { useFrame } from '@react-three/fiber';
|
|
@@ -78,6 +78,51 @@ const gauss = () => Math.sqrt(-2 * Math.log(1 - Math.random())) * Math.cos(Math.
|
|
|
78
78
|
* unresolved glow reads as the band even though every point is still a star. The
|
|
79
79
|
* full colour-temperature tint is baked per star; the shader scales it by warmth.
|
|
80
80
|
*/
|
|
81
|
+
/**
|
|
82
|
+
* The unresolved glow of the band: a soft additive sheet on the same dome, mottled
|
|
83
|
+
* by value noise so it has dust lanes and brighter clouds rather than a smooth
|
|
84
|
+
* stripe. Drawn only while milkyWay > 0.
|
|
85
|
+
*/
|
|
86
|
+
const glowVertexShader = /* glsl */ `
|
|
87
|
+
varying vec3 vDir;
|
|
88
|
+
void main() {
|
|
89
|
+
vec4 world = modelMatrix * vec4(position, 1.0);
|
|
90
|
+
vDir = normalize(world.xyz - cameraPosition);
|
|
91
|
+
gl_Position = projectionMatrix * viewMatrix * world;
|
|
92
|
+
}
|
|
93
|
+
`;
|
|
94
|
+
const glowFragmentShader = /* glsl */ `
|
|
95
|
+
uniform vec3 uBandNormal;
|
|
96
|
+
uniform vec3 uBandU;
|
|
97
|
+
uniform vec3 uBandV;
|
|
98
|
+
uniform float uAmount;
|
|
99
|
+
uniform float uNight;
|
|
100
|
+
uniform float uBrightness;
|
|
101
|
+
uniform float uWarmth;
|
|
102
|
+
varying vec3 vDir;
|
|
103
|
+
float hash(vec2 p) { return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453); }
|
|
104
|
+
float vnoise(vec2 p) {
|
|
105
|
+
vec2 i = floor(p), f = fract(p);
|
|
106
|
+
f = f * f * (3.0 - 2.0 * f);
|
|
107
|
+
return mix(mix(hash(i), hash(i + vec2(1.0, 0.0)), f.x), mix(hash(i + vec2(0.0, 1.0)), hash(i + vec2(1.0, 1.0)), f.x), f.y);
|
|
108
|
+
}
|
|
109
|
+
void main() {
|
|
110
|
+
vec3 d = normalize(vDir);
|
|
111
|
+
float lat = asin(clamp(dot(d, uBandNormal), -1.0, 1.0)); // angle off the band plane
|
|
112
|
+
float lon = atan(dot(d, uBandV), dot(d, uBandU)); // position along the band
|
|
113
|
+
float horizon = smoothstep(-0.02, 0.2, d.y);
|
|
114
|
+
// core + wide halo, thinner on one side like the real band's dust lane
|
|
115
|
+
float core = exp(-pow(lat / 0.09, 2.0));
|
|
116
|
+
float halo = exp(-pow(lat / 0.3, 2.0)) * 0.45;
|
|
117
|
+
vec2 p = vec2(lon * 3.0, lat * 12.0);
|
|
118
|
+
float m = vnoise(p * 2.0) * 0.6 + vnoise(p * 5.0) * 0.3 + vnoise(p * 11.0) * 0.1; // clouds and lanes
|
|
119
|
+
float lane = 1.0 - 0.75 * exp(-pow((lat + 0.025 * sin(lon * 2.0)) / 0.03, 2.0)) * smoothstep(0.3, 0.7, vnoise(vec2(lon * 2.0, 0.5)));
|
|
120
|
+
float bulge = 0.7 + 0.6 * exp(-pow(mod(lon + 3.1416, 6.2832) - 3.1416, 2.0) / 1.2); // brighter toward the centre
|
|
121
|
+
float glow = (core * lane + halo) * (0.55 + 0.9 * m) * bulge * horizon;
|
|
122
|
+
vec3 tint = mix(vec3(1.0), vec3(0.78, 0.84, 1.0), uWarmth * 0.7) + vec3(0.12, 0.05, 0.0) * m * uWarmth;
|
|
123
|
+
gl_FragColor = vec4(tint * glow * uAmount * uNight * uBrightness * 0.22, 1.0);
|
|
124
|
+
}
|
|
125
|
+
`;
|
|
81
126
|
function buildStars(count, milkyWay) {
|
|
82
127
|
const pos = new Float32Array(count * 3);
|
|
83
128
|
const mag = new Float32Array(count);
|
|
@@ -124,6 +169,7 @@ function buildStars(count, milkyWay) {
|
|
|
124
169
|
}
|
|
125
170
|
const SkyStars = ({ timeSettings, skySettings, stars }) => {
|
|
126
171
|
const pointsRef = useRef(null);
|
|
172
|
+
const glowRef = useRef(null);
|
|
127
173
|
const { update } = useCloudSun({ skySettings, timeSettings });
|
|
128
174
|
const { count, milkyWay, brightness, size, twinkle, warmth } = normalizeSkyStars(stars);
|
|
129
175
|
// Structural: a new dome only when count or the band changes.
|
|
@@ -147,8 +193,30 @@ const SkyStars = ({ timeSettings, skySettings, stars }) => {
|
|
|
147
193
|
fog: false,
|
|
148
194
|
toneMapped: false,
|
|
149
195
|
}), []);
|
|
196
|
+
const glowGeometry = useMemo(() => new THREE.SphereGeometry(1, 48, 32), []);
|
|
197
|
+
const glowMaterial = useMemo(() => new THREE.ShaderMaterial({
|
|
198
|
+
uniforms: {
|
|
199
|
+
uBandNormal: { value: BAND_NORMAL.clone() },
|
|
200
|
+
uBandU: { value: BAND_U.clone() },
|
|
201
|
+
uBandV: { value: BAND_V.clone() },
|
|
202
|
+
uAmount: { value: 0 },
|
|
203
|
+
uNight: { value: 0 },
|
|
204
|
+
uBrightness: { value: 1 },
|
|
205
|
+
uWarmth: { value: 0.5 },
|
|
206
|
+
},
|
|
207
|
+
vertexShader: glowVertexShader,
|
|
208
|
+
fragmentShader: glowFragmentShader,
|
|
209
|
+
transparent: true,
|
|
210
|
+
depthWrite: false,
|
|
211
|
+
depthTest: true,
|
|
212
|
+
side: THREE.BackSide,
|
|
213
|
+
blending: THREE.AdditiveBlending,
|
|
214
|
+
fog: false,
|
|
215
|
+
toneMapped: false,
|
|
216
|
+
}), []);
|
|
150
217
|
useEffect(() => () => geometry.dispose(), [geometry]);
|
|
151
218
|
useEffect(() => () => material.dispose(), [material]);
|
|
219
|
+
useEffect(() => () => { glowGeometry.dispose(); glowMaterial.dispose(); }, [glowGeometry, glowMaterial]);
|
|
152
220
|
const spin = useMemo(() => new THREE.Quaternion(), []);
|
|
153
221
|
useFrame(({ camera, gl, clock }) => {
|
|
154
222
|
const points = pointsRef.current;
|
|
@@ -163,8 +231,11 @@ const SkyStars = ({ timeSettings, skySettings, stars }) => {
|
|
|
163
231
|
const sunElevation = THREE.MathUtils.radToDeg(Math.asin(THREE.MathUtils.clamp(sunDir.y, -1, 1)));
|
|
164
232
|
night = nightAmount(sunElevation);
|
|
165
233
|
}
|
|
234
|
+
const glow = glowRef.current;
|
|
166
235
|
if (night <= 0.001) {
|
|
167
236
|
points.visible = false;
|
|
237
|
+
if (glow)
|
|
238
|
+
glow.visible = false;
|
|
168
239
|
return;
|
|
169
240
|
}
|
|
170
241
|
points.visible = true;
|
|
@@ -181,7 +252,17 @@ const SkyStars = ({ timeSettings, skySettings, stars }) => {
|
|
|
181
252
|
material.uniforms.uSize.value = size;
|
|
182
253
|
material.uniforms.uTwinkle.value = twinkle;
|
|
183
254
|
material.uniforms.uWarmth.value = warmth;
|
|
255
|
+
if (glow) {
|
|
256
|
+
glow.visible = milkyWay > 0.001;
|
|
257
|
+
glow.position.copy(points.position);
|
|
258
|
+
glow.scale.setScalar(far * 0.86);
|
|
259
|
+
glow.quaternion.copy(points.quaternion);
|
|
260
|
+
glowMaterial.uniforms.uAmount.value = milkyWay;
|
|
261
|
+
glowMaterial.uniforms.uNight.value = night;
|
|
262
|
+
glowMaterial.uniforms.uBrightness.value = brightness;
|
|
263
|
+
glowMaterial.uniforms.uWarmth.value = warmth;
|
|
264
|
+
}
|
|
184
265
|
});
|
|
185
|
-
return _jsx("points", { ref: pointsRef, geometry: geometry, material: material, frustumCulled: false, renderOrder: -2 });
|
|
266
|
+
return (_jsxs(_Fragment, { children: [_jsx("mesh", { ref: glowRef, geometry: glowGeometry, material: glowMaterial, frustumCulled: false, renderOrder: -3 }), _jsx("points", { ref: pointsRef, geometry: geometry, material: material, frustumCulled: false, renderOrder: -2 })] }));
|
|
186
267
|
};
|
|
187
268
|
export default SkyStars;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextGenerator.d.ts","sourceRoot":"","sources":["../../src/components/TextGenerator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,qBAAqB,EAA2C,MAAM,uBAAuB,CAAC;AAC5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,KAAK,kBAAkB,GAAG,gBAAgB,GAAG;IACzC,aAAa,EAAE,qBAAqB,CAAC;CACxC,CAAC;
|
|
1
|
+
{"version":3,"file":"TextGenerator.d.ts","sourceRoot":"","sources":["../../src/components/TextGenerator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,KAAK,EAAE,qBAAqB,EAA2C,MAAM,uBAAuB,CAAC;AAC5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAG7D,KAAK,kBAAkB,GAAG,gBAAgB,GAAG;IACzC,aAAa,EAAE,qBAAqB,CAAC;CACxC,CAAC;AAmBF,QAAA,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAc/C,CAAC;AACF,eAAe,aAAa,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { HandwritingText, NeonTubeText, FourierSketchText, FrostGrowthText, PlasmaDischargeText, BurnAwayText, LightPaintingText, ConstellationText, InkBleedText, LiquidMetalText, EmbroideryText, ChalkboardText } from './text/index.js';
|
|
3
|
-
/** The text looks' components by config.type (
|
|
2
|
+
import { HandwritingText, NeonTubeText, FourierSketchText, FrostGrowthText, PlasmaDischargeText, BurnAwayText, LightPaintingText, ConstellationText, InkBleedText, LiquidMetalText, EmbroideryText, ChalkboardText, PlainText } from './text/index.js';
|
|
3
|
+
/** The text looks' components by config.type (plain, handwriting, neonTube, …). */
|
|
4
4
|
const FAMILY = {
|
|
5
5
|
handwriting: HandwritingText,
|
|
6
6
|
neonTube: NeonTubeText,
|
|
@@ -14,6 +14,7 @@ const FAMILY = {
|
|
|
14
14
|
liquidMetal: LiquidMetalText,
|
|
15
15
|
embroidery: EmbroideryText,
|
|
16
16
|
chalkboard: ChalkboardText,
|
|
17
|
+
plain: PlainText,
|
|
17
18
|
};
|
|
18
19
|
const TextGenerator = ({ createdObject, onObjectReady, onObjectDispose }) => {
|
|
19
20
|
const config = createdObject.config;
|
|
@@ -42,8 +42,6 @@ export type { VoronoiGridProps } from './VoronoiGrid';
|
|
|
42
42
|
export type { HdrPlaylistRendererProps } from './HdrPlaylistRenderer';
|
|
43
43
|
export type { ImageGeometryProps } from './ImageGeometry';
|
|
44
44
|
export type { LensflareProps } from './Lensflare';
|
|
45
|
-
export type { LetterData, LetterProps } from './Letter';
|
|
46
|
-
export type { LettersProps } from './Letters';
|
|
47
45
|
export type { LightsManagerProps } from './LightsManager';
|
|
48
46
|
export type { LoadingIndicatorProps } from './LoadingIndicator';
|
|
49
47
|
export type { MaterialLibraryProps } from './MaterialLibrary';
|
|
@@ -61,10 +59,8 @@ export type { SkySystemProps, SkySystemRef } from './SkySystem';
|
|
|
61
59
|
export type { SparklesBurstProps } from './SparklesBurst';
|
|
62
60
|
export type { SunCoreProps } from './SunCore';
|
|
63
61
|
export type { SunLightProps } from './SunLight';
|
|
64
|
-
export type { Text2DProps } from './Text2D';
|
|
65
62
|
export type { TerrainBuilderProps } from './TerrainBuilder';
|
|
66
63
|
export type { OceanBuilderProps } from './OceanBuilder';
|
|
67
|
-
export type { Text3DProps } from './Text3D';
|
|
68
64
|
export type { VolumePointsProps } from './VolumePoints';
|
|
69
65
|
export { AnimatedObject, default as AnimatedObjectDefault } from './AnimatedObject';
|
|
70
66
|
export { default as Bubbles } from './Bubbles';
|
|
@@ -74,6 +70,7 @@ export { default as CloudsGenerator } from './CloudsGenerator';
|
|
|
74
70
|
export { default as CreatedObject } from './CreatedObject';
|
|
75
71
|
export { default as CustomPrimitive } from './CustomPrimitive';
|
|
76
72
|
export { default as EffectsGenerator } from './EffectsGenerator';
|
|
73
|
+
export { default as PickVolume } from './PickVolume';
|
|
77
74
|
export { default as ParticlesGenerator } from './ParticlesGenerator';
|
|
78
75
|
export { default as EnvironmentManager } from './EnvironmentManager';
|
|
79
76
|
export { default as HdrEnvironment, isHdrActive } from './HdrEnvironment';
|
|
@@ -91,8 +88,6 @@ export { default as GridGenerator } from './GridsGenerator';
|
|
|
91
88
|
export { default as HdrPlaylistRenderer } from './HdrPlaylistRenderer';
|
|
92
89
|
export { ImageGeometry } from './ImageGeometry';
|
|
93
90
|
export { default as Lensflare, createFlareTexture } from './Lensflare';
|
|
94
|
-
export { default as Letter } from './Letter';
|
|
95
|
-
export { default as Letters } from './Letters';
|
|
96
91
|
export { default as LightObject } from './LightObject';
|
|
97
92
|
export { default as LightsManager } from './LightsManager';
|
|
98
93
|
export { default as Lines } from './Lines';
|
|
@@ -155,8 +150,6 @@ export type { SkyStarsProps } from './SkyStars';
|
|
|
155
150
|
export type { MoonDiscProps } from './MoonDisc';
|
|
156
151
|
export { default as TerrainBuilder } from './TerrainBuilder';
|
|
157
152
|
export { default as OceanBuilder } from './OceanBuilder';
|
|
158
|
-
export { default as Text2D } from './Text2D';
|
|
159
|
-
export { default as Text3D } from './Text3D';
|
|
160
153
|
export { VolumePoints } from './VolumePoints';
|
|
161
154
|
export { FitGroup, GeometryMesh, computeMode, contourSlices, evenScatter, meshVertices, plexus, surfaceScatter, symmetricScatter, useShapeGeometry as useGeometryShape, volumeFill, wireframe, } from './GeometryShape';
|
|
162
155
|
export { contour2D, edges3D } from './extractOutline';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAIA,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAChE,YAAY,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AACpE,YAAY,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC7F,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAG1C,YAAY,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AAC1E,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAC5D,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AACpD,YAAY,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAC9C,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACtD,YAAY,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAC;AACtE,YAAY,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"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"}
|
package/dist/components/index.js
CHANGED
|
@@ -9,6 +9,7 @@ export { default as CloudsGenerator } from './CloudsGenerator.js';
|
|
|
9
9
|
export { default as CreatedObject } from './CreatedObject.js';
|
|
10
10
|
export { default as CustomPrimitive } from './CustomPrimitive.js';
|
|
11
11
|
export { default as EffectsGenerator } from './EffectsGenerator.js';
|
|
12
|
+
export { default as PickVolume } from './PickVolume.js';
|
|
12
13
|
export { default as ParticlesGenerator } from './ParticlesGenerator.js';
|
|
13
14
|
export { default as EnvironmentManager } from './EnvironmentManager.js';
|
|
14
15
|
export { default as HdrEnvironment, isHdrActive } from './HdrEnvironment.js';
|
|
@@ -26,8 +27,6 @@ export { default as GridGenerator } from './GridsGenerator.js';
|
|
|
26
27
|
export { default as HdrPlaylistRenderer } from './HdrPlaylistRenderer.js';
|
|
27
28
|
export { ImageGeometry } from './ImageGeometry.js';
|
|
28
29
|
export { default as Lensflare, createFlareTexture } from './Lensflare.js';
|
|
29
|
-
export { default as Letter } from './Letter.js';
|
|
30
|
-
export { default as Letters } from './Letters.js';
|
|
31
30
|
export { default as LightObject } from './LightObject.js';
|
|
32
31
|
export { default as LightsManager } from './LightsManager.js';
|
|
33
32
|
export { default as Lines } from './Lines.js';
|
|
@@ -88,8 +87,6 @@ export { default as MoonDisc } from './MoonDisc.js';
|
|
|
88
87
|
export { default as SkyStars } from './SkyStars.js';
|
|
89
88
|
export { default as TerrainBuilder } from './TerrainBuilder.js';
|
|
90
89
|
export { default as OceanBuilder } from './OceanBuilder.js';
|
|
91
|
-
export { default as Text2D } from './Text2D.js';
|
|
92
|
-
export { default as Text3D } from './Text3D.js';
|
|
93
90
|
export { VolumePoints } from './VolumePoints.js';
|
|
94
91
|
// --------------------------------------------------- geometry utilities
|
|
95
92
|
// GeometryShape also declares edges3D/contour2D, byte-identical to the ones in
|
|
@@ -12,6 +12,11 @@ export interface BioluminescentWakeParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const BioluminescentWakeParticles: React.FC<BioluminescentWakeParticlesProps>;
|
|
16
21
|
export default BioluminescentWakeParticles;
|
|
17
22
|
//# sourceMappingURL=BioluminescentWakeParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BioluminescentWakeParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/BioluminescentWakeParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMlH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,gCAAiC,SAAQ,gBAAgB;IACtE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iCAAiC,CAAC;IAC1C,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"BioluminescentWakeParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/BioluminescentWakeParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,iCAAiC,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMlH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,gCAAiC,SAAQ,gBAAgB;IACtE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,iCAAiC,CAAC;IAC1C,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAqID,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAwC,CAAC;AAq1B5D,QAAA,MAAM,2BAA2B,EAAE,KAAK,CAAC,EAAE,CAAC,gCAAgC,CAqD3E,CAAC;AAEF,eAAe,2BAA2B,CAAC"}
|
|
@@ -133,7 +133,8 @@ const ANCHOR = [0, -0.035, 0];
|
|
|
133
133
|
// seconds of water motion per trail second, per trail type (cells drift a few cm/s; a flash lasts 0.2 s)
|
|
134
134
|
const TRAIL_SCALE = { streak: 3.5, comet: 2.5, echo: 1 };
|
|
135
135
|
const TRAIL_GAIN = { streak: 0.55, comet: 1, echo: 3.5 }; // even out the three looks
|
|
136
|
-
|
|
136
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
137
|
+
export const BOUNDS = { center: [0, -0.1, 0], radius: 1.5 };
|
|
137
138
|
function createUniforms() {
|
|
138
139
|
const pebbles = [];
|
|
139
140
|
for (let i = 0; i < MAX_PEBBLES; i++)
|
|
@@ -12,6 +12,11 @@ export interface BrownianDustParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the room box's bounding sphere. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const BrownianDustParticles: React.FC<BrownianDustParticlesProps>;
|
|
16
21
|
export default BrownianDustParticles;
|
|
17
22
|
//# sourceMappingURL=BrownianDustParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BrownianDustParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/BrownianDustParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAChE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,2BAA2B,CAAC;IACpC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"BrownianDustParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/BrownianDustParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,2BAA2B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM5G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,0BAA2B,SAAQ,gBAAgB;IAChE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,2BAA2B,CAAC;IACpC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA0DD,qFAAqF;AACrF,eAAO,MAAM,MAAM;;;CAAmF,CAAC;AAmnBvG,QAAA,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAqD/D,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
|
|
@@ -58,6 +58,8 @@ function colorUniform(hex) {
|
|
|
58
58
|
}
|
|
59
59
|
const POINTER_MODES = ['hand', 'torch', 'charge'];
|
|
60
60
|
const BX = 1, BY0 = 0.02, BY1 = 1.6, BZ = 1; // room box (sim units)
|
|
61
|
+
/** Selection / pick volume in sim units (× size): the room box's bounding sphere. */
|
|
62
|
+
export const BOUNDS = { center: [0, (BY0 + BY1) / 2, 0], radius: Math.hypot(BX, (BY1 - BY0) / 2, BZ) };
|
|
61
63
|
const GAMMA = 2.5; // Stokes drag rate (1/s)
|
|
62
64
|
const KT = 4e-4; // kT at temperature 1 (velocity variance)
|
|
63
65
|
const H_MAX = 1 / 30;
|
|
@@ -12,6 +12,11 @@ export interface ChladniSandParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const ChladniSandParticles: React.FC<ChladniSandParticlesProps>;
|
|
16
21
|
export default ChladniSandParticles;
|
|
17
22
|
//# sourceMappingURL=ChladniSandParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChladniSandParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ChladniSandParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IAC/D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,0BAA0B,CAAC;IACnC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"ChladniSandParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ChladniSandParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,0BAA0B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM3G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,yBAA0B,SAAQ,gBAAgB;IAC/D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,0BAA0B,CAAC;IACnC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA6HD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAsC,CAAC;AAynB1D,QAAA,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqD7D,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
|
@@ -125,7 +125,8 @@ const SWEEP_T = 46; // seconds per sweep cycle
|
|
|
125
125
|
const RING_UP = 0.45; // mode amplitude time constant (the plate rings up / down)
|
|
126
126
|
const MAX_TAPS = 4;
|
|
127
127
|
const NPUFF = 320;
|
|
128
|
-
|
|
128
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
129
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.55 };
|
|
129
130
|
const TRAIL_GAIN = { streak: 3, comet: 2.5, echo: 5 };
|
|
130
131
|
function createUniforms() {
|
|
131
132
|
return {
|
|
@@ -12,6 +12,11 @@ export interface ElectronOrbitalsParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const ElectronOrbitalsParticles: React.FC<ElectronOrbitalsParticlesProps>;
|
|
16
21
|
export default ElectronOrbitalsParticles;
|
|
17
22
|
//# sourceMappingURL=ElectronOrbitalsParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElectronOrbitalsParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ElectronOrbitalsParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,+BAA+B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMhH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACpE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,+BAA+B,CAAC;IACxC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"ElectronOrbitalsParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ElectronOrbitalsParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,+BAA+B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMhH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,8BAA+B,SAAQ,gBAAgB;IACpE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,+BAA+B,CAAC;IACxC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAsHD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAqC,CAAC;AAoqBzD,QAAA,MAAM,yBAAyB,EAAE,KAAK,CAAC,EAAE,CAAC,8BAA8B,CAqDvE,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
|
|
@@ -119,7 +119,8 @@ const stateOptions = () => Object.fromEntries(STATES.map((k) => [stateLabel(k),
|
|
|
119
119
|
const NR = 1024, NT = 512;
|
|
120
120
|
const TS = 12; // atomic time units per second at timeScale 1
|
|
121
121
|
const H_STEP = 1 / 45;
|
|
122
|
-
|
|
122
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
123
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.2 };
|
|
123
124
|
const MAX_PHOT = 24;
|
|
124
125
|
function parseState(k) {
|
|
125
126
|
const n = +k[0], l = L_OF[k[1]], m = +(k.slice(2).replace('+', '')) || 0;
|
|
@@ -12,6 +12,11 @@ export interface FaradayPowderParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const FaradayPowderParticles: React.FC<FaradayPowderParticlesProps>;
|
|
16
21
|
export default FaradayPowderParticles;
|
|
17
22
|
//# sourceMappingURL=FaradayPowderParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FaradayPowderParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/FaradayPowderParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACjE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,4BAA4B,CAAC;IACrC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"FaradayPowderParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/FaradayPowderParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACjE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,4BAA4B,CAAC;IACrC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA0HD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAsC,CAAC;AA+hB1D,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAqDjE,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -122,7 +122,8 @@ const SWEEP_T = 46; // seconds per sweep cycle
|
|
|
122
122
|
const RING_UP = 0.45; // mode amplitude time constant (the plate rings up / down)
|
|
123
123
|
const MAX_TAPS = 4;
|
|
124
124
|
const NPUFF = 320;
|
|
125
|
-
|
|
125
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
126
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.55 };
|
|
126
127
|
const TRAIL_GAIN = { streak: 1.6, comet: 1.3, echo: 4 };
|
|
127
128
|
function createUniforms() {
|
|
128
129
|
return {
|
|
@@ -12,6 +12,11 @@ export interface GrinderSparksParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const GrinderSparksParticles: React.FC<GrinderSparksParticlesProps>;
|
|
16
21
|
export default GrinderSparksParticles;
|
|
17
22
|
//# sourceMappingURL=GrinderSparksParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GrinderSparksParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/GrinderSparksParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACjE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,4BAA4B,CAAC;IACrC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"GrinderSparksParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/GrinderSparksParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAM7G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,2BAA4B,SAAQ,gBAAgB;IACjE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,4BAA4B,CAAC;IACrC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA4ID,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAA0C,CAAC;AAkhB9D,QAAA,MAAM,sBAAsB,EAAE,KAAK,CAAC,EAAE,CAAC,2BAA2B,CAqDjE,CAAC;AAEF,eAAe,sBAAsB,CAAC"}
|
|
@@ -139,7 +139,8 @@ const TR_MODE = { streak: TR, comet: 0.03, echo: 0.04 }; // arcs and smoulder lo
|
|
|
139
139
|
// the editor's selection box and gizmo centre on the visible spray, not on the wheel.
|
|
140
140
|
const C0 = [-1.3, 0.95, 0]; // contact point at rest (m)
|
|
141
141
|
const SPRAY_MID = [-0.4, 0.6, 0];
|
|
142
|
-
|
|
142
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
143
|
+
export const BOUNDS = { center: [-0.2, 0.7, 0], radius: 2.3 };
|
|
143
144
|
const RHO_C = 7800 * 600; // steel density x heat capacity
|
|
144
145
|
const SIGMA = 5.67e-8, EPS = 0.8, T_AIR = 300;
|
|
145
146
|
const EL0 = -0.26; // rest elevation of the fan (rad)
|
|
@@ -12,6 +12,11 @@ export interface MagneticBottleParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const MagneticBottleParticles: React.FC<MagneticBottleParticlesProps>;
|
|
16
21
|
export default MagneticBottleParticles;
|
|
17
22
|
//# sourceMappingURL=MagneticBottleParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MagneticBottleParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/MagneticBottleParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO9G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,4BAA6B,SAAQ,gBAAgB;IAClE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,6BAA6B,CAAC;IACtC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"MagneticBottleParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/MagneticBottleParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,6BAA6B,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO9G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,4BAA6B,SAAQ,gBAAgB;IAClE,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,6BAA6B,CAAC;IACtC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAmHD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAsC,CAAC;AA0Z1D,QAAA,MAAM,uBAAuB,EAAE,KAAK,CAAC,EAAE,CAAC,4BAA4B,CAuDnE,CAAC;AAEF,eAAe,uBAAuB,CAAC"}
|
|
@@ -116,7 +116,8 @@ const H_STEP = 1 / 120;
|
|
|
116
116
|
const V0 = 0.9; // speed along the orbit (units / s) at speed 1
|
|
117
117
|
const TRAIL_LOOK = { streak: 0.25, comet: 1, echo: 1 };
|
|
118
118
|
const TRAIL_ALPHA = { streak: 1.6, comet: 2, echo: 3 };
|
|
119
|
-
|
|
119
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
120
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.25 };
|
|
120
121
|
function createUniforms() {
|
|
121
122
|
return {
|
|
122
123
|
uTime: { value: 0 },
|
|
@@ -12,6 +12,11 @@ export interface NeonRainParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const NeonRainParticles: React.FC<NeonRainParticlesProps>;
|
|
16
21
|
export default NeonRainParticles;
|
|
17
22
|
//# sourceMappingURL=NeonRainParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonRainParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/NeonRainParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC5D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,uBAAuB,CAAC;IAChC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"NeonRainParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/NeonRainParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAMxG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,sBAAuB,SAAQ,gBAAgB;IAC5D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,uBAAuB,CAAC;IAChC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA4HD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAsC,CAAC;AAqf1D,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAqDvD,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
|
|
@@ -124,7 +124,8 @@ const H_STEP = 1 / 60;
|
|
|
124
124
|
const GRAV = 9.81;
|
|
125
125
|
const TR_MODE = { streak: 0.04, comet: 0.06, echo: 0.08 }; // physics seconds per trail unit
|
|
126
126
|
const TRAIL_GAIN = { streak: 3, comet: 3.5, echo: 4.5 };
|
|
127
|
-
|
|
127
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
128
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.75 };
|
|
128
129
|
// neon light sources behind the rain (never drawn): segments [x0, y0, x1, y1, colour index], and a ring [cx, cy, r, colour]
|
|
129
130
|
const SEGS = [[-0.9, -0.35, -0.9, 0.65, 0]];
|
|
130
131
|
const RING = [0.78, 0.2, 0.3, 1];
|
|
@@ -12,6 +12,11 @@ export interface ShapeBurstParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const ShapeBurstParticles: React.FC<ShapeBurstParticlesProps>;
|
|
16
21
|
export default ShapeBurstParticles;
|
|
17
22
|
//# sourceMappingURL=ShapeBurstParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeBurstParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ShapeBurstParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAC9D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,yBAAyB,CAAC;IAClC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"ShapeBurstParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ShapeBurstParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAO1G,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;IAC9D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,yBAAyB,CAAC;IAClC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AA8HD,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAqC,CAAC;AA8WzD,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAuD3D,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
|
|
@@ -126,7 +126,8 @@ const H_STEP = 1 / 120;
|
|
|
126
126
|
const W_PER_FIELD = 4.2; // cyclotron rate (rad / s) per unit field
|
|
127
127
|
const TRAIL_LOOK = { streak: 0.12, comet: 1, echo: 1 };
|
|
128
128
|
const TRAIL_ALPHA = { streak: 1.4, comet: 1.6, echo: 2.4 };
|
|
129
|
-
|
|
129
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
130
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.3 };
|
|
130
131
|
const FADE = 1.2; // seconds of dissolve
|
|
131
132
|
const INK_EVERY = 1; // particles that draw lines (1 = all)
|
|
132
133
|
const INK_SPACING = 0.006;
|
|
@@ -12,6 +12,11 @@ export interface ShapeFlowParticlesProps extends ObjectReadyProps {
|
|
|
12
12
|
/** Per-domain keyframes; the `particles` domain drives this object's config knobs. */
|
|
13
13
|
animations?: ObjectAnimations;
|
|
14
14
|
}
|
|
15
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
16
|
+
export declare const BOUNDS: {
|
|
17
|
+
center: number[];
|
|
18
|
+
radius: number;
|
|
19
|
+
};
|
|
15
20
|
declare const ShapeFlowParticles: React.FC<ShapeFlowParticlesProps>;
|
|
16
21
|
export default ShapeFlowParticles;
|
|
17
22
|
//# sourceMappingURL=ShapeFlowParticles.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShapeFlowParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ShapeFlowParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAOzG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC7D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,wBAAwB,CAAC;IACjC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;
|
|
1
|
+
{"version":3,"file":"ShapeFlowParticles.d.ts","sourceRoot":"","sources":["../../../src/components/particles/ShapeFlowParticles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmE,MAAM,OAAO,CAAC;AAIxF,OAAO,KAAK,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAOzG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,MAAM,WAAW,uBAAwB,SAAQ,gBAAgB;IAC7D,6EAA6E;IAC7E,SAAS,CAAC,EAAE,eAAe,CAAC;IAC5B,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,kFAAkF;IAClF,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,wBAAwB,CAAC;IACjC,sFAAsF;IACtF,UAAU,CAAC,EAAE,gBAAgB,CAAC;CACjC;AAsID,gHAAgH;AAChH,eAAO,MAAM,MAAM;;;CAAqC,CAAC;AAiezD,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAuDzD,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
|
|
@@ -134,7 +134,8 @@ const GX = 56, GY = 40, GZ = 40; // base-flow grid
|
|
|
134
134
|
const DELTA = 0.32; // boundary-layer thickness for the potential ramp
|
|
135
135
|
const TRAIL_LOOK = { streak: 0.35, comet: 1, echo: 1 };
|
|
136
136
|
const TRAIL_ALPHA = { streak: 1.8, comet: 2, echo: 2.6 };
|
|
137
|
-
|
|
137
|
+
/** Selection / pick volume in sim units (× size): the off-screen culling sphere and the hover / click proxy. */
|
|
138
|
+
export const BOUNDS = { center: [0, 0, 0], radius: 1.6 };
|
|
138
139
|
function createUniforms() {
|
|
139
140
|
return {
|
|
140
141
|
uTime: { value: 0 },
|