Playground
From block_assembler · Compiles in your browser · $0
CtrlShiftS
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
asset block_assembler "Block assembler" complexity=4// the toy factory's block machine, front +z toward the belt: a round-cornered cabinet with a striped turntable// on top where a tower of wooden toy blocks grows, a little robot arm on a pedestal at the back (a round head// with a face and a two-finger gripper holding the roof block), and a feeder column of spare blocks at the back// left. A railed chute (part `chute`, toys leave near (0, .75, .95)) runs off the front edge. One gene, scheme,// picks the colourway: seeds 1/2/3 = cobalt, sky, silver. Idle: the turntable rim spins, the arm breathes and// looks about, the beacon pulses. work (1.6 s): the arm lowers the roof onto the tower and lets go, the finished// tower slides off down the chute with a sparkle, and a fresh base block and roof pop back inlet scheme = 0|1|2let bodyC = sel(scheme, cobalt, sky, silver)let popC = sel(scheme, sunflower, cherry, tangerine)let metalC = sel(scheme, silver, silver, steel)let trimC = whitelet woodC = oaklet roofC = lime// the cabinet: round corners, a white plinth band and pinstripe, three block tiles and three buttonsbox base at=(0, 0, -.1) size=(1.8, .7, 1.4) round=.22 bev=2 bands=[.12:bodyC .78:trimC .85:bodyC] color=trimCslab tile x3 at=(-.56, .36, .662) row=(.14, 0, 0) pts=[-.055,-.055 .055,-.055 .055,.055 -.055,.055] t=.02 round=.008 color=sel(i, cherry, sunflower, lime)ball btn x3 at=(.42, .36, .655) row=(.14, 0, 0) r=(.05, .05, .03) color=sel(i, popC, trimC, lime) segs=8 rings=4// the turntable: a white plate with a spinning striped rimcyl turntable at=(-.1, .69, -.05) h=.09 r=.44 color=trimC segs=24cyl rimring at=(-.1, .7, -.05) h=.06 r=.48 panels=12 stripes=[popC trimC] color=popC segs=24 joint// the tower of blocks on the turntable: an oak cube, a red cube, a yellow round block, and the roof (shown// only while it works: it is baked at 1% and grows when the arm lets go)box stack at=(-.1, .78, -.05) size=(.28, .14, .28) round=.03 bev=1 color=woodC jointbox blk2 on=stack at=(0, .14, 0) yaw=18 size=(.26, .14, .26) round=.03 bev=1 color=cherrycyl blk3 on=blk2 at=(0, .14, 0) h=.14 r=.12 color=sunflower segs=14cone cap on=blk3 at=(0, .14, 0) h=.16 r=.19 segs=4 panels=4 phase=45 scale=.01 color=roofC joint// the robot arm: a pedestal, a swivel aimed at the turntable, upper arm, elbow, forearm, a round head with a// face, two gripper fingers and the roof block it is holdingcyl pedestal at=(.55, .69, -.45) h=.42 r=.15 bands=[.5:bodyC .6:metalC] color=metalC segs=12cyl swivel on=pedestal at=(0, .42, 0) yaw=-58 h=.1 r=.22 color=bodyC segs=16 jointball shoulder on=swivel at=(0, .17, 0) r=.12 color=popC segs=12 rings=8 jointlimb upper on=shoulder rot=(-155, 0, 0) len=.5 r=(.08, .07) color=bodyC segs=10ball elbow on=upper at=end r=.09 color=popC segs=10 rings=7 jointlimb fore on=elbow rot=(68, 0, 0) len=.5 r=(.065, .055) color=bodyC segs=10ball wrist on=fore at=end+(0, -.03, 0) rot=(87, 0, 0) r=.075 color=popC segs=10 rings=6 jointball hand on=wrist at=(0, -.08, 0) rot=(12, 72, 0) r=(.14, .13, .14) color=trimC segs=14 rings=9 jointface look on=hand eyes=round mouth=smile spacing=32 eyeY=8 mouthY=-30 mouthW=.4 size=.34 detail=.45rod antenna on=hand at=(0, .12, 0) to=(0, .09, -.03) r=.02 sides=6 color=metalCball bulb on=antenna at=(0, .09, -.03) r=.035 color=glow ink=glow segs=8 rings=5box finger on=hand at=(.07, -.2, 0) mirror size=(.04, .12, .09) round=.015 bev=1 color=metalC jointcone carry on=hand at=(0, -.3, 0) h=.16 r=.19 segs=4 panels=4 phase=45 color=roofC joint// the feeder column of spare blocks at the back leftcyl feedbase at=(-.62, .69, -.48) h=.06 r=.2 color=metalC segs=14box spare x4 on=feedbase at=(0, .06, 0) chain=(0, .19, 0) yaw=12 size=(.2, .19, .2) round=.03 bev=1 color=sel(i, sky, lime, sunflower, cherry)rod post on=feedbase at=(.14, .02, 0) mirror to=(0, .9, 0) r=.025 sides=6 color=metalCcyl feedcap on=feedbase at=(0, .88, 0) h=.06 r=.2 color=bodyC segs=14// the beaconcyl lampbase at=(.72, .7, .3) h=.07 r=.07 color=metalC segs=12ball lamp on=lampbase at=(0, .13, 0) r=.085 color=glow ink=glow segs=10 rings=7 joint// the chute: a silver slide with rails off the cabinet's front edge, on a strutbox chute at=(0, .64, .82) tilt=12 size=(.5, .05, .44) round=.02 color=metalCbox rail on=chute at=(.23, .02, 0) mirror size=(.05, .09, .44) round=.02 color=popCrod strut at=(0, .3, .62) to=(0, .32, .3) r=.03 sides=8 color=metalC// cel FX: a sparkle as the finished tower leavesfx work: sparkle on=stack at=(0, .4, 0) n=8 hz=1.2 spread=.3 size=.035// idle: the rim spins, the arm breathes and looks about, the gripper flexes, the beacon pulsesanim rimring ry spin hz=.18anim swivel ry sin amp=8 hz=.2anim shoulder rx sin amp=3 hz=.45anim hand rz sin amp=6 hz=.35anim finger rz sin amp=4 hz=.9anim lamp s keys=[0:0 .5:.22 1:0] hz=.9// work (1.6 s): lower the roof, let go (the roof moves from the gripper onto the tower), lift, the tower slides// off down the chute and vanishes, a fresh tower and roof pop back inanim work: shoulder rx keys=[0:0 .3:8 .42:8 .58:-4 .7:0 1:0] hz=.625 onceanim work: wrist rx keys=[0:0 .3:-8 .42:-8 .58:4 .7:0 1:0] hz=.625 onceanim work: finger rz keys=[0:0 .36:0 .42:22 .7:22 .8:0 1:0] hz=.625 onceanim work: carry s keys=[0:0 .4:0 .42:-.99 .84:-.99 .94:.12 1:0] hz=.625 onceanim work: cap s keys=[0:0 .4:0 .42:99 .78:99 .79:0 1:0] hz=.625 onceanim work: cap py keys=[0:0 .4:0 .42:.02 .46:0 1:0] hz=.625 onceanim work: stack pz keys=[0:0 .5:0 .68:.6 .76:.74 .79:0 1:0] hz=.625 onceanim work: stack py keys=[0:0 .6:0 .68:-.02 .76:-.1 .79:0 1:0] hz=.625 onceanim work: stack s keys=[0:0 .5:0 .54:.08 .58:0 .7:0 .77:-.99 .84:-.99 .94:.1 1:0] hz=.625 onceanim work: lamp s keys=[0:0 .42:.5 .52:0 .7:.5 .8:0 1:0] hz=.625 once
Clean: no issues on this seed.
seed
Shapes— / 70
Triangles— / 6,000
Draw calls— / 4