River Tile
A 4 x 4 m terrain tile with a river cut into it: straight (N to S), bend (S to E), fork (S splitting to N and E) or end (a spring that feeds the river out to S), with sloped banks, river rocks, reeds and optional stepping stones. The channel meets each open edge centred with one fixed cross-section (water about 1.5 m wide, 0.12 m below the 0.4 m ground line), so river pieces, the waterfall and lava-flow tiles join seamlessly; in the volcanic biome the river is glowing lava.
- Size
- 4.0 × 1.2 × 4.0 m
- Triangles
- 1,760
- Kit
- Terrain
Tune it
5 knobs: Piece, Biome, Stepping stones, Decor, Seed.
Specs
- Size
- 4.0 × 1.2 × 4.0 m width × height × depth
- Triangles
- 1,760 of 6,000
- Draw calls
- 1 one vertex-colour material
- Knobs
- 5 3 presets
- Night lights
- 2 lava, glow
Passed the validator: real scale, rests on y = 0, front faces +Z, deterministic.
Use it
Code for the specimen as it is set up above; it follows your knobs.
import { createAsset } from 'https://gaitkit.com/cdn/river-tile.mjs';
const riverTile = createAsset();
scene.add(riverTile); // rests on y = 0, front faces +Zimport { useMemo } from 'react';
import { createAsset } from 'https://gaitkit.com/cdn/river-tile.mjs';
export function RiverTile() {
const model = useMemo(() => createAsset(), []);
return <primitive object={model} />;
}# Import river-tile.glb (download below). It is a static mesh, one material per colour.
add_child(preload("res://river-tile.glb").instantiate())// Import river-tile.glb with glTFast (com.unity.cloud.gltfast).
// Drop it in the scene: 1 unit = 1 metre, +Z is its front.Use the gaitkit MCP server: get_variant({ "id": "river-tile", "want": "default look" })
then place the result.
# MCP endpoint
https://gaitkit.com/mcpKnobs
| Knob | Type | Values | Default | What it does |
|---|---|---|---|---|
piece | choice | straight bend fork end | bend | straight (river from N edge to S edge), bend (from S edge round to E edge), fork (S edge splitting to N and E), end (a spring pool in the middle feeding a river out through S). Rotate in 90 degree steps. |
biome | choice | grass desert snow rock volcanic alien | grass | Shared by every Terrain piece: grass (blue water, green banks), desert (teal oasis water, sandy banks), snow (icy water with floes), rock (grey stone banks), volcanic (the river becomes glowing lava), alien (glowing teal liquid, violet banks). |
stones | toggle | on / off | true | A line of flat stones across the river (or cooled basalt blocks on lava). |
decor | range | 0 to 1, step 0.1 | 0.6 | Reeds, river rocks and ground scatter on the banks. 0 gives clean banks. |
seed | range | 1 to 50, step 1 | 3 | Moves the rocks, reeds and decor. The channel and edges never change. |
Presets: lava channel {"biome":"volcanic","piece":"straight","stones":false} · oasis spring {"biome":"desert","piece":"end"} · frozen fork {"biome":"snow","piece":"fork","seed":8}
Files
| File | What |
|---|---|
| river-tile.glb | GLB, default look · 194 KB |
| river-tile.mjs | ES module, every knob live |
| river-tile.obj | OBJ, static, no colour |
| river-tile-params.json | knob schema, presets, night zones |
Licence
Use it in games, apps, renders and client work, commercially and without credit. Do not resell it as an asset or train a 3D generator on it. The full licence.