Procedural Starlapse

A prodedural starlapse for my brothers film

05.04.2020 - 21:44
Last week my brother and a friend took part in a film festival, in which they had to make a film within 3 days. Similar to a game jam like Ludum Dare they had 5 conditions to follow, for example a roll (toilet paper roll) had to appear at some point. Additionally, because of the Corona virus, the competition had to follow the social distancing rules. They made a stop motion movie of a boy being send off to space in a toilet paper roll rocket. At some point my brother asked me whether I had a starlapse he could use, but unfortunately I never had a good enough low light camera to film one. Instead I had the idea of creating a small algorithm to create a procedural starlapse. They found somebody else who had a starlapse, so they didn't end up using mine, but I figured I may as well create a short blogpost about it.

I started with a new addition to my image shape painter: a simple star shape. To draw a star with a given size, take all pixels within the rectangle of that size on the image, take 4 circles with half that size radii on the corners of the rectangle and all pixels that are not within the circles are the star shape. This can probably be optimized, but it doesn't really matter. Then I randomly spread 1000 stars across the image, moved them every frame and respawned them when they went out of bounds. For a normal starlapse this would have already been enough, but I wanted more details. So I added some yellow and purple noise in the background. Similar to my animated prodedural ocean textures I used 3D periodic perlin noise, so it tiles in the x and y direction and the animation loops. Finally I added a few fast flying shooting stars that can fly in all directions and not only in the same direction as the main starlapse. I didn't spent a lot of time on this, but I like how it turned out.

My brothers film:

by Christian - 05.04.2020 - 21:44


by dwUQQUrL - 31.08.2022 - 00:32
Social Media:  © 2020 All rights reservedCookiesImpressum generated in 8 ms