Over the course of the project its come to my attention that as developers we get it pretty easy with lots of encouraging comments from the community, however I worry that we don’t properly communicate the troubles we invariably cause when poking about with Blender.
To this end, here is a laundry list of memorable mistakes we made during the project.
- Wondering why his IP address has a collision with the server, Brecht changed it so his system could become a contributing render node, for some reason nobody can access the server.
- Campbell spent 3 hours to find out why converting to mesh wasn’t working, copying from the wrong object, one character change.
- Campbell spent an hour or so trying to work out why the smaller the pow(size, 0.0001), then pow(size, 0.0000000001) became more accurate. Turns out no multiplication was needed the rotation matrix has the scale already applied: pow(anything, 0.0)==1.0
- After considered discussion Campbell and Brecht were sure the artists didn’t have custom patches applied and it was save to refresh their builds, Brecht modifys the build script wiping Campbell’s build directory, documentation scripts and WIP patches, Later we discovered Nathan also had 2 uncommitted rig-generating scripts, Luckily he managed use some ninja undelete-fu to get them back.
- Campbell committed removal of most of blenders source code while attempting a merge.
- Brecht’s tiling/mipmap system compares file access times which the farm ignored, dancing textures!
- Campbell updated the RNA API for keyframe paths, forgot to search for function calls and totally broke keyframe insertion.
- Ton made custom keymaps override everything else and broke grease pencil
- Campbell wrote a multi-processing hair-sim generator to run overnight which managed to overwrite all the freshly generated data while trying to render result for review.