tosijs-3d 0.10.9 → 0.10.10

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.
Files changed (85) hide show
  1. package/CHANGELOG.md +50 -0
  2. package/dist/b3d-panel.d.ts +6 -0
  3. package/dist/b3d-panel.d.ts.map +1 -1
  4. package/dist/b3d-panel.js +50 -1
  5. package/dist/b3d-panel.js.map +1 -1
  6. package/dist/b3d-planet.d.ts +1 -0
  7. package/dist/b3d-planet.d.ts.map +1 -1
  8. package/dist/b3d-planet.js +30 -1
  9. package/dist/b3d-planet.js.map +1 -1
  10. package/dist/b3d-ssao-projected.d.ts +2 -0
  11. package/dist/b3d-ssao-projected.d.ts.map +1 -1
  12. package/dist/b3d-ssao-projected.js +28 -0
  13. package/dist/b3d-ssao-projected.js.map +1 -1
  14. package/dist/b3d-star-system.d.ts.map +1 -1
  15. package/dist/b3d-star-system.js +53 -2
  16. package/dist/b3d-star-system.js.map +1 -1
  17. package/dist/b3d-utils.d.ts +1 -0
  18. package/dist/b3d-utils.d.ts.map +1 -1
  19. package/dist/b3d-utils.js +11 -0
  20. package/dist/b3d-utils.js.map +1 -1
  21. package/dist/bone-heat.d.ts +22 -0
  22. package/dist/bone-heat.d.ts.map +1 -0
  23. package/dist/bone-heat.js +238 -0
  24. package/dist/bone-heat.js.map +1 -0
  25. package/dist/frame-panel.d.ts +15 -0
  26. package/dist/frame-panel.d.ts.map +1 -1
  27. package/dist/frame-panel.js +41 -0
  28. package/dist/frame-panel.js.map +1 -1
  29. package/dist/icon-data.d.ts +1 -0
  30. package/dist/icon-data.d.ts.map +1 -1
  31. package/dist/icon-data.js +1 -0
  32. package/dist/icon-data.js.map +1 -1
  33. package/dist/index.d.ts +17 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +8 -0
  36. package/dist/index.js.map +1 -1
  37. package/dist/keyboard.d.ts.map +1 -1
  38. package/dist/keyboard.js +18 -1
  39. package/dist/keyboard.js.map +1 -1
  40. package/dist/retarget-babylon.d.ts +39 -0
  41. package/dist/retarget-babylon.d.ts.map +1 -0
  42. package/dist/retarget-babylon.js +252 -0
  43. package/dist/retarget-babylon.js.map +1 -0
  44. package/dist/retarget.d.ts +74 -0
  45. package/dist/retarget.d.ts.map +1 -0
  46. package/dist/retarget.js +558 -0
  47. package/dist/retarget.js.map +1 -0
  48. package/dist/rig-build.d.ts +20 -0
  49. package/dist/rig-build.d.ts.map +1 -0
  50. package/dist/rig-build.js +256 -0
  51. package/dist/rig-build.js.map +1 -0
  52. package/dist/rig-fit.d.ts +107 -0
  53. package/dist/rig-fit.d.ts.map +1 -0
  54. package/dist/rig-fit.js +658 -0
  55. package/dist/rig-fit.js.map +1 -0
  56. package/dist/rig-markers.d.ts +42 -0
  57. package/dist/rig-markers.d.ts.map +1 -0
  58. package/dist/rig-markers.js +348 -0
  59. package/dist/rig-markers.js.map +1 -0
  60. package/dist/scene-schemas.d.ts.map +1 -1
  61. package/dist/scene-schemas.js +6 -0
  62. package/dist/scene-schemas.js.map +1 -1
  63. package/dist/sol.d.ts.map +1 -1
  64. package/dist/sol.js +13 -1
  65. package/dist/sol.js.map +1 -1
  66. package/dist/spring-chain-babylon.d.ts +45 -0
  67. package/dist/spring-chain-babylon.d.ts.map +1 -0
  68. package/dist/spring-chain-babylon.js +347 -0
  69. package/dist/spring-chain-babylon.js.map +1 -0
  70. package/dist/spring-chain.d.ts +59 -0
  71. package/dist/spring-chain.d.ts.map +1 -0
  72. package/dist/spring-chain.js +195 -0
  73. package/dist/spring-chain.js.map +1 -0
  74. package/dist/system-layout.d.ts +15 -0
  75. package/dist/system-layout.d.ts.map +1 -1
  76. package/dist/tosi-b3d.d.ts +26 -1
  77. package/dist/tosi-b3d.d.ts.map +1 -1
  78. package/dist/tosi-b3d.js +170 -35
  79. package/dist/tosi-b3d.js.map +1 -1
  80. package/dist/widgets3d.d.ts +27 -2
  81. package/dist/widgets3d.d.ts.map +1 -1
  82. package/dist/widgets3d.js.map +1 -1
  83. package/package.json +1 -1
  84. package/static/attributes.json +25 -0
  85. package/static/attributes.txt +8 -0
package/CHANGELOG.md CHANGED
@@ -6,6 +6,56 @@ 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.10
10
+
11
+ ### Fixed
12
+
13
+ - **`panel3d`'s return type says what it carries** (#104): the exported `Panel3d` type lists `handlePointer`, `scrollBy`, `scrollable`, `gripHeight`, `gripHit`, `measure`, `addLayerHost`, `useDomLayer` and `dispose`. The declaration was a bare `SVGSVGElement`, so calling `dispose()` (new in 0.10.8) did not typecheck. Existing casts to a subset of those methods still compile.
14
+ - **A per-axis scale set on a library destroyable's node survives moves and turns** (#105): the uniform `scale` attribute was rewritten onto the node on every render, so a consumer's `[2, 1, 3]` stretch was lost at the next unrelated attribute write. It is now written only when `scale` (or the node) changes, and the attribute still wins whenever it is set.
15
+ - **Projected AO darkens library pieces** (#107, from ensemble): it hooked only the materials in `scene.materials` and those created after it started, but a library's instances share its container's materials, which are in neither. So pieces placed from a `<tosi-b3d-library>` were left out of the depth picture and never occluded, while the plugin count said AO was running. It now also finds materials through the scene's meshes, at start and as meshes are added. On twelve pirate-kit pieces, the pixels it changes went from 0% to 5.8% at strength 1, and from 0.1% to 16.5% at strength 3 (screen AO: 13%).
16
+ - **A key is delivered once even when a handler re-renders its field group mid-keystroke** (#94, from ensemble): a `handleChange` that rebuilt its panel inside the keydown detached the focused field's group, so the window listener, deciding afterwards, typed the key a second time (`flagXXship`). Every route now marks the event it consumed and skips one already marked.
17
+ - **The Moon with NASA's maps is a globe again**: its height map was exaggerated 12×, which put its relief at 14% of the radius ("ridiculous"). It is 3× now, about 3.5%: basins still show at the limb.
18
+ - **A planet's golden hour peaks with the sun at the horizon, not well above it.** The gold at the limb was strongest with the sun about 50° from behind the planet and still bright at 70°: daylight over most of the limb. It now needs the sun close behind (full within about 15°, gone by about 50°) and keeps its breadth. A first attempt that narrowed the band itself was rejected ("a very thin effect which isn't what I wanted"); Tonio, on this one: "pretty perfect".
19
+ - **A star system's rocky worlds have continents, not one blob.** A planet reads its noise at `grossScale × radius`, and its presets' relief is tuned for radius 50, both in drawn units. A system draws a world a few units across, so the synthetic Earth read a fiftieth of one noise wave and came out as a single smooth landmass ("very Fisher Price Pangaea"). Its noise is now set per world (about 1.6 waves across it for continents, 6 for coastlines), and the preset's relief is scaled by drawn radius over 50, for planets and moons alike. A look that sets its own scales or relief still wins.
20
+
21
+ ### Added
22
+
23
+ - **Retargeting: one humanoid's animation on another's body.** The Universal Animation Library's clips now play on characters that weren't built for them. The demo (`/retarget/`) shows one clip on four bodies: UAL's mannequin, a Quaternius superhero, omnidude (Mixamo's bones) and a Kenney chibi (seven bones).
24
+ - **Roles:** `humanoidRoles` says which bone is which across UE, Mixamo, Kenney and Blender names.
25
+ - **Rotations:** `retargeter(source, target)` transfers each bone's world-space rotation since rest, so a clip made on an A-pose rig plays as shown on a T-pose one.
26
+ - The hips move in proportion to hip height.
27
+ - A target bone that stands for several source bones (a chibi's whole leg) aims along the source's chain.
28
+ - **The Babylon side:** `readSkeleton` reads a loaded character; `retargetClip`/`retargetClips` turn a clip into an AnimationGroup for it. All pure except the Babylon side, and tested on the real UAL, Mixamo and Kenney skeletons.
29
+ - **Auto-rig: a mesh with no skeleton, walking** (#3349). Eight markers on a front view, as on Mixamo's auto-rigger, are enough to rig a mesh for UAL's clips. The auto-rig page (`/rig-build/`) rigs Tonio's omnidude, two weasels and a space marine in the browser (CC BY 4.0, on the CDN under `tonio/rigging/`) and plays clips on them side by side.
30
+ - **Fitting:** `fitSkeleton(markers, meshQuery(positions, indices))` places UAL's 65 joints, each at the middle of the mesh's thickness. An optional tail tip grows a tail chain.
31
+ - **Binding:** `boneHeat` binds the mesh by bone heat (Baran & Popović), in about 0.1–0.3 s.
32
+ - **Building:** `buildRig` makes a Babylon skeleton of the result the way the glTF loader would, so `readSkeleton` and `retargetClip` work on it.
33
+ - **Reading files:** `objTriangles` reads an OBJ.
34
+ - **Spring bones: secondary motion for hair, tails and capes.**
35
+ - **Model:** `spring-chain` is the pure model: Verlet at a fixed 120 Hz step, stiffness toward the rest shape, damping, sphere colliders, and a correction that keeps the tip from whipping.
36
+ - **Babylon side:** `springBones` hangs a simulated chain from any node, after the animation has posed the body, and `skinTube` skins a tube to it. `springNodes` runs an existing chain, which is how the weasels' tails swing.
37
+ - **Demo:** a mannequin running in circles with a ponytail.
38
+
39
+ - **The auto-rig's marker step** (#3349). `markerField3d` shows a mesh's front silhouette with Mixamo's eight markers on it, to be dragged onto the joints, plus a side view for a tail tip. It is an ordinary panel control, so it works on a page, in the scene and in a headset. Symmetry is on by default, hovering names a marker, `handleChange` fires as a marker moves and `handleCommit` when it is let go. The pure half is in `rig-fit`:
40
+ - `rigSilhouette(positions, indices, view)` is a mesh's front or side view as runs on a grid (a few ms).
41
+ - `guessMarkers(silhouette)` gives a first placement read off the outline: the crotch, the arms' row, the neck and the legs. On Tonio's three OBJ meshes it lands within 10% of body height of the hand-placed markers, mostly within 3%.
42
+ - The auto-rig page (`/rig-build/`) now rigs a character from the panel: pick one, drag its markers, and on release it is fitted, bound and walking again (about 0.15 s). **guess** re-places the markers from the silhouette alone.
43
+ - **Arm space for retargeting** (Mixamo's "Character Arm-Space"): `retargeter(source, target, { armSpaceDeg })` and `retargetClip(..., { armSpaceDeg })` turn the upper arms out from the body after retargeting, and the forearm and hand follow. A Kenney chibi's arms are long for its height, so hanging where UAL's hang put its hands half a metre through the floor, and in the retarget demo it looked as if it were kneeling. At 55° it walks like Kenney's own walk for that character, compared side by side: the arms are held out at about 45° and the lowest point is −0.13 m against Kenney's −0.15 m. The retarget page's panel no longer opens over the characters.
44
+ - **System panels for an app's main chrome** (#106, from ensemble). Three new `<tosi-b3d-panel>` controls for a panel with an `icon`:
45
+ - **`exclusive="off"`** lets it stay open beside other system panels. Opening it closes nothing, and the settings panel or an exclusive panel (an inventory) opens and closes over it without closing it. The default is unchanged: one at a time.
46
+ - **`open`** opens it when the scene starts.
47
+ - **Its `screenAnchor` is where it first opens**, so a right-hand column can be declared. A drag still moves it and it reopens there; holding its button still puts it back.
48
+ - **In a headset** the non-exclusive panels that were open follow you in and back out. A left-pinned panel sits left of centre and a right-pinned one right, lower for a lower pixel `top`.
49
+ - A focused `inputField` in one takes typing as it does anywhere: keys come from a window listener, not the DOM (checked).
50
+ - **Screenshot from the scene panel.** A download icon on every scene's standard panel opens a popup with two buttons: **With panels** and **Scene only**. Each saves the canvas as a PNG. Scene only hides the `ui` and `modal` layers and world-layer panels (the system bar included) for the frame and puts them back. The popup closes itself first, so it is never in the picture. It is `b3d.saveScreenshot({ ui, name })` in code, and returns the Blob. `setPanelsHidden(scene)` (frame-panel) is the hide, and returns its undo. Feather's `download` icon is added.
51
+ - **Axial tilt.** Planets lean, with the axis fixed in space as they orbit, so seasons and a ring's shadow on its planet come and go with the year.
52
+ - **Moons orbit their own plane:** `inclination` on a moon (degrees from the ecliptic), by default its planet's equator, as regular moons do. Our Moon takes 5.1°; with the tilt on its holder it had dropped 23° below the ecliptic.
53
+ - **`SOL` carries the real tilts** (Earth 23.4°, Saturn 26.7°, Uranus 82.2°, Venus 2.6°; a negative `day` already makes Venus and Uranus turn backwards). A star system tilts each planet (and its rings).
54
+ - **`tilt` on `<tosi-b3d-planet>`** does the same for a standalone planet; the spin runs about the tilted axis.
55
+ - **What it fixes:** Saturn's rings shadowed nothing in the Solar System demo, because they lay in the plane of the orbit, edge-on to the Sun, and their shadow was a hairline on the equator. The sun's elevation above the rings now runs from −26.7° to +26.7° round Saturn's year: two equinoxes (the demo's clock starts at one) and two solstices.
56
+
57
+ Size: barrel (min, packages external) 1152.8 KB raw / 394.5 KB gz, +3.46% on 0.10.9 (retargeting, the auto-rig and spring bones).
58
+
9
59
  ## 0.10.9
10
60
 
11
61
  ### Added
@@ -27,6 +27,10 @@ export declare class B3dPanel extends Component {
27
27
  resolution: number;
28
28
  /** 'world' | 'ui' | 'modal': drawn and picked over the world (ui), or over that too (modal). */
29
29
  layer: string;
30
+ /** System panel: 'off' stays open beside other system panels (an app's chrome). */
31
+ exclusive: string;
32
+ /** System panel: open when the scene starts. */
33
+ open: boolean;
30
34
  };
31
35
  static shadowStyleSpec: {
32
36
  ':host': {
@@ -55,6 +59,8 @@ export declare class B3dPanel extends Component {
55
59
  presence: string;
56
60
  flatFrame: string;
57
61
  resolution: number;
62
+ exclusive: string;
63
+ open: boolean;
58
64
  /** Live content (JS only): an SVG, with its own `handlePointer` if it takes the pointer. */
59
65
  svg: SVGSVGElement | null;
60
66
  /** Where it goes in the flat view, in place of the anchor (JS only). */
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-panel.d.ts","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"AA8MA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACb,MAAM,kBAAkB,CAAA;AAGzB,qBAAa,QAAS,SAAQ,SAAS;IACrC,MAAM,CAAC,gBAAgB,SAAmB;IAE1C,MAAM,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;QAqBnB,gFAAgF;;QAEhF,gGAAgG;;MAEjG;IAED,MAAM,CAAC,eAAe;;;;MAErB;IAEO,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAE1B,4FAA4F;IAC5F,GAAG,EAAE,aAAa,GAAG,IAAI,CAAO;IAChC,wEAAwE;IACxE,UAAU,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACnD,gGAAgG;IAChG,YAAY,EAAE,YAAY,GAAG,IAAI,CAAO;IACxC,qFAAqF;IACrF,WAAW,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACpD,UAAU,SAAI;IAQd,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ;IAOhB,sDAAsD;IACtD,MAAM,IAAI,cAAc;CAoDzB;AAED,eAAO,MAAM,QAAQ,EAAgC,CACnD,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,QAAQ,CAAA"}
1
+ {"version":3,"file":"b3d-panel.d.ts","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"AAwPA,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AAClC,OAAO,KAAK,EACV,cAAc,EACd,UAAU,EACV,YAAY,EACZ,YAAY,EACb,MAAM,kBAAkB,CAAA;AAGzB,qBAAa,QAAS,SAAQ,SAAS;IACrC,MAAM,CAAC,gBAAgB,SAAmB;IAE1C,MAAM,CAAC,cAAc;;;;;;;;;;;;;;;;;;;;;QAqBnB,gFAAgF;;QAEhF,gGAAgG;;QAEhG,mFAAmF;;QAEnF,gDAAgD;;MAEjD;IAED,MAAM,CAAC,eAAe;;;;MAErB;IAEO,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,GAAG,EAAE,MAAM,CAAA;IACX,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;IAClB,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,OAAO,CAAA;IAErB,4FAA4F;IAC5F,GAAG,EAAE,aAAa,GAAG,IAAI,CAAO;IAChC,wEAAwE;IACxE,UAAU,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACnD,gGAAgG;IAChG,YAAY,EAAE,YAAY,GAAG,IAAI,CAAO;IACxC,qFAAqF;IACrF,WAAW,EAAE,YAAY,GAAG,UAAU,GAAG,IAAI,CAAO;IACpD,UAAU,SAAI;IAQd,OAAO,CAAC,MAAM,CAA6B;IAC3C,OAAO,CAAC,QAAQ;IAOhB,sDAAsD;IACtD,MAAM,IAAI,cAAc;CAyDzB;AAED,eAAO,MAAM,QAAQ,EAAgC,CACnD,GAAG,IAAI,EAAE,OAAO,EAAE,KACf,QAAQ,CAAA"}
package/dist/b3d-panel.js CHANGED
@@ -148,6 +148,46 @@ preview.append(
148
148
  tosi-b3d { width: 100%; height: 100%; }
149
149
  ```
150
150
 
151
+ ## An app's chrome: several open at once
152
+
153
+ An editor's tools are several panels used together, not one at a time.
154
+ `exclusive="off"` lets a system panel stay open beside the others, `open`
155
+ opens it when the scene starts, and its `screenAnchor` is where it first
156
+ appears (drag one and it reopens where you left it; hold its button to put it
157
+ back). In a headset the same panels follow you in, left column left, right
158
+ column right. An exclusive panel (the settings panel, an inventory) still
159
+ opens and closes over them without closing them.
160
+
161
+ ```js
162
+ import { b3d, b3dPanel, b3dLight, b3dSkybox, b3dGround, panel3d, label3d, slider3d, ui } from 'tosijs-3d'
163
+ import { tosi } from 'tosijs'
164
+
165
+ const { editor } = tosi({ editor: { size: 1, name: 'crate' } })
166
+ // One app panel: open at start, pinned flat to a side of the screen.
167
+ const chrome = (icon, title, screenAnchor, ...widgets) => {
168
+ const el = b3dPanel({ icon, title, exclusive: 'off', open: true })
169
+ el.screenAnchor = screenAnchor
170
+ el.svg = panel3d({ width: 220 }, ...widgets)
171
+ return el
172
+ }
173
+
174
+ preview.append(
175
+ b3d(
176
+ {},
177
+ b3dLight({ y: 1, intensity: 0.8 }),
178
+ b3dSkybox({ timeOfDay: 12 }),
179
+ b3dGround({ width: 20, height: 20, texture: 'checker', textureTiles: 10 }),
180
+ chrome('mousePointer', 'Tools', { left: 8, top: 66 }, label3d({ text: 'select · move · rotate' })),
181
+ chrome('menu', 'Pieces', { left: 8, top: 190 }, label3d({ text: 'crate' }), label3d({ text: 'barrel' })),
182
+ chrome('settings', 'Options', { right: 8, top: 66 }, slider3d({ label: 'size', value: editor.size, min: 0.5, max: 4 })),
183
+ chrome('checkSquare', 'Properties', { right: 8, top: 190 }, ui.inputField({ value: editor.name.value, handleChange: (v) => (editor.name.value = v) })),
184
+ )
185
+ )
186
+ ```
187
+ ```css
188
+ tosi-b3d { width: 100%; height: 100%; }
189
+ ```
190
+
151
191
  ## Three ways to place a panel
152
192
 
153
193
  - **World-anchored (`b3d-svg-plane`)** — a panel that IS a mesh in the scene: visible
@@ -184,6 +224,8 @@ The `<tosi-b3d-panel>` children are the set (none ship by default):
184
224
  | `view` | `both` | `first` / `third` / `both` — restrict to a camera view |
185
225
  | `title` | `''` | Placeholder card title (ignored if `url` set) |
186
226
  | `icon` | `''` | Puts it on the scene's system bar: its button's picture, an `svgIcons` name (e.g. `personStanding`, `book`, `map`); unknown draws a square. Its `title` is the button's tooltip and the panel's caption |
227
+ | `exclusive` | `'on'` | On the system bar: one system panel is open at a time. `'off'` lets this one stay open beside the others and leaves them open when it opens (an app's main chrome: a tool palette, a properties panel). The settings panel and exclusive panels still close each other |
228
+ | `open` | `false` | On the system bar: open when the scene starts (and again in a headset, if it was open flat) |
187
229
  | `chrome` | `''` | On the system bar: the panel opens with the settings panel's title bar (move, its title, ×; flat, a drag moves it and it reopens where you left it; holding its button on the bar puts it back). `'none'` for content with chrome of its own |
188
230
  | `url` | `''` | SVG URL (e.g. a reticle) |
189
231
  | `width` | `0.26` | Panel width (m); height follows aspect |
@@ -197,7 +239,7 @@ The `<tosi-b3d-panel>` children are the set (none ship by default):
197
239
 
198
240
  Four more are JavaScript properties, not attributes, because they are
199
241
  objects: `svg` (live content, in place of an `<svg>` child: an `<svg>` whose own `handlePointer(kind, x, y)`
200
- gets the panel's pointer, such as an `inventoryDock`'s), `screenAnchor` (flat, pinned to the screen's edges in pixels, `%` or `vmin`: `{ left: '2vmin', top: '2vmin' }`), `flatAnchor` (where
242
+ gets the panel's pointer, such as an `inventoryDock`'s), `screenAnchor` (flat, pinned to the screen's edges in pixels, `%` or `vmin`: `{ left: '2vmin', top: '2vmin' }`; for a system panel, where it first opens, before it is dragged, and in a headset which side it goes), `flatAnchor` (where
201
243
  it goes in the flat view instead), `focusAnchor` and `focusScale` (where it
202
244
  comes, and how much bigger, when its content asks for focus with a
203
245
  `panelfocus` event). A system-bar panel with no `svg` opens a card with its title.
@@ -231,6 +273,10 @@ export class B3dPanel extends Component {
231
273
  resolution: 0,
232
274
  /** 'world' | 'ui' | 'modal': drawn and picked over the world (ui), or over that too (modal). */
233
275
  layer: 'world',
276
+ /** System panel: 'off' stays open beside other system panels (an app's chrome). */
277
+ exclusive: 'on',
278
+ /** System panel: open when the scene starts. */
279
+ open: false,
234
280
  };
235
281
  static shadowStyleSpec = {
236
282
  ':host': { display: 'none' }, // config-only element, no visual presence
@@ -301,6 +347,9 @@ export class B3dPanel extends Component {
301
347
  title: this.title || undefined,
302
348
  icon: this.icon || undefined,
303
349
  chrome: this.chrome === 'none' ? 'none' : undefined,
350
+ // 'off' (or a stray `false`, as b3d-utils' isOff reads it).
351
+ exclusive: !['off', 'false', false].includes(this.exclusive),
352
+ open: this.open || undefined,
304
353
  url: this.url || undefined,
305
354
  width: this.width,
306
355
  maxDistance: this.maxDistance > 0 ? this.maxDistance : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-panel.js","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2ME;AACF,4CAA4C;AAE5C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAA;AASlC,MAAM,OAAO,QAAS,SAAQ,SAAS;IACrC,MAAM,CAAC,gBAAgB,GAAG,gBAAgB,CAAA;IAE1C,MAAM,CAAC,cAAc,GAAG;QACtB,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,EAAE;QACV,OAAO,EAAE,CAAC;QACV,SAAS,EAAE,CAAC;QACZ,QAAQ,EAAE,GAAG;QACb,QAAQ,EAAE,EAAE,EAAE,UAAU;QACxB,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,MAAM;QACd,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,MAAM;QACZ,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE;QACV,GAAG,EAAE,EAAE;QACP,KAAK,EAAE,IAAI;QACX,WAAW,EAAE,EAAE;QACf,UAAU,EAAE,EAAE;QACd,WAAW,EAAE,CAAC;QACd,QAAQ,EAAE,IAAI;QACd,SAAS,EAAE,EAAE;QACb,gFAAgF;QAChF,UAAU,EAAE,CAAC;QACb,gGAAgG;QAChG,KAAK,EAAE,OAAO;KACf,CAAA;IAED,MAAM,CAAC,eAAe,GAAG;QACvB,OAAO,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,0CAA0C;KACzE,CAAA;IAyBD,4FAA4F;IAC5F,GAAG,GAAyB,IAAI,CAAA;IAChC,wEAAwE;IACxE,UAAU,GAAqC,IAAI,CAAA;IACnD,gGAAgG;IAChG,YAAY,GAAwB,IAAI,CAAA;IACxC,qFAAqF;IACrF,WAAW,GAAqC,IAAI,CAAA;IACpD,UAAU,GAAG,CAAC,CAAA;IAEd;;;;;MAKE;IACM,MAAM,GAAyB,IAAI,CAAA;IACnC,QAAQ;QACd,IAAI,IAAI,CAAC,GAAG;YAAE,OAAO,IAAI,CAAC,GAAG,CAAA;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,cAAc,CAAyB,CAAA;QACxE,IAAI,KAAK;YAAE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAA;QAC9B,OAAO,IAAI,CAAC,MAAM,CAAA;IACpB,CAAC;IAED,sDAAsD;IACtD,MAAM;QACJ,IAAI,MAAiC,CAAA;QACrC,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,GAAG,IAAI,CAAC,MAAsB,CAAA;QACtC,CAAC;aAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACrB,gEAAgE;YAChE,MAAM,GAAG,YAAY,CAAA;QACvB,CAAC;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;YAChC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ;iBACxC,IAAI,EAAE;iBACN,KAAK,CAAC,QAAQ,CAAC;iBACf,GAAG,CAAC,MAAM,CAAC,CAAA;YACd,MAAM,GAAG;gBACP,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACnB,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,cAAc,EAAE,IAAI,CAAC,WAAW;gBAChC,aAAa,EAAE,IAAI,CAAC,UAAU;aAC/B,CAAA;QACH,CAAC;aAAM,CAAC;YACN,MAAM,GAAG;gBACP,UAAU,EAAE,IAAI,CAAC,OAAO;gBACxB,YAAY,EAAE,IAAI,CAAC,SAAS;gBAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,IAAI;gBAClB,cAAc,EAAE,IAAI,CAAC,WAAW;gBAChC,aAAa,EAAE,IAAI,CAAC,UAAU;aAC/B,CAAA;QACH,CAAC;QACD,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,KAAkB;YAC9B,MAAM;YACN,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM;YACpD,KAAK,EAAE,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW;YACjD,KAAK,EACH,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO;YACtE,IAAI,EAAE,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;YACzE,KAAK,EAAE,IAAI,CAAC,KAAK,IAAI,SAAS;YAC9B,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,SAAS;YAC5B,MAAM,EAAE,IAAI,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;YACnD,GAAG,EAAE,IAAI,CAAC,GAAG,IAAI,SAAS;YAC1B,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW,EAAE,IAAI,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS;YAChE,QAAQ,EAAE,IAAI,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI;YAClD,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS,IAAI,SAAS,CAA0B;YACjE,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;YAC7D,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,SAAS;YACjC,UAAU,EAAE,IAAI,CAAC,UAAU,IAAI,SAAS;YACxC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,SAAS;YAC5C,WAAW,EAAE,IAAI,CAAC,WAAW,IAAI,SAAS;YAC1C,UAAU,EAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SAC9D,CAAA;IACH,CAAC;;AAGH,MAAM,CAAC,MAAM,QAAQ,GAAG,QAAQ,CAAC,cAAc,EAElC,CAAA"}
1
+ {"version":3,"file":"b3d-panel.js","sourceRoot":"","sources":["../src/b3d-panel.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ export declare class B3dPlanet extends B3dChild {
32
32
  ringOuter: number;
33
33
  ringOpacity: number;
34
34
  ringColor: string;
35
+ tilt: number;
35
36
  terrain: string;
36
37
  world: string;
37
38
  craters: number;
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-planet.d.ts","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"b3d-planet.d.ts","sourceRoot":"","sources":["../src/b3d-planet.ts"],"names":[],"mappings":"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"}
@@ -196,6 +196,7 @@ tosi-b3d {
196
196
  | `cloudSpeed` | `1` | How fast the weather moves. `0` holds it still |
197
197
  | `ocean` | `0.6` | Ocean coverage (0=none, 0.6=60% of surface underwater) |
198
198
  | `wireframe` | `false` | Debug: render as wireframe |
199
+ | `tilt` | `0` | Axial tilt in degrees: the axis leans and stays fixed in space while the planet spins about it. Rings tilt with it, which is what lets their shadow fall across the planet (Saturn 26.7). A star system tilts its own planets from its spec |
199
200
  | `rotationSpeed` | `0` | Auto-rotation speed (radians/sec), west to east as planets turn. Negative turns it the other way |
200
201
 
201
202
  */
@@ -275,6 +276,10 @@ export class B3dPlanet extends B3dChild {
275
276
  ringOuter: 0,
276
277
  ringOpacity: -1,
277
278
  ringColor: '',
279
+ // Axial tilt, degrees: the axis leans, fixed in space, and the planet
280
+ // spins about it (a ring tilts with it, so its shadow falls on the
281
+ // planet). A star system tilts its planets itself (SOL's `tilt`).
282
+ tilt: 0,
278
283
  /*
279
284
  THE GROUND THIS IS A GLOBE OF (#3344): a selector for a sphere
280
285
  `<tosi-b3d-terrain>` ('#moon-ground'). The planet draws from it, and
@@ -431,6 +436,19 @@ export class B3dPlanet extends B3dChild {
431
436
  // positive, and the Earth ran backwards.)
432
437
  this.rootNode.rotation.y -= speed * dt;
433
438
  }
439
+ /*
440
+ AXIAL TILT, fixed in space: the spin (still `rotation.y`, which a star
441
+ system writes too) runs about the tilted axis. A quaternion, because
442
+ Babylon's Euler order would swing a tilt round with the spin, which is
443
+ precession, not a lean.
444
+ */
445
+ const tilt = Number(attrs.tilt) || 0;
446
+ if (tilt !== 0) {
447
+ this.rootNode.rotationQuaternion = BABYLON.Quaternion.RotationAxis(BABYLON.Axis.Z, (tilt * Math.PI) / 180).multiply(BABYLON.Quaternion.RotationAxis(BABYLON.Axis.Y, this.rootNode.rotation.y));
448
+ }
449
+ else if (this.rootNode.rotationQuaternion != null) {
450
+ this.rootNode.rotationQuaternion = null;
451
+ }
434
452
  }
435
453
  buildPlanet() {
436
454
  if (this.owner == null || this.rootNode == null)
@@ -967,8 +985,19 @@ export class B3dPlanet extends B3dChild {
967
985
  south are not, at noon). Instead the whole lit rim takes the gold
968
986
  together, by how far the sun has gone behind the planet.
969
987
  */
988
+ /*
989
+ PEAKING NEAR TANGENT. Tonio: it "looks like it's peaking several
990
+ degrees above the horizon". Measured: strongest with the sun about
991
+ 50 degrees from behind the planet, still bright at 70, which is
992
+ daylight over most of the limb. Now the gold needs the sun close
993
+ behind: full within about 15 degrees of straight behind, gone by
994
+ about 50 ("like 5 degrees vs 1 degree").
995
+ */
996
+ // The band keeps its breadth (a bump in lit made it a hairline:
997
+ // "a very thin effect which isn't what I wanted"). WHEN it shows
998
+ // is the sun place behind the planet: close behind, not high.
970
999
  float lit = smoothstep(-0.08, 0.2, ndl);
971
- float setting = smoothstep(0.25, 0.85, dot(-viewDir, l));
1000
+ float setting = smoothstep(0.62, 0.97, dot(-viewDir, l));
972
1001
  float k = clamp(limb * 2.2, 0.0, 1.0) * lit * setting * 0.9;
973
1002
  col = mix(col, gold * (glow + 0.6), k);
974
1003
  alpha = max(alpha, clamp(k * atmoOpacity * 3.5, 0.0, 1.0));
@@ -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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"}
@@ -24,6 +24,7 @@ export declare class ProjectedAoController {
24
24
  private _plugins;
25
25
  private _frameObs;
26
26
  private _materialObs;
27
+ private _meshObs;
27
28
  private _built;
28
29
  private _params;
29
30
  private _lastDraw;
@@ -47,6 +48,7 @@ export declare class ProjectedAoController {
47
48
  update(p: ProjectedAoParams): void;
48
49
  dispose(): void;
49
50
  private _disposeTextures;
51
+ private _attachMesh;
50
52
  private _attach;
51
53
  /**
52
54
  * Point the middle camera where the viewer is looking, with a frustum that
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-ssao-projected.d.ts","sourceRoot":"","sources":["../src/b3d-ssao-projected.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAA;CACb;AA2FD;;;GAGG;AACH,qBAAa,qBAAqB;IAqBpB,OAAO,CAAC,MAAM;IApB1B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,GAAG,CAAyC;IACpD,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,SAAS,CAA0D;IAC3E,OAAO,CAAC,YAAY,CACd;IACN,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAI;IACnB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,IAAI,CAAiB;IAE7B,6DAA6D;IAC7D,QAAQ,CAAC,cAAc,iBAA4B;IACnD,4DAA4D;IAC5D,KAAK,SAAI;gBAEW,MAAM,EAAE,OAAO,CAAC,KAAK;IAEzC,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAEnD;IAED,IAAI,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAExD;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,OAAO,CAAC,MAAM,CAAkC;IAEhD,6EAA6E;IAC7E,IAAI,KAAK,IAAI,OAAO,CAAC,WAAW,CAW/B;IAED,uEAAuE;IACvE,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,MAAM,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAiBlC,OAAO,IAAI,IAAI;IAoBf,OAAO,CAAC,gBAAgB;IAUxB,OAAO,CAAC,OAAO;IAkBf;;;OAGG;IACH,OAAO,CAAC,IAAI;IA2CZ,OAAO,CAAC,MAAM;IAiFd,OAAO,CAAC,MAAM;CAsEf"}
1
+ {"version":3,"file":"b3d-ssao-projected.d.ts","sourceRoot":"","sources":["../src/b3d-ssao-projected.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,OAAO,MAAM,iBAAiB,CAAA;AAE1C,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,OAAO,CAAA;IACf,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAA;IAChB,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAA;IACf,6CAA6C;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAA;CACb;AA2FD;;;GAGG;AACH,qBAAa,qBAAqB;IAuBpB,OAAO,CAAC,MAAM;IAtB1B,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,GAAG,CAAyC;IACpD,OAAO,CAAC,KAAK,CAAyC;IACtD,OAAO,CAAC,QAAQ,CAA0B;IAC1C,OAAO,CAAC,SAAS,CAA0D;IAC3E,OAAO,CAAC,YAAY,CACd;IACN,OAAO,CAAC,QAAQ,CACV;IACN,OAAO,CAAC,MAAM,CAA0B;IACxC,OAAO,CAAC,OAAO,CAAiC;IAChD,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,OAAO,CAAI;IACnB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,IAAI,CAAiB;IAE7B,6DAA6D;IAC7D,QAAQ,CAAC,cAAc,iBAA4B;IACnD,4DAA4D;IAC5D,KAAK,SAAI;gBAEW,MAAM,EAAE,OAAO,CAAC,KAAK;IAEzC,IAAI,OAAO,IAAI,OAAO,CAErB;IAED,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAEnD;IAED,IAAI,YAAY,IAAI,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC,CAExD;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,OAAO,CAAC,MAAM,CAAkC;IAEhD,6EAA6E;IAC7E,IAAI,KAAK,IAAI,OAAO,CAAC,WAAW,CAW/B;IAED,uEAAuE;IACvE,IAAI,YAAY,IAAI,OAAO,CAE1B;IAED,MAAM,CAAC,CAAC,EAAE,iBAAiB,GAAG,IAAI;IAsBlC,OAAO,IAAI,IAAI;IAsBf,OAAO,CAAC,gBAAgB;IAkBxB,OAAO,CAAC,WAAW;IAQnB,OAAO,CAAC,OAAO;IAkBf;;;OAGG;IACH,OAAO,CAAC,IAAI;IA2CZ,OAAO,CAAC,MAAM;IAiFd,OAAO,CAAC,MAAM;CAuEf"}
@@ -124,6 +124,7 @@ export class ProjectedAoController {
124
124
  _plugins = [];
125
125
  _frameObs = null;
126
126
  _materialObs = null;
127
+ _meshObs = null;
127
128
  _built = { width: 0, height: 0 };
128
129
  _params = null;
129
130
  _lastDraw = -Infinity;
@@ -172,6 +173,9 @@ export class ProjectedAoController {
172
173
  // A material is announced from its constructor, before a subclass has
173
174
  // finished building: attach once it exists.
174
175
  setTimeout(() => this._attach(m), 0));
176
+ // A library's pieces share its container's materials, which are not in
177
+ // `scene.materials` and were announced before this existed (#107).
178
+ this._meshObs = scene.onNewMeshAddedObservable.add((mesh) => setTimeout(() => this._attachMesh(mesh), 0));
175
179
  }
176
180
  }
177
181
  dispose() {
@@ -179,8 +183,10 @@ export class ProjectedAoController {
179
183
  if (this._frameObs != null) {
180
184
  scene.onBeforeRenderObservable.remove(this._frameObs);
181
185
  scene.onNewMaterialAddedObservable.remove(this._materialObs);
186
+ scene.onNewMeshAddedObservable.remove(this._meshObs);
182
187
  this._frameObs = null;
183
188
  this._materialObs = null;
189
+ this._meshObs = null;
184
190
  }
185
191
  for (const plugin of this._plugins) {
186
192
  plugin.isEnabled = false;
@@ -202,6 +208,26 @@ export class ProjectedAoController {
202
208
  this._blur = null;
203
209
  this._built = { width: 0, height: 0 };
204
210
  }
211
+ /*
212
+ MATERIALS ARE FOUND THROUGH MESHES TOO (tosijs-3d#107). `scene.materials` is
213
+ not every material drawn: a library's instances share the materials of its
214
+ AssetContainer, which stay out of the scene's list, and they were announced
215
+ at load, usually before AO was switched on. So library pieces never carried
216
+ the hook, never entered the depth picture, and were never occluded, while
217
+ the plugin count still said AO was running.
218
+ */
219
+ _attachMesh(mesh) {
220
+ const material = mesh.material;
221
+ if (material == null)
222
+ return;
223
+ if (material instanceof BABYLON.MultiMaterial) {
224
+ for (const sub of material.subMaterials)
225
+ if (sub)
226
+ this._attach(sub);
227
+ }
228
+ else
229
+ this._attach(material);
230
+ }
205
231
  _attach(material) {
206
232
  if (this._frameObs == null)
207
233
  return;
@@ -351,6 +377,8 @@ export class ProjectedAoController {
351
377
  this._warmUp = 30;
352
378
  for (const material of scene.materials)
353
379
  this._attach(material);
380
+ for (const mesh of scene.meshes)
381
+ this._attachMesh(mesh);
354
382
  }
355
383
  const cam = this._camera;
356
384
  // Frozen, because a camera works out its aspect from whatever is bound
@@ -1 +1 @@
1
- {"version":3,"file":"b3d-ssao-projected.js","sourceRoot":"","sources":["../src/b3d-ssao-projected.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"b3d-ssao-projected.js","sourceRoot":"","sources":["../src/b3d-ssao-projected.ts"],"names":[],"mappings":"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"}