How to sim birds

An excerpt from the special CG bird flocks feature in issue #4 of befores & afters magazine.

The addition of a flock of CG birds is a common trick in visual effects filmmaking to help ‘sell’ the shot, to give it some life, to lend it some scale. In the latest issue of befores & afters magazine, several VFX supervisors, artists, researchers and other players in the history of CG birds, break down these kinds of bird shots.

This includes a host of software makers who have developed tools to craft CG bird flocks. Check out this excerpt focusing on the creators below.

Get issue #4 here.

Tools for the birds

As more and more CG bird shots became part of typical visual effects shots, more diverse tools became available to ‘add some birds to that shot’. There have been a large swathe of developments in crowd tools, simulation or particle approaches and compositing solutions that all replicated flocking behaviors. So, what tools can you use? Here’s just a few examples.

Massive, for example, which happened to be used for those seagulls in Weta Digital’s Eternals Tiamut shots, evolved from its original approach to bird agents to offer several bird agents in its available demo files.

Bird agents that use vision, in the Massive user interface. The birds are displayed as rigid body dynamic segments which are the basic primitives of Massive. (Courtesy Stephen Regelous)

“The most accurate ones would be the ones that use vision as input to their brains,” says Stephen Regelous. “They are responding to pixels in their vision renders and so they quite accurately reproduce the behavior of real birds. There are also ‘agent field’ birds that use agent fields as input to their brains. Agent fields are less realistic as sensory input but faster than vision because there are no renders from the POV of each bird. Agent fields are intended to provide sensory input with a similar order of efficiency to particle animation, but without the limitation of particles.”

Regelous also clears up something many people think about Massive and flocking: “On the subject of flocking, the bits of brain you can see in the Massive UI are implementations of Craig Reynold’s flocking algorithm made from Massive’s eight types of fuzzy nodes. Contrary to what some people think, there is no flocking algorithm built into Massive.”

There are several other tools in addition to those already mentioned that offer bird flocking solutions for what might be called ‘3D’ birds. The popular go-tos include Golaem and Miarmy as specialized crowd tools, with Houdini also offering convenient procedural approaches to simulating 3D birds. And then over the years a range of tools and workflows have sprung up to ‘cheat’ bird flocks, especially in 2D, and especially where the birds really only need to be background players.

Among the popular 2D solutions is the Nuke gizmo called flockOfBirds made by OHUfx VFX supervisor Frank Rueter, and available on Nukepedia. flockOfBirds is a fixture in many visual effects studios across the world. Rueter made it in around 2012/2013.

A screenshot of Frank Rueter’s flockOfBirds Nuke gizmo. (Courtesy Hugo Guerra)

“It’s so funny to hear of so many people using it, it was basically a weekend job for me. I was in Auckland, living out in a hotel at the time, working on a glass cow commercial. I just got a bit bored and thought, ‘One of these shots might need one of those things and I can’t be bothered to find stock footage.’ I dug up a whole bunch of Eadweard Muybridge clips and stabilized them. I took his photography strips and turned them into flip books, and just roto’d them, and then used the animated roto instead of pixels as the sprites for the birds, because most of the time what you want is just some dark shapes in the background adding some life.”

“I wasn’t even aiming for anything detailed or textured,” admits Rueter. “It was all about motion and fully knowing that it was going to be a monochromatic shape. And of course, for realistic motion, Muybridge is the bible. So I was like, ‘Well I’m just going to roto some Muybridge frames, chuck them together into animated roto frames and make it a little particle thing.’”

Rueter indicates that he believes the set-up he established is very simple, in that he orchestrated the animated roto splines and used them as looping sprites (about half a dozen in total) to establish a ‘basic’ particle system. “It effectively has a simple force that sends the birds in one direction, and then the user can still decide how much they spread, change the speed to shuffle them all around, and some other basic things.”

“The reason I really made it,” adds Rueter, “is that I knew I’d need it as a tool again and again. You really don’t want to spend a lot of time on something like this, but if you have to start from scratch, it will take you a lot of time. So I just wanted to have a boiler plate, if you like, that people can just pull in and quickly add, subtract, change it, and be done with it in a few minutes.”

Also in that 2D realm is Noel Powell’s Creation Effects Flocks template made for After Effects. It lets users craft a ‘3D’ bird (or perhaps bat) for their scenes by arranging 15 2D images of birds in 3D space. Powell says he came up with Flocks while crafting a simple animation of a silhouette of a flock of birds when he was a full-time stock footage contributor.

Bat elements inside Noel Powell’s Creation Effects Flocks template made for After Effects. (Courtesy Noel Powell)

“Each bird was just three 3D layers—a profile image of a body, and two wing images, flapping on either side of the body. I sold the clip on the stock footage sites, and it always performed really well, so I knew there was a need for birds. And I also knew I could improve on the design a great deal. So I started tinkering one day, and as is normally the case with me, what started out as tinkering turned into a complex, months-long project. My goal was to have all the quality and control of hiring an expensive animator to create a custom flock of birds, and put that into an inexpensive package for the average After Effects user.”

Powell says his two main challenges in crafting Flocks were creating realistic wing flapping movements for individual birds, and creating realistic flocking behavior when the birds are duplicated to create a flock.

“When a user first opens the template, they would start by choosing one of 12 species, ranging from vultures, to starlings, to bats. The user only needs to animate the flight path of one bird, the ‘Leader Bird’, in three dimensions, using keyframes on the bird’s Position property. The other birds will then flock with the leader bird in a way that’s realistic for that particular species. Using slider controls, the user has control over almost everything, such as how fast the birds beat their wings, how often they stop flapping to glide, the randomness in their flight path, how densely packed the flocks are, and how synchronized their flight is.”

It’s also worth pointing out the rise of game engine use for final visual effects shots (let alone games) where bird flocks are required. One example that certainly highlights this cross-over is The Matrix Awakens: An Unreal Engine 5 Experience from Epic Games, a demo inspired by the Matrix films made with Unreal Engine 5. Its simulated birds serve a not-too-dissimilar purpose to their role in live-action films.

Real-time bird animation is featured in Epic Games’ The Matrix Awakens: An Unreal Engine 5 Experience. (Courtesy Epic Games)

“Pigeons and distant flying birds serve a simple purpose, which is to bring some life to quiet areas of the city which would otherwise feel stagnant and sterile,” advises Wyeth Johnson, director, technical art at Epic Games. “Real cities are awash with blowing paper, steam from vents and rooftops, and biodiversity beyond people, and the pigeons contribute to the feeling that this is a living, breathing city.”

“The birds are simple meshes with texture-based animation, and their behavior is controlled by Unreal Engine’s Niagara particle effects system to achieve a simple flocking behavior based on the ‘Boids’ flocking algorithm. Each cluster of birds is a separate particle system, procedurally placed by Unreal’s Mantle point cloud system which is fed placement data coming from Houdini.”

Get issue #4 at Amazon (available on US and other marketplaces).

Leave a Reply