Grassy ledge, explained · celworld

Grassy ledge

.cel · 13 lines · 15 shapes · seed 1

Grassy ledge is 6 shape lines that grow into 15 shapes, with 3 genes the seed draws.

a 4 m run of the low cliffs that wall a top-down town: a stony earth bank with a grassy lip that overhangs its face, a row of rounded rocks bulging from the front, tufts and a flower on top. Lines up end to end; the bank is meant to be seen from the front (+z).

seed
L1

Grassy ledge

asset
1asset ledge "Grassy ledge" complexity=3

The asset line names the model ledge, titled Grassy ledge. complexity=3 holds it to 45 shapes, 4,500 triangles and 3 draw calls; going past any of them is an error.

tier
c3
shapes cap
45
triangles cap
4,500
seed
1
L5

L

let
5let L = 4.0

A named value, L = 4.0, which comes to 4. Lines below can use the name.

this seed
4
L6

H

let
6let H = .85..0.95

A gene, H: a value drawn between 0.85 and 0.95 for every seed. This seed picked 0.888. Every line that reads H follows it.

this seed
0.888
draws
from the seed
L7

earthC

let
7let earthC = sandstone:2|rockWarm|honey

A gene, earthC: a weighted pick from sandstone (2 in 4), rockWarm or honey. This seed picked sandstone.

this seed
sandstone
draws
from the seed
L8

rockC

let
8let rockC = rockWarm:2|rockGrey|rockSand

A gene, rockC: a weighted pick from rockWarm (2 in 4), rockGrey or rockSand. This seed picked rockWarm.

this seed
rockWarm
draws
from the seed
L9

grassC

let
9let grassC = #9ed27a

A named value, grassC = #9ed27a, which comes to tuftTip. Lines below can use the name.

this seed
tuftTip
L10

lipC

let
10let lipC = #86c062

A named value, lipC = #86c062, which comes to tuftTip. Lines below can use the name.

this seed
tuftTip
L12

bank

box
12box bank size=(L, H, 1.5) round=.12 bands=[.82:grassC] color=earthC

A box, a rounded box standing on the origin (true fillets, crisp colour cuts). It stands at the model's origin.

size
4, 0.888, 1.5
round
0.12
bands
[.82:grassC]
color
sandstone
L13

lip

box
13box lip on=bank at=(0, H-.2, .06) size=(L+.04, .24, 1.68) round=.11 color=lipC

A box, a rounded box standing on the origin (true fillets, crisp colour cuts). It rides bank, at (0, H-.2, .06) in its frame.

size
4.04, 0.24, 1.68
round
0.11
color
tuftTip
L14

rock

ball
14ball rock x5 on=bank at=(0, H*.36, .74) row=(L*.2, 0, 0) r=(.36..0.44, .26..0.32, .14) color=rockC segs=10 rings=6 surface=rock

A ball, an ellipsoid centred on the origin. It rides bank, at (0, H*.36, .74) in its frame. 5 copies in a centred row, (L*.2, 0, 0) apart.

copies
5
r
0.386, 0.302, 0.14
color
rockWarm
segs
10
rings
6
surface
rock
L15

pebble

ball
15ball pebble x4 on=bank at=(0, H*.12, .76) row=(L*.22, 0, 0) r=(.2, .12, .1) color=rockC*.9 segs=8 rings=5 surface=rock

A ball, an ellipsoid centred on the origin. It rides bank, at (0, H*.12, .76) in its frame. 4 copies in a centred row, (L*.22, 0, 0) apart.

copies
4
r
0.2, 0.12, 0.1
color
rockGrey
segs
8
rings
5
surface
rock
L16

tuft

puff
16puff tuft x3 on=lip at=(0, .24, -.25) row=(L*.32, 0, 0) r=(.3, .16, .24) color=lipC*1.05 segs=10 rings=6

A puff, a foliage blob: ball with a darker underside band (color × .86) and wobble 0.06. It rides lip, at (0, .24, -.25) in its frame. 3 copies in a centred row, (L*.32, 0, 0) apart.

copies
3
r
0.3, 0.16, 0.24
color
tuftTip
segs
10
rings
6
L17

bloom

ball
17ball bloom on=lip at=(L*.18, .3, .2) r=.08 color=flowerYellow|flowerPink|flowerWhite segs=8 rings=5 if=chance(.6)

A ball, an ellipsoid centred on the origin. It rides lip, at (L*.18, .3, .2) in its frame. Only when chance(.6).

r
0.08, 0.08, 0.08
color
flowerPink
segs
8
rings
5