tosijs-3d 0.10.8 → 0.10.9
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/CHANGELOG.md +14 -0
- package/dist/b3d-planet.d.ts +34 -0
- package/dist/b3d-planet.d.ts.map +1 -1
- package/dist/b3d-planet.js +177 -57
- package/dist/b3d-planet.js.map +1 -1
- package/dist/b3d-terrain.d.ts +13 -0
- package/dist/b3d-terrain.d.ts.map +1 -1
- package/dist/b3d-terrain.js +70 -6
- package/dist/b3d-terrain.js.map +1 -1
- package/dist/dial-art.d.ts +3 -0
- package/dist/dial-art.d.ts.map +1 -0
- package/dist/dial-art.js +4 -0
- package/dist/dial-art.js.map +1 -0
- package/dist/dials.d.ts +76 -0
- package/dist/dials.d.ts.map +1 -0
- package/dist/dials.js +253 -0
- package/dist/dials.js.map +1 -0
- package/dist/gas-giant-material.d.ts +26 -0
- package/dist/gas-giant-material.d.ts.map +1 -1
- package/dist/gas-giant-material.js +45 -1
- package/dist/gas-giant-material.js.map +1 -1
- package/dist/gas-giant.d.ts +1 -0
- package/dist/gas-giant.d.ts.map +1 -1
- package/dist/gas-giant.js +57 -0
- package/dist/gas-giant.js.map +1 -1
- package/dist/icon-data.d.ts +1 -0
- package/dist/icon-data.d.ts.map +1 -1
- package/dist/icon-data.js +1 -0
- package/dist/icon-data.js.map +1 -1
- package/dist/scene-schemas.d.ts.map +1 -1
- package/dist/scene-schemas.js +15 -0
- package/dist/scene-schemas.js.map +1 -1
- package/dist/sphere-map.d.ts.map +1 -1
- package/dist/sphere-map.js +5 -14
- package/dist/sphere-map.js.map +1 -1
- package/package.json +2 -1
- package/static/attributes.json +10 -0
- package/static/attributes.txt +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,20 @@ All notable changes to **tosijs-3d**. This project is pre-1.0 (`0.x`), so minor
|
|
|
6
6
|
versions may carry breaking peer-dependency changes — each is called out in a
|
|
7
7
|
**⚠️ Breaking** block in its version section below, with what a consumer must do.
|
|
8
8
|
|
|
9
|
+
## 0.10.9
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **A compass and a watch** (`import … from 'tosijs-3d/dials'`, not in the barrel: the artwork is 36 KB). Both are drawn by Tonio, and the code only moves their named parts. The compass needle points north as you turn (`sceneCompass(b3d)` follows the active camera, flat or in a headset; north is +Z). On the watch, a dot on the ring is the time of day (noon at the top, midnight at the bottom) and a dot on the bar is how fast it passes, from still to an hour a second. Drag either: `skyWatch(skybox)` reads and writes the sky's `timeOfDay` and `realtimeScale`. Each goes on the system bar as a `<tosi-b3d-panel icon title>`. Feather's `clock` icon is added. `bun run dial-art` re-embeds the SVGs after they are redrawn.
|
|
14
|
+
- **A planet and its sphere terrain are one world** (#3344). Tonio: "if you pick a point in the middle of what looks like the ocean, coast, mountain range on a planet you end up with corresponding terrain in the sphere terrain and vice versa." Either can be the source, stated by one attribute:
|
|
15
|
+
- **`<tosi-b3d-terrain planet="#p">`**: the ground takes its large shape (sea, coasts, mountain ranges) from the planet, scaled to its `radius` with the sea at 0. Its own detail layer and landforms ride on top, and it rebuilds when the planet changes (`planet.shapeKey`). Measured at 200 random places: the ground sits within the detail layer of the globe's height (mean 2.5 m, worst 3.9 m with 5 m of detail), and sea or land agrees except at the waterline.
|
|
16
|
+
- **`<tosi-b3d-planet terrain="#t">`**: the globe is drawn from the ground's own height function, and again whenever the ground's shape changes. This replaces the hand-written `planet.surface = terrain.planetSurface()` loop, and the sphere-map demo now uses it.
|
|
17
|
+
|
|
18
|
+
Linked, not automatic: a gas giant in a moon's sky, or every body of a star system, must not become the ground you stand on. `planet.relativeHeightAt(direction)` is the globe's height above its sea as a fraction of its radius. Both attributes are in the schemas.
|
|
19
|
+
- **Planetary rings catch shadows** (#3320). Both are worked out in the shaders for a sphere and a flat ring lit by one star, with no shadow maps. **The planet's shadow falls across its rings** (the dark wedge behind Saturn): each ring fragment asks whether the ray toward the star passes through the planet, softened slightly at the edge. This applies to any `<tosi-b3d-planet>` with `rings`. **The rings' shadow bands a gas giant**: each fragment finds where the ray toward the star crosses the ring plane and dims by how much ring is there, so the shadow has the ring's own gaps (a lighter stripe where the Cassini gap lets light through). The ring is now one GLSL function (`RING_GLSL` in `gas-giant`) that the ring draws itself from and the planet reads, and `createGasGiantMaterial` takes `ring: () => RingShadow | null` for a planet built by hand. Not yet: the rings' shadow on a ROCKY planet's surface.
|
|
20
|
+
|
|
21
|
+
Size: barrel (min, packages external) 1114.2 KB raw / 379.4 KB gz, +0.46% on 0.10.8.
|
|
22
|
+
|
|
9
23
|
## 0.10.8
|
|
10
24
|
|
|
11
25
|
### Added
|
package/dist/b3d-planet.d.ts
CHANGED
|
@@ -32,6 +32,7 @@ export declare class B3dPlanet extends B3dChild {
|
|
|
32
32
|
ringOuter: number;
|
|
33
33
|
ringOpacity: number;
|
|
34
34
|
ringColor: string;
|
|
35
|
+
terrain: string;
|
|
35
36
|
world: string;
|
|
36
37
|
craters: number;
|
|
37
38
|
seaShallow: string;
|
|
@@ -115,6 +116,35 @@ export declare class B3dPlanet extends B3dChild {
|
|
|
115
116
|
private _builtSea;
|
|
116
117
|
private _seaKey;
|
|
117
118
|
private _surfaceFromMap;
|
|
119
|
+
/** The sea level of the last build, in this planet's units. */
|
|
120
|
+
private _seaAt;
|
|
121
|
+
/** Bumped by every build: what `shapeKey` reports. */
|
|
122
|
+
private _shapeGen;
|
|
123
|
+
/**
|
|
124
|
+
* Changes whenever this planet's SHAPE does (every build). A terrain that
|
|
125
|
+
* takes its shape from this planet (`planet` on the terrain) compares it to
|
|
126
|
+
* know when to rebuild.
|
|
127
|
+
*/
|
|
128
|
+
get shapeKey(): string;
|
|
129
|
+
/**
|
|
130
|
+
* HOW HIGH THE GROUND IS ABOVE THE SEA in a direction from the centre, as
|
|
131
|
+
* a fraction of the planet's radius: what this globe draws there, with
|
|
132
|
+
* its sea at 0 (on a world with no sea, its lowest ground). A terrain
|
|
133
|
+
* with `planet` set multiplies it by its own radius, which is how the
|
|
134
|
+
* ground under a pin is the place the globe shows. Null before the
|
|
135
|
+
* planet is built, and for a gas giant.
|
|
136
|
+
*/
|
|
137
|
+
relativeHeightAt(d: {
|
|
138
|
+
x: number;
|
|
139
|
+
y: number;
|
|
140
|
+
z: number;
|
|
141
|
+
}): number | null;
|
|
142
|
+
/** The terrain `terrain` names, when it is a sphere. */
|
|
143
|
+
private _linkedTerrain;
|
|
144
|
+
private _terrainWarned;
|
|
145
|
+
private _terrainBuilt;
|
|
146
|
+
private _surfaceFromTerrain;
|
|
147
|
+
private _followTerrain;
|
|
118
148
|
/**
|
|
119
149
|
* Fetch `heightMap` (once per URL and sea setting) and rebuild from it. The
|
|
120
150
|
* planet shows as a smooth ball, in its colours, until the heights arrive.
|
|
@@ -138,6 +168,10 @@ export declare class B3dPlanet extends B3dChild {
|
|
|
138
168
|
* buildPlanet). Kept as a named step so the build order still reads.
|
|
139
169
|
*/
|
|
140
170
|
private buildOcean;
|
|
171
|
+
/** The ring's shape, for its shadow on the planet (null: no ring). */
|
|
172
|
+
private _ring;
|
|
173
|
+
/** The ring as the gas giant material's shadow needs it, now. */
|
|
174
|
+
private _ringShadow;
|
|
141
175
|
private buildRings;
|
|
142
176
|
/** The rocky world's look, when `world` names one (and it is not a gas giant). */
|
|
143
177
|
private _look;
|
package/dist/b3d-planet.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"b3d-planet.d.ts","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"b3d-planet.d.ts","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"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"}
|
package/dist/b3d-planet.js
CHANGED
|
@@ -167,6 +167,7 @@ tosi-b3d {
|
|
|
167
167
|
| `seaGlint` | `1` | The sun's glint on the sea, `0…1`: a patch of sparkle, broken up by fine wave texture, that slides over the water as you move |
|
|
168
168
|
| `seaIce` | `0` | Sea ice toward the poles, `0…1` |
|
|
169
169
|
| `inlandWater` | `'off'` | `'on'` guesses LAKES from a `colorMap`: where the picture is blue, or nearly black (how NASA's Blue Marble paints deep lakes), it is drawn as water: the map's colour, with the glint. The height map only knows the sea, and a lake is above it. A guess: blue ice or black lava can pass for a lake |
|
|
170
|
+
| `terrain` | `''` | A selector for the sphere `<tosi-b3d-terrain>` this is a GLOBE OF (`'#moon-ground'`): drawn from that ground's own height function, and again whenever its shape changes, so a place on the globe is the place on the ground. (The other way round, a terrain's `planet` gives the ground this planet's shape) |
|
|
170
171
|
| `relief` | `1` | With a `heightMap` or a `surface` set: how much its true relief is exaggerated. `1` is to scale, which on a globe is flat to the eye; 20 to 60 reads as a relief map |
|
|
171
172
|
| `world` | `''` | A ROCKY WORLD preset: `'moon'`, `'mercury'`, `'mars'`, `'venus'`, `'io'`, `'titan'` or `'earth'` (see [rocky-world](/rocky-world/)). Choosing one writes its sea, air, clouds, relief, craters and climate into this planet's own settings, which stay yours to tune; `worldOverrides` (a property) changes the preset for this planet |
|
|
172
173
|
| `craters` | `0` | How cratered, `0…1` (see landform's `sphereCraters`) |
|
|
@@ -201,7 +202,7 @@ tosi-b3d {
|
|
|
201
202
|
/*{ "parent": "space", "order": 40 }*/
|
|
202
203
|
import { Color } from 'tosijs';
|
|
203
204
|
import { isOff, B3dChild, sceneDelta, sceneSeconds } from './b3d-utils.js';
|
|
204
|
-
import { GAS_GIANT_GLSL, gasGiantRgb, resolveGasGiant } from './gas-giant.js';
|
|
205
|
+
import { GAS_GIANT_GLSL, RING_GLSL, gasGiantRgb, resolveGasGiant, } from './gas-giant.js';
|
|
205
206
|
import { climateForGlobe } from './sphere-map.js';
|
|
206
207
|
import { loadPlanetMap } from './planet-map.js';
|
|
207
208
|
import { createPlanetClouds } from './planet-clouds.js';
|
|
@@ -274,6 +275,14 @@ export class B3dPlanet extends B3dChild {
|
|
|
274
275
|
ringOuter: 0,
|
|
275
276
|
ringOpacity: -1,
|
|
276
277
|
ringColor: '',
|
|
278
|
+
/*
|
|
279
|
+
THE GROUND THIS IS A GLOBE OF (#3344): a selector for a sphere
|
|
280
|
+
`<tosi-b3d-terrain>` ('#moon-ground'). The planet draws from it, and
|
|
281
|
+
draws again whenever the ground's shape changes, so the globe and the
|
|
282
|
+
ground are one world. '' for none. (A terrain can take its shape from
|
|
283
|
+
a planet instead: its `planet` attribute.)
|
|
284
|
+
*/
|
|
285
|
+
terrain: '',
|
|
277
286
|
// A ROCKY WORLD's look (rocky-world): 'moon', 'mercury', 'mars',
|
|
278
287
|
// 'venus', 'earth'. A preset: choosing one writes its sea, air, clouds,
|
|
279
288
|
// relief, craters and climate into this planet's own settings, which
|
|
@@ -407,6 +416,7 @@ export class B3dPlanet extends B3dChild {
|
|
|
407
416
|
}
|
|
408
417
|
}
|
|
409
418
|
update() {
|
|
419
|
+
this._followTerrain();
|
|
410
420
|
this._followGroundClimate();
|
|
411
421
|
if (this.rootNode == null)
|
|
412
422
|
return;
|
|
@@ -444,7 +454,9 @@ export class B3dPlanet extends B3dChild {
|
|
|
444
454
|
turbulence: attrs.turbulence,
|
|
445
455
|
storm: attrs.storm,
|
|
446
456
|
colors: attrs.bandColors,
|
|
447
|
-
})
|
|
457
|
+
}),
|
|
458
|
+
// The rings' shadow on the bands (#3320).
|
|
459
|
+
{ ring: () => this._ringShadow() });
|
|
448
460
|
mesh.parent = this.rootNode;
|
|
449
461
|
this.planetMesh = mesh;
|
|
450
462
|
this.vertexHeights = null;
|
|
@@ -542,6 +554,8 @@ export class B3dPlanet extends B3dChild {
|
|
|
542
554
|
const seaAt = this.surface != null || !hasSea
|
|
543
555
|
? 0
|
|
544
556
|
: this.heightPercentile(this._val('ocean'));
|
|
557
|
+
this._seaAt = seaAt;
|
|
558
|
+
this._shapeGen++;
|
|
545
559
|
const heightData = new Float32Array(totalVerts * 2);
|
|
546
560
|
for (let i = 0; i < totalVerts; i++) {
|
|
547
561
|
const above = heights[i] - seaAt;
|
|
@@ -721,6 +735,97 @@ export class B3dPlanet extends B3dChild {
|
|
|
721
735
|
return `${this._val('ocean')}|${attrs.flatSea}|${attrs.world}`;
|
|
722
736
|
}
|
|
723
737
|
_surfaceFromMap = false;
|
|
738
|
+
/** The sea level of the last build, in this planet's units. */
|
|
739
|
+
_seaAt = 0;
|
|
740
|
+
/** Bumped by every build: what `shapeKey` reports. */
|
|
741
|
+
_shapeGen = 0;
|
|
742
|
+
/**
|
|
743
|
+
* Changes whenever this planet's SHAPE does (every build). A terrain that
|
|
744
|
+
* takes its shape from this planet (`planet` on the terrain) compares it to
|
|
745
|
+
* know when to rebuild.
|
|
746
|
+
*/
|
|
747
|
+
get shapeKey() {
|
|
748
|
+
return `${this.seed}|${this._shapeGen}`;
|
|
749
|
+
}
|
|
750
|
+
/**
|
|
751
|
+
* HOW HIGH THE GROUND IS ABOVE THE SEA in a direction from the centre, as
|
|
752
|
+
* a fraction of the planet's radius: what this globe draws there, with
|
|
753
|
+
* its sea at 0 (on a world with no sea, its lowest ground). A terrain
|
|
754
|
+
* with `planet` set multiplies it by its own radius, which is how the
|
|
755
|
+
* ground under a pin is the place the globe shows. Null before the
|
|
756
|
+
* planet is built, and for a gas giant.
|
|
757
|
+
*/
|
|
758
|
+
relativeHeightAt(d) {
|
|
759
|
+
const attrs = this;
|
|
760
|
+
if (this.noise == null || attrs.gas)
|
|
761
|
+
return null;
|
|
762
|
+
const len = Math.hypot(d.x, d.y, d.z) || 1;
|
|
763
|
+
const s = this.surface;
|
|
764
|
+
if (s != null) {
|
|
765
|
+
const h = s.heightAt({ x: d.x / len, y: d.y / len, z: d.z / len });
|
|
766
|
+
return (h - s.seaLevel) / s.radius;
|
|
767
|
+
}
|
|
768
|
+
return ((this.heightAt(d.x / len, d.y / len, d.z / len) - this._seaAt) /
|
|
769
|
+
attrs.radius);
|
|
770
|
+
}
|
|
771
|
+
/** The terrain `terrain` names, when it is a sphere. */
|
|
772
|
+
_linkedTerrain() {
|
|
773
|
+
const sel = String(this.terrain ?? '').trim();
|
|
774
|
+
if (sel === '' || this.owner == null)
|
|
775
|
+
return null;
|
|
776
|
+
let el;
|
|
777
|
+
try {
|
|
778
|
+
el =
|
|
779
|
+
this.owner.querySelector(sel) ??
|
|
780
|
+
document.querySelector(sel);
|
|
781
|
+
}
|
|
782
|
+
catch {
|
|
783
|
+
if (!this._terrainWarned) {
|
|
784
|
+
this._terrainWarned = true;
|
|
785
|
+
console.warn(`b3d-planet: terrain "${sel}" is not a valid selector`);
|
|
786
|
+
}
|
|
787
|
+
return null;
|
|
788
|
+
}
|
|
789
|
+
const t = el;
|
|
790
|
+
if (t == null || typeof t.planetSurface !== 'function')
|
|
791
|
+
return null;
|
|
792
|
+
return t;
|
|
793
|
+
}
|
|
794
|
+
_terrainWarned = false;
|
|
795
|
+
_terrainBuilt = '';
|
|
796
|
+
_surfaceFromTerrain = false;
|
|
797
|
+
/*
|
|
798
|
+
FOLLOW THE GROUND (#3344). Tonio: "if you pick a point in the middle of
|
|
799
|
+
what looks like the ocean, coast, mountain range on a planet you end up
|
|
800
|
+
with corresponding terrain in the sphere terrain and vice versa." The
|
|
801
|
+
globe is drawn from the terrain's own height function, again whenever
|
|
802
|
+
its `generationKey` changes. Not when that terrain takes ITS shape from
|
|
803
|
+
this planet: each would follow the other.
|
|
804
|
+
*/
|
|
805
|
+
_followTerrain() {
|
|
806
|
+
const t = this._linkedTerrain();
|
|
807
|
+
if (t == null) {
|
|
808
|
+
if (this._surfaceFromTerrain) {
|
|
809
|
+
this._surfaceFromTerrain = false;
|
|
810
|
+
this._terrainBuilt = '';
|
|
811
|
+
this.surface = null;
|
|
812
|
+
this.regenerate();
|
|
813
|
+
}
|
|
814
|
+
return;
|
|
815
|
+
}
|
|
816
|
+
if (typeof t.planetSource === 'function' && t.planetSource() === this)
|
|
817
|
+
return;
|
|
818
|
+
const key = t.generationKey;
|
|
819
|
+
if (!key || key === this._terrainBuilt)
|
|
820
|
+
return;
|
|
821
|
+
const surface = t.planetSurface();
|
|
822
|
+
if (surface == null)
|
|
823
|
+
return;
|
|
824
|
+
this._terrainBuilt = key;
|
|
825
|
+
this._surfaceFromTerrain = true;
|
|
826
|
+
this.surface = surface;
|
|
827
|
+
this.regenerate();
|
|
828
|
+
}
|
|
724
829
|
/**
|
|
725
830
|
* Fetch `heightMap` (once per URL and sea setting) and rebuild from it. The
|
|
726
831
|
* planet shows as a smooth ball, in its colours, until the heights arrive.
|
|
@@ -971,7 +1076,25 @@ export class B3dPlanet extends B3dChild {
|
|
|
971
1076
|
buildOcean() {
|
|
972
1077
|
this.oceanMesh = null;
|
|
973
1078
|
}
|
|
1079
|
+
/** The ring's shape, for its shadow on the planet (null: no ring). */
|
|
1080
|
+
_ring = null;
|
|
1081
|
+
/** The ring as the gas giant material's shadow needs it, now. */
|
|
1082
|
+
_ringShadow() {
|
|
1083
|
+
const ring = this._ring;
|
|
1084
|
+
const root = this.rootNode;
|
|
1085
|
+
if (ring == null || root == null)
|
|
1086
|
+
return null;
|
|
1087
|
+
const c = root.getAbsolutePosition();
|
|
1088
|
+
const up = BABYLON.Vector3.TransformNormal(BABYLON.Axis.Y, root.getWorldMatrix()).normalize();
|
|
1089
|
+
return {
|
|
1090
|
+
...ring,
|
|
1091
|
+
center: { x: c.x, y: c.y, z: c.z },
|
|
1092
|
+
radius: this.radius * Math.abs(root.absoluteScaling.x),
|
|
1093
|
+
normal: { x: up.x, y: up.y, z: up.z },
|
|
1094
|
+
};
|
|
1095
|
+
}
|
|
974
1096
|
buildRings() {
|
|
1097
|
+
this._ring = null;
|
|
975
1098
|
if (this.owner == null || this.rootNode == null)
|
|
976
1099
|
return;
|
|
977
1100
|
const attrs = this;
|
|
@@ -981,27 +1104,34 @@ export class B3dPlanet extends B3dChild {
|
|
|
981
1104
|
const scene = this.owner.scene;
|
|
982
1105
|
const radius = attrs.radius;
|
|
983
1106
|
// Register ring shader once
|
|
984
|
-
if (!BABYLON.Effect.ShadersStore['
|
|
985
|
-
BABYLON.Effect.ShadersStore['
|
|
1107
|
+
if (!BABYLON.Effect.ShadersStore['planetRing7VertexShader']) {
|
|
1108
|
+
BABYLON.Effect.ShadersStore['planetRing7VertexShader'] = `
|
|
986
1109
|
precision highp float;
|
|
987
1110
|
attribute vec3 position;
|
|
988
1111
|
attribute vec2 uv;
|
|
1112
|
+
uniform mat4 world;
|
|
989
1113
|
uniform mat4 worldViewProjection;
|
|
990
1114
|
varying vec2 vUV;
|
|
1115
|
+
varying vec3 vWorld;
|
|
991
1116
|
void main() {
|
|
992
1117
|
gl_Position = worldViewProjection * vec4(position, 1.0);
|
|
1118
|
+
vWorld = (world * vec4(position, 1.0)).xyz;
|
|
993
1119
|
vUV = uv;
|
|
994
1120
|
}
|
|
995
1121
|
`;
|
|
996
|
-
BABYLON.Effect.ShadersStore['
|
|
1122
|
+
BABYLON.Effect.ShadersStore['planetRing7FragmentShader'] = `
|
|
997
1123
|
#extension GL_OES_standard_derivatives : enable
|
|
998
1124
|
precision highp float;
|
|
999
1125
|
varying vec2 vUV;
|
|
1126
|
+
varying vec3 vWorld;
|
|
1127
|
+
uniform vec4 ringLight;
|
|
1128
|
+
uniform vec4 ringPlanet;
|
|
1000
1129
|
uniform vec3 ringColor;
|
|
1001
1130
|
uniform float ringOpacity;
|
|
1002
1131
|
uniform float ringInner;
|
|
1003
1132
|
uniform float seed;
|
|
1004
1133
|
|
|
1134
|
+
${RING_GLSL}
|
|
1005
1135
|
float hash(float p) {
|
|
1006
1136
|
return fract(sin(p * 127.1) * 43758.5453);
|
|
1007
1137
|
}
|
|
@@ -1011,49 +1141,13 @@ export class B3dPlanet extends B3dChild {
|
|
|
1011
1141
|
vec2 uv = vUV * 2.0 - 1.0;
|
|
1012
1142
|
float r = length(uv);
|
|
1013
1143
|
if (r < ringInner || r > 1.0) discard;
|
|
1014
|
-
|
|
1015
|
-
// Normalize to ring band
|
|
1016
1144
|
float t = (r - ringInner) / (1.0 - ringInner);
|
|
1017
|
-
|
|
1018
|
-
// SHARP, as rings are, and irregular: the density along the
|
|
1019
|
-
// radius is 1D noise at several scales, TERRACED, so it holds
|
|
1020
|
-
// plateaus of different widths and steps between them with edges
|
|
1021
|
-
// about a pixel wide. Only detail finer than a pixel fades to its
|
|
1022
|
-
// average (drawn, it shimmered into moire and flickered).
|
|
1023
1145
|
float px = max(fwidth(t), 1e-5);
|
|
1024
1146
|
float theta = atan(uv.y, uv.x);
|
|
1025
|
-
|
|
1026
|
-
//
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
float gapB = hash(seed + 1.0) * 0.15 + 0.8;
|
|
1030
|
-
float near = abs(t - gapB);
|
|
1031
|
-
t += 0.004 * sin(theta * 36.0) * exp(-near / 0.02);
|
|
1032
|
-
|
|
1033
|
-
float n = 0.0;
|
|
1034
|
-
float a = 0.5;
|
|
1035
|
-
float f = 6.0;
|
|
1036
|
-
float norm = 0.0;
|
|
1037
|
-
for (float i = 0.0; i < 5.0; i++) {
|
|
1038
|
-
float x = t * f + seed * 13.1 + i * 7.3;
|
|
1039
|
-
float c = floor(x);
|
|
1040
|
-
float k = fract(x);
|
|
1041
|
-
float vn = mix(hash(c), hash(c + 1.0), k * k * (3.0 - 2.0 * k));
|
|
1042
|
-
float fade = 1.0 - smoothstep(0.3, 0.6, f * px);
|
|
1043
|
-
n += a * fade * (vn - 0.5);
|
|
1044
|
-
norm += a;
|
|
1045
|
-
a *= 0.55;
|
|
1046
|
-
f *= 2.7;
|
|
1047
|
-
}
|
|
1048
|
-
n = clamp(n / norm * 1.6 + 0.5, 0.0, 1.0);
|
|
1049
|
-
float steps = n * 6.0;
|
|
1050
|
-
float sw = max(fwidth(steps), 1e-4);
|
|
1051
|
-
float terrace = (floor(steps) + smoothstep(1.0 - sw, 1.0, fract(steps))) / 6.0;
|
|
1052
|
-
float density = mix(n, terrace, 0.75);
|
|
1053
|
-
|
|
1054
|
-
// The broad profile: faint inside, brightest a little out.
|
|
1055
|
-
float profile = 0.35 + 0.65 * sin(3.1416 * pow(t, 0.75));
|
|
1056
|
-
float bands = profile * (0.3 + 1.1 * density) * 1.3;
|
|
1147
|
+
// The ring itself is one function, shared with the planet that
|
|
1148
|
+
// reads its shadow (gas-giant RING_GLSL).
|
|
1149
|
+
vec2 ring = b3dRing(t, theta, seed, px);
|
|
1150
|
+
float bands = ring.x;
|
|
1057
1151
|
|
|
1058
1152
|
// Imperfect round the ring: a faint clumping by angle and radius.
|
|
1059
1153
|
vec2 cq = uv * 9.0 + seed;
|
|
@@ -1065,18 +1159,22 @@ export class B3dPlanet extends B3dChild {
|
|
|
1065
1159
|
float h01 = hash(ci.x + (ci.y + 1.0) * 57.0);
|
|
1066
1160
|
float h11 = hash(ci.x + 1.0 + (ci.y + 1.0) * 57.0);
|
|
1067
1161
|
float clump = mix(mix(h00, h10, cf.x), mix(h01, h11, cf.x), cf.y);
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
// cut clean, a pixel soft.
|
|
1072
|
-
float g1 = abs(t - hash(seed) * 0.4 - 0.45);
|
|
1073
|
-
float gap1 = smoothstep(0.022 - px, 0.022 + px, g1);
|
|
1074
|
-
float gap2 = smoothstep(0.005 - px, 0.005 + px, abs(t - gapB));
|
|
1075
|
-
bands *= mix(0.04, 1.0, gap1) * mix(0.06, 1.0, gap2);
|
|
1162
|
+
float k = 0.95 + 0.1 * clump;
|
|
1163
|
+
bands *= k;
|
|
1164
|
+
float alpha = clamp(ring.y * k, 0.0, 1.0) * ringOpacity;
|
|
1076
1165
|
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1166
|
+
/*
|
|
1167
|
+
THE PLANET'S SHADOW ON THE RING (#3320): the dark wedge behind
|
|
1168
|
+
the planet. From this point toward the star, does the ray pass
|
|
1169
|
+
through the planet? A sphere, so it is exact, softened over a
|
|
1170
|
+
couple of percent of the radius for the penumbra.
|
|
1171
|
+
*/
|
|
1172
|
+
vec3 toL = ringLight.w > 0.5 ? normalize(ringLight.xyz - vWorld) : normalize(ringLight.xyz);
|
|
1173
|
+
vec3 oc = ringPlanet.xyz - vWorld;
|
|
1174
|
+
float along = dot(oc, toL);
|
|
1175
|
+
float miss = length(oc - toL * along);
|
|
1176
|
+
float lit = along > 0.0 ? smoothstep(ringPlanet.w * 0.97, ringPlanet.w * 1.03, miss) : 1.0;
|
|
1177
|
+
bands *= mix(0.03, 1.0, lit);
|
|
1080
1178
|
|
|
1081
1179
|
gl_FragColor = vec4(ringColor * bands, alpha);
|
|
1082
1180
|
}
|
|
@@ -1105,10 +1203,13 @@ export class B3dPlanet extends B3dChild {
|
|
|
1105
1203
|
mesh.rotation.x = Math.PI / 2; // Flat in XZ plane
|
|
1106
1204
|
// In the equator, as rings are. It used to be tipped off it, and as
|
|
1107
1205
|
// the planet turned (the ring is its child) the ring precessed.
|
|
1108
|
-
const mat = new BABYLON.ShaderMaterial('planet-ring-mat', scene, { vertex: '
|
|
1206
|
+
const mat = new BABYLON.ShaderMaterial('planet-ring-mat', scene, { vertex: 'planetRing7', fragment: 'planetRing7' }, {
|
|
1109
1207
|
attributes: ['position', 'uv'],
|
|
1110
1208
|
uniforms: [
|
|
1209
|
+
'world',
|
|
1111
1210
|
'worldViewProjection',
|
|
1211
|
+
'ringLight',
|
|
1212
|
+
'ringPlanet',
|
|
1112
1213
|
'ringColor',
|
|
1113
1214
|
'ringOpacity',
|
|
1114
1215
|
'ringInner',
|
|
@@ -1120,8 +1221,27 @@ export class B3dPlanet extends B3dChild {
|
|
|
1120
1221
|
mat.setFloat('ringOpacity', Math.max(0, Math.min(1, opacity)));
|
|
1121
1222
|
mat.setFloat('ringInner', innerRadii / outerRadii);
|
|
1122
1223
|
mat.setFloat('seed', attrs.seed % 100);
|
|
1224
|
+
this._ring = {
|
|
1225
|
+
inner: innerRadii,
|
|
1226
|
+
outer: outerRadii,
|
|
1227
|
+
opacity: Math.max(0, Math.min(1, opacity)),
|
|
1228
|
+
seed: attrs.seed % 100,
|
|
1229
|
+
};
|
|
1123
1230
|
mat.backFaceCulling = false;
|
|
1124
1231
|
mat.alphaMode = BABYLON.Constants.ALPHA_COMBINE;
|
|
1232
|
+
// Where the star and the planet are, each frame, for the shadow.
|
|
1233
|
+
const light = new BABYLON.Vector4(0, 1, 0, 0);
|
|
1234
|
+
const planet = new BABYLON.Vector4();
|
|
1235
|
+
mat.onBind = () => {
|
|
1236
|
+
sceneLight(scene, light);
|
|
1237
|
+
mat.setVector4('ringLight', light);
|
|
1238
|
+
const root = this.rootNode;
|
|
1239
|
+
if (root != null) {
|
|
1240
|
+
const c = root.getAbsolutePosition();
|
|
1241
|
+
planet.set(c.x, c.y, c.z, radius * Math.abs(root.absoluteScaling.x));
|
|
1242
|
+
}
|
|
1243
|
+
mat.setVector4('ringPlanet', planet);
|
|
1244
|
+
};
|
|
1125
1245
|
mesh.material = mat;
|
|
1126
1246
|
mesh.parent = this.rootNode;
|
|
1127
1247
|
this.ringMesh = mesh;
|
package/dist/b3d-planet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"b3d-planet.js","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"b3d-planet.js","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"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"}
|
package/dist/b3d-terrain.d.ts
CHANGED
|
@@ -14,6 +14,7 @@ export declare class B3dTerrain extends B3dChild {
|
|
|
14
14
|
static initAttributes: {
|
|
15
15
|
lat: number;
|
|
16
16
|
lon: number;
|
|
17
|
+
planet: string;
|
|
17
18
|
biome: "on" | "off";
|
|
18
19
|
biomeSeaLevel: number;
|
|
19
20
|
biomeLapseRate: number;
|
|
@@ -158,6 +159,18 @@ export declare class B3dTerrain extends B3dChild {
|
|
|
158
159
|
* on one (`surfaceType` other than `'sphere'`). See [[sphere-map]].
|
|
159
160
|
*/
|
|
160
161
|
get sphereFrame(): SphereFrame | null;
|
|
162
|
+
/** The `<tosi-b3d-planet>` that `planet` names, or null. */
|
|
163
|
+
planetSource(): {
|
|
164
|
+
relativeHeightAt(d: {
|
|
165
|
+
x: number;
|
|
166
|
+
y: number;
|
|
167
|
+
z: number;
|
|
168
|
+
}): number | null;
|
|
169
|
+
shapeKey: string;
|
|
170
|
+
} | null;
|
|
171
|
+
/** The planet shape the ground was last built from. */
|
|
172
|
+
private _planetBuilt;
|
|
173
|
+
private _followPlanet;
|
|
161
174
|
/**
|
|
162
175
|
* Latitude and longitude (degrees) of a spot on the ground; null off a
|
|
163
176
|
* sphere. `x`, `z` are the terrain's own unshifting coordinates: a scene
|