incanto 0.17.3 → 0.19.0
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/3d.d.ts +15 -1
- package/dist/3d.js +4 -4
- package/dist/{create-game-BLcN2mt4.js → create-game-Ct6RC4LF.js} +2 -2
- package/dist/env.js +1 -1
- package/dist/{heightmap-CroQPEER.js → heightmap-DgX-Opav.js} +5 -2
- package/dist/index.js +1 -1
- package/dist/{physics-3d-CO4HLs-q.js → physics-3d-JPdedRAB.js} +1 -1
- package/dist/react.js +1 -1
- package/dist/{register-DCbeSC2t.js → register-Cv5GNiVo.js} +86 -17
- package/dist/test.js +3 -3
- package/editor/assets/{agent8-GDZPslB-.js → agent8-CcfBcssq.js} +1 -1
- package/editor/assets/{index-CLqRCrOl.js → index-B7gj1VII.js} +54 -16
- package/editor/index.html +1 -1
- package/package.json +1 -1
- package/schemas/scene.schema.json +3 -0
- package/skills/incanto-environment.md +33 -1
- package/skills/incanto-node-reference.md +1 -0
- package/templates-app/beacon-isle-3d/package.json +1 -1
- package/templates-app/tps-3d/package.json +1 -1
- package/templates-app/village-quest-3d/package.json +1 -1
package/editor/index.html
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>Incanto Scene Editor</title>
|
|
7
7
|
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><rect width='16' height='16' rx='3' fill='%236ee7dc'/><text x='8' y='12' text-anchor='middle' font-size='11' font-family='monospace' fill='%230e1018'>i</text></svg>" />
|
|
8
|
-
<script type="module" crossorigin src="./assets/index-
|
|
8
|
+
<script type="module" crossorigin src="./assets/index-B7gj1VII.js"></script>
|
|
9
9
|
<link rel="modulepreload" crossorigin href="./assets/GameServer-C56iOUgF.js">
|
|
10
10
|
<link rel="stylesheet" crossorigin href="./assets/index-D8QvwvOm.css">
|
|
11
11
|
</head>
|
package/package.json
CHANGED
|
@@ -553,7 +553,39 @@ is radians of `atan(|∇h|)`. Default textures stream from the live agent8 CDN
|
|
|
553
553
|
| `islandEdge` | `null` | `null` = theme decides; force the rim wrap on/off with a boolean |
|
|
554
554
|
| `layers` | `[]` | custom splat layers (theme `custom` only) |
|
|
555
555
|
| `textureBase` | agent8 CDN | base URL: `<base>/<name>.png` + `<base>/<name>_normal.png` |
|
|
556
|
-
| `basins` | `[]` | lake/pond bowls — `[{ x, z, radius, depth }]` (centered meters) carved into the surface (smooth, 0-slope rim); `heightAt`, the collider AND draped grass all see them |
|
|
556
|
+
| `basins` | `[]` | lake/pond bowls — `[{ x, z, radius, depth }]` (centered meters) carved into the surface (smooth, 0-slope rim); **negative `depth` RAISES a smooth dome mound instead** (a hill, an islet); `heightAt`, the collider AND draped grass all see them |
|
|
557
|
+
| `wetline` | `null` | WET SAND band — `{ y, band? }` darkens + glosses the splat in a noisy, breathing band just above height `y` (a waterline): the trace of the last swash runup. `band` (default `1.1` m) caps how high above `y` reads wet. `null` = off |
|
|
558
|
+
|
|
559
|
+
**Wet sand at a shoreline.** Set `wetline.y` to the SAME world height as the
|
|
560
|
+
adjoining `Water3D` surface and the beach keeps a damp, glossy apron that
|
|
561
|
+
breathes with the swash — sell any beach/lakeshore in one prop:
|
|
562
|
+
```ts
|
|
563
|
+
// Sea sits at y = 10 → the sand within ~1 m above the waterline reads wet
|
|
564
|
+
"wetline": { "y": 10, "band": 1.0 }
|
|
565
|
+
```
|
|
566
|
+
On a near-flat sandbar remember the band is VERTICAL meters: a 1 m band on a
|
|
567
|
+
1:50 slope is a ~50 m apron — drop `band` to `0.4–0.6` if only a narrow strip
|
|
568
|
+
should read wet.
|
|
569
|
+
|
|
570
|
+
**A round sand islet in the open sea** (the postcard drone shot): don't hunt
|
|
571
|
+
for a dune that pokes out — SHAPE the island with nested negative-depth
|
|
572
|
+
basins on a low desert field, then flood to just below the dome top:
|
|
573
|
+
```ts
|
|
574
|
+
// all-sand splat, ~0.5 m of noise so the waterline contour stays organic
|
|
575
|
+
{ theme: 'desert', size: 150, maxHeight: 0.1, islandEdge: true,
|
|
576
|
+
flatThreshold: 20, // disable the flat-snap — at tiny maxHeight the ±0.6 m
|
|
577
|
+
// band swallows the field and its per-vertex boundary
|
|
578
|
+
// rips a sawtooth across the underwater flat
|
|
579
|
+
basins: [
|
|
580
|
+
{ x: 0, z: 0, radius: 55, depth: -3 }, // broad shield → turquoise ring
|
|
581
|
+
{ x: 0, z: 0, radius: 30, depth: -4.2 }, // dome → the sand cap (max nests)
|
|
582
|
+
] }
|
|
583
|
+
// water at domeTop − 0.9: a ~20 m round cap, glowing shallows, rim wraps deep
|
|
584
|
+
```
|
|
585
|
+
The sea cuts the dome's CURVED flank, so the waterline is a round organic
|
|
586
|
+
contour — a flat bar's waterline slices along the desert lows' planar patches
|
|
587
|
+
and reads as long straight cellophane edges. Pair with a second deep Terrain3D
|
|
588
|
+
(e.g. 12 m down) so the surround reads saturated blue, not endless pale flat.
|
|
557
589
|
|
|
558
590
|
**Carving a lake.** A flat Water3D plane on rolling/dome terrain reads as a wet
|
|
559
591
|
patch, not a lake. Carve a `basins` bowl so water fills a real depression with a
|
|
@@ -764,6 +764,7 @@ Signals: `triggerEnter(other)` · `triggerExit(other)`
|
|
|
764
764
|
| `layers` | `[]` | array |
|
|
765
765
|
| `textureBase` | `"https://agent8-games.verse8.io/assets/3D/default/textures/terrain"` | string |
|
|
766
766
|
| `basins` | `[]` | array |
|
|
767
|
+
| `wetline` | `null` | null |
|
|
767
768
|
|
|
768
769
|
## `TileMap2D` — `incanto/2d`
|
|
769
770
|
|