BlueBolt creates a swarm of killer bees with Golaem for Holmes & Watson

BlueBolt used Golaem to animate killer bees in a dauting sequence in which they crawl onto the moving and deforming main actor's face. Yannick Cibin tell us about the challenges involved in this sequence and how Golaem helped to deliver the shots

Can you present yourself and the studio?

I am Yannick Cibin, and I was the crowd lead on Holmes & Watson at BlueBolt. We are a medium sized company and although the studio started mainly with environments, we have welcomed increasingly more involved cg work including effects and crowds.

What was the size of your team and how long have you worked on Holmes & Watson?

Our 3d team consisted of 9 artists, of which 4 worked on the crowd. We worked on the project for a total of 9 months.

Can you describe the shots you did for Holmes & Watson? 

We had a lot of really interesting shots. Initially the brief was quite simple, with a generic flock of bees in a room and terrarium and potentially some bees on Watson’s face. However, as to be expected, the brief developed to become much more complex and we ended up with bees flying around in a confined diving bell, landing and taking off deforming faces, crawling over each other, attacking people, colliding with things, etc… . It was extremely exciting to find ways of making this all work.

Could you give a bit of details about the challenges or feature used in the shot?

I think the initial challenge was simply to make the flock of bees looks natural in their normal flight. By default the flocking behaviour is quite smooth and bird-like, so we used a combination of tweaked flocking and setBone behaviours connected to expressions, such as sine curves, that enabled us to choose how nervous the bees would be. We usually had them fly around a bit by picking between random moving targets, eventually stop at random interest areas, fidgeting back and forth and then go back to flying.

Once we had their overall flight down, is when it became interesting. The main challenges were landing and taking off fast deforming faces, keeping fast flying bees in tightly confined spaces, walking over each other without intersecting and having working wing motion blur without increasing the sim substeps. It took a lot of testing, in house and with the Golaem team, but we ended up finding workarounds and fixes for all of these.

For the confined spaces, we ended up using simple physics collisions, as the bees would escape if we used any other methods, especially when flying fast.

In terms of landing and taking off deforming faces and walking with a brain (Locomotions) after having landed, we used a lot of workarounds. The main approach was to pick up the bee flying orientation just before landing, and forcing it back on using a modified version of the Channel Behaviour as they landed onto a MeshPin Behaviour. It took a lot of back and forth to have them stick to the very fast moving faces without popping off, but it ended up working. By the end of the show, a lot of our requests had been more fully integrated into Golaem, so we ended up using the new deforming 3D navmesh instead.

Motion blur was definitely a bit of an issue. Unless we wanted to add a lot of substeps to the sims, which would change the sims and slow us down a lot, we had to find another way. We ended up creating a per frame slow motion fbx geometry cache of the wing animation. This was then read back into the Golaem sim with a Geometry Behaviour and sped up with some trial and error, until it looked good.

I was always curious how to use Golaem to have entities walking in tight spaces around each other smoothly. I’m glad we did this show as it taught me all the intricate settings available in the Locomotions and Navigation Behaviours that can greatly improve this. This was before sensors, so we used perception angle/distance settings, which I actually really liked. By the end of the show, most our scenes were using the new sensors though, which worked great too.

Having the bees walk over each other was another great challenge. We initially created independent layers of bees using uvPin and meshPin. Luckily Golaem introduced a new feature called Unphysicalized Children from Animation for the Physicalise behaviour, which by chance made it possible for us to have them walk over each other using their actual physics shapes, when combined with the new 3d navmesh. This removed the necessity for multiple layer and let us do it all in one go, which was extremely useful!

There were endless challenges on this show, which I can't list all here. But I feel like that was what made it so much more fun. I love finding ways to problem solve a brief in a way that is reusable and adaptable to the constant curveballs and changes a show can bring.

Did you use Golaem Layout features on these shots or everything was done in sim?

I really appreciate the use of the layout tool, and it is priceless for certain situations, but personally I prefer getting as much as possible done in the sim as possible. This way, we can make major changes and re-use the setups in different shows/shots without having to redo a secondary layer of adjustments. That said, we did have a very stubborn shot that just wasn’t working for us, for which we ended up using the layout tool to remove and move bees around to suit our needs and it was really useful in that case.

Anything else you would like to add?

I loved working on this show. The brief was exciting and I thoroughly enjoyed the challenges across the way. As always, it was great to have the enthusiasm and responsiveness of the Golaem team on the other end. About one year after the show started, Golaem had integrated all our combined workarounds and ideas into the new version. It honestly feels great to know that we can have an impact on the development of such a great piece of software. I look forward to more exciting crowd shows in the future!