2021 Rides

2021 was an amazing year for cycling. Like many, I’d spent much of the winter on the turbo trainer avoiding group rides due to the pandemic. I’d followed a structured training plan and really felt the benefits as the country opened up in Spring. In total, I spent over 200 hours on the bike clocking up 5,600km with three 200km rides.

Only the outdoor rides are animated and every ride is timed to finish at the same point - the longest rides start first and the shortest rides start much later. The final animation includes a selection of frames from the full simulation.

Studland and onto the Purbecks ahead of a DIY Dorset Audax


An early start heading through Bournemouth and round the Isle of Wight or the New Forest Gridiron


Many of our Thursday evening rides are in the New Forest


With the Purbecks on our doorstep it’s the place you’ll find me most often


Finally, an overview of all the routes


Here’s the final animation:

I also rendered some early prototype animations in Eevee - these rendered in minutes rather than days… The first is testing the audio:

And this is with the rides in date order:

Rendering Blender files on Amazon AWS

As my underpowred PC could not handle rendering some of the scenes, I investigated rendering on Amazon AWS. Turned out to be straightfoward. These are the steps I took:

  1. Spin up the largest compute instance availalbe - at the time of writing this was a c4.8x large instance
  2. Install Blender. I downloaded blender locally an then copied to AWS as I couldn’t figure out how to bypass the download redirect on blender.org.
sudo apt-get update
sudo apt-get dist-upgrade
sudo mkdir /opt/blender
sudo tar -Jxf ~/blender-3.0.0-linux-x64.tar.xz --strip-components=1 -C /opt/blender

If there are missing dependencies starting Blender, try installing with apt:

sudo apt install blender
  1. Copy the blender file across using secure copy (scp)
scp -i << privateKey >> BlenderFile.blender username@amazonhost.amazonaws.com
  1. Render using the command line:
/opt/blender/blender -b ~/BlenderFile.blend -E CYCLES -S << SceneName >> -s << StartFrame >>  -e << End Frame >> -a -- --cycles-device CPU

Note: this command requires an ssh session to be open to keep the rendering going

I then used rsync to transfer the rendered images back to my PC:

rsync -rave "ssh -i<< privateKey >>" username@amazonhost.amazonaws.com:~/<<remoteFolder>>/ << localFolder >>/

To remove the files on AWS, we can add –remove-source-files:

rsync --remove-source-files -rave "ssh -i<< privateKey >>" username@amazonhost.amazonaws.com:~/<<remoteFolder>>/ << localFolder >>/

As a slight aside, to run a python script, we can use the following. Remember to save the file at the end of the script

/opt/blender/blender -b ~/BlenderFile.blend --python ~/script.py