I’m playing with pixlet and starlark. I had an idea to procedurally generate a chequerboard style animation of alternately shrinking/growing circles, to get the hang of the scene graph. I keep running up against the same issue no matter how I express the set up - I am only able to see the first animation.Transformation widget I create. Subsequent declarations are ignored. If i replace the animation.Transformation object with a simple render.Circle call, I am able to fill the screen with circles without issue. Is anyone able to help?
For reference, this is my program so far :
load("render.star", "render") load("time.star", "time") load("animation.star", "animation") def main(config): return render.Root( child = render.Column( main_align = "start", expanded = True, children = [ render.Row( expanded=True, # Use as much horizontal space as possible main_align="space_betweem", # Controls horizontal alignment cross_align="left", # Controls vertical alignment children = [ render_orb(5.0, 1.0), render_orb(5.0, 1.0), ], ), ], ), ) def render_orb(start_size, end_size): return animation.Transformation( child = render.Box(render.Circle(diameter = 1, color = "#0f0")), duration = 40, delay = 0, direction = "alternate", fill_mode = "forwards", keyframes = [ animation.Keyframe( percentage = 0.0, transforms = [animation.Scale(start_size, start_size)], curve = "ease_in_out", ), animation.Keyframe( percentage = 1.0, transforms = [animation.Scale(end_size, end_size)], ), ], )