Geometry Runners
Geometry Runners is my 2nd project on the Art Blocks platform. Its an exciting, adrenaline soaked thrill ride. All these blocks, proudly sporting their team colors, are competing in the race of their lives. Some are going for it. Others can't really be bothered. But you know this is where the action is at. Absolute drama around every corner. Who will be victorious, and who will stumble. First lets take a look at some of these warriors in their natural habitat. Deep in the race. Unlike these gifs, actual racers race forever. They will not stop.
The Racers
Now lets take a peek at the racers themselves. Here they come! They are never really stop, despite some being more athletic than others. Some have trained for this moment, others only move between the couch and the fridge. But lets cheer them all for turning up!
Waddler Box
Calm Ball
Impossible Board
Splits
Wobble Ball
End Over End
Angled Roller
Sliced Roller
Slider
End Over End Impressive
Rolly Polly
Waddler Half Circle
Team Colors
Each group of racers proudly sport their team colors. There’s 23 teams in total. Its majestic to see them fully coordinated in their outfits. Sometimes, a team will use all the colors equally. Sometimes they’ll just pick one. Other times they’ll just put their star racer in the brightest color so they stand out like the total champ they are. Honestly, some of the teams picked pretty naff names. I think they got confused that this most important race was like a pub trivia night. Here’s a taste of just 6 of the teams vying to be the ultimate racer.
Generative System
Cheating
If you like things ruined, this is the section to read. A little peek behind the curtain.
The first thing to note is that the runners are not actually running anywhere. Its the floor that’s moving. This was useful so that the runners stayed close to the origin of the world. Theoretically, they should run forever. (Or at least a verrryyy long time)
Safe Radius
Each runner is contained within a safe radius. This is the white circle on the right. The idea of the system is, as long as the character never leaves this circle, they wont collide with other creatures. In practice this works pretty well, though occasionally, to keep things speedy, the safe radius will overlap slightly. Maybe, rarely, there will be a slight clipping between the creatures. But its ok. They actually like this the most.
Creature Radius
The colored center circle is the radius of the creature itself. The is the radius for the Slide and Spin creature. You can see it moves around in the safe radius but never escapes.
Creatures Stay In Their Safe Radius
Here we go. I replaced the circles above with the Splits creature. It’s going totally wild here, desperate to keep up. But hopefully this illustrates that the creatures are always within their safe radius.
U, Iteration and Loop Distance
For the creatures themselves, each frame, they update some internal attributes. U is the distance they are through an animation cycle. Iteration is how many cycles they have completed. Loop Distance is the distance they travel in one animation cycle.
One constraint I put on the creatures is that you can go to any animation frame and instantly work out the position of them. Once you get the speed of the group, these 3 attributes are all you need to calculate that. This means the animation never depends on the frame before it.
Question Time
I know this is just a brief overview of the system as a whole. One day a more thorough explanation may be forthcoming. Right now this is just a little peek at some of the tech behind Geometry Runners. Hope it was interesting!