Hi there,
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)],
),
],
)