Inspiration

Speed — and a simple question: can a full race sequence be driven by data instead of hand-keyframed animation? I wanted a broadcast-feel F1-style lap where every speed change, gear shift, and camera move comes from a physics profile, not manual keyframes.

What I learned

How to drive animation from a speed curve. Integrating a top-speed and braking profile into per-car time warps via Blender's NLA strips, so the car accelerates, brakes, and shifts gears according to the profile. Procedural livery and scenery through shader nodes kept the whole scene parametric — change the profile, and the lap changes with it.

How I built it

Blender 4.5.0 + Python. A script integrates the speed profile (top speed, braking zones, bridge section) and writes it into each car's NLA track as a time-warped strip with linear keyframe interpolation. The city circuit, barriers, and trees are procedural scenery; the APEX #26 livery is a procedural shader-node material. A broadcast-style HUD (live timer, gear, km/h) is overlaid to sell the speed.

Challenges

Matching the speed profile to the track geometry especially the bridge section, where the car's speed and the road curvature had to agree or the motion looked wrong. Getting the time-warp smooth across NLA strips without pops at strip boundaries took the most iteration.

Built With

  • 3d-animation
  • blender
  • broadcast-graphics
  • formula-1
  • motorsport
  • nla
  • physics-simulation
  • procedural-generation
  • procedural-livery
  • procedural-scenery
  • python
  • racing
  • shader-nodes
  • speed-profile
Share this project:

Updates

Submission history