Duneroo · celworld
seed

Duneroo

duneroo v1Made by APIc4
Open in Playground

v1 cost

$0.104

API, priced from the call usage.

Time
42s
The run, with the maths
All 1 version$0.104

Budget

c4 · 49 lines
Shapes22 / 70
Triangles4,526 / 6,000
Draw calls3 / 4
States
idle · hop
Used in
No scene yet
Made
1asset duneroo "Duneroo" complexity=4
2// a chibi sand kangaroo: a pear body sitting back on fat haunches and huge flat feet,
3// a big round head with long flicking ears and a little snout, tiny paws held up,
4// a thick striped tail that props it up behind; three colourways, one rare shiny
5let S = .85..1
6let earS = .9..1.15
7// colourway: 0 sand (45%), 1 rust (45%), 2 shiny (about 9%)
8let k = min(floor(0..2.2), 2)
9let coatC = sel(k, sandstone, terracotta, lilac)
10let pale = sel(k, cream, cream, white)
11let stripeC = sel(k, walnut, redwood, aqua)
12let pop = sel(k, teal, sunflower, bubblegum)
13
14// body: the root bone, pale belly
15ball body at=(0, .3*S, 0) r=(.17, .2, .16)*S color=coatC under=pale segs=20 rings=12 joint
16
17// legs: fat haunches, short shins, big flat feet
18ball haunch on=body at=(.1*S, -.08*S, -.02*S) mirror r=(.09, .1, .11)*S color=coatC segs=12 rings=8 joint
19limb shin on=haunch at=(0, -.03*S, .02*S) len=.14*S r=(.05, .042)*S color=coatC segs=8
20box foot on=haunch at=(0, -.22*S, .06*S) size=(.1, .07, .26)*S round=.03*S bands=[.55:coatC] color=pale
21
22// head, snout, face
23ball head on=body at=(0, .25*S, .03*S) r=(.17, .15, .15)*S color=coatC segs=20 rings=12 joint
24ball snout on=head surf=(0, -18) upright lift=-.05*S r=(.08, .06, .065)*S color=pale segs=12 rings=8
25ball nose on=snout surf=(0, 25) upright lift=-.012*S r=(.025, .018, .018)*S color=inkDark ink=thin segs=8 rings=5
26face look on=head eyes=round mouth=smile size=.25 spacing=32 eyeY=14 mouthY=-34 mouthW=.3 blush detail=.6
27
28// long ears with pop-coloured insides, a little tuft between them
29cone ear on=head surf=(25, 58) lift=-.03*S mirror h=.22*S*earS r=.06*S r2=.022*S depth=.5 color=coatC segs=10 joint
30cone inner on=ear at=(0, .02*S, .018*S) h=.16*S*earS r=.038*S r2=.014*S depth=.35 color=pop segs=8
31cone tuft on=head surf=(0, 80) lift=-.02*S h=.07*S r=.035*S r2=.008*S rot=(-20, 0, 0) color=stripeC segs=8
32
33// tiny paws held up in front
34limb arm on=body at=(.11*S, .08*S, .1*S) mirror rot=(-35, 0, 15) len=.1*S r=(.038, .032)*S color=coatC segs=8 joint
35
36// the striped desert tail: four links trailing back to the ground, curling up at the tip
37ball tail x4 on=body at=(0, -.12*S, -.13*S) chain=(0, -.01*S, -.1*S) rot=(-10, 0, 0) scale=.9 r=(.08, .075, .1)*S color=sel(i, coatC, stripeC, coatC, stripeC) segs=12 rings=8 joint
38
39// idle: breathing, an ear flick now and then, a lazy tail sway
40anim idle: body breathe
41anim idle: ear rz keys=[0:0 .08:-28 .16:4 .24:0 1:0] hz=.4 twin=.5
42anim idle: head sway amp=4 hz=.3
43anim idle: tail wag amp=8 hz=.6 stagger=.12
44// hop: a big spring off the tail and feet, ears flop back, paws tuck
45anim hop: body py keys=[0:0 .15:-.03 .5:.28 .85:0 1:0] hz=1.1
46anim hop: haunch rx keys=[0:0 .15:-15 .4:35 .8:-10 1:0] hz=1.1
47anim hop: ear rx keys=[0:0 .3:-35 .7:-20 1:0] hz=1.1
48anim hop: arm rx keys=[0:0 .4:-30 1:0] hz=1.1
49anim hop: tail rx keys=[0:0 .2:-10 .5:15 1:0] hz=1.1 stagger=.08
50