Birds!

Barbarian Group + Nervo = Awesome!

More often than not, the pipeline for a project gets overshadowed by the end result. The process of getting from point A to B is often overlooked because point B is just sooo damn sexy. But it doesn’t have to be that way. No really, it doesn’t.

A couple months ago, Nando Costa approached Barbarian Group and asked if we would help out with a project his new motion graphics company Nervo was working on for Fox Movies Japan. He showed us the boards and instantly we knew we wanted to collaborate because his vision for this project was quite beautiful and surreal.

What he needed from us was videos of flocking behavior. He had seen the previous experiments I have done with perlin noise flocking and thought it would work well for this project. All he wanted was a couple videos of flocking using a 3D crow (or is it a raven) he would provide. Simple enough. But given the tight deadline, the thought of doing a render and posting it and waiting for approval or changes and then implementing the changes then rerendering and reposting, etc… Well, it just didn’t make sense for this project. So we decided to try something different.

“Let’s deliver them an application.”

Using Processing, we started playing around with the flocking behavior to make it more customizable. The original version of the flocking experiment had very few controls and they had to be hard-coded. There was no run-time adjustment. This was the first thing addressed. Several new parameters were added. They included population density, gravity, drag, collision avoidance, flight range, camera position and tracking, and a few toggles such as tethering strings, floor plane, and bezier curves. Once the parameters were tweaked to the user’s liking, they need only to hit the spacebar and an image sequence of PNGs would start saving to the harddrive.

Processing made the delivery process as easy at it can get. Once completed, all we had to do was hit the ‘Export to Application’ button and Processing would generate Linux, Windows, and Mac applications. We delivered the application to Nervo, gave them some basic instructions, and waited.

The resulting work was fantastic!

The videos are posted at Nervo.tv. Look for the second and third from the bottom to see the spots that included the flocking renders.

20 Responses to “Birds!”

  1. vade says:

    You might like this:

    http://www.youtube.com/watch?v=2Ug7ABWE5js&eurl=http://jqln.org/blog/

    From Psyop, a premier VisFX shop in NYC.

    Nice work, looks really lovely.

  2. flight404 says:

    Yeah, that Psyop piece is fantastic. I had the pleasure of seeing it in HD when it first started to run. Frankly, I like my flocking code better. ;) But they definitely did a stunning job. The transition from birds to bark was sublime.

  3. Tyler Weir says:

    Robert, the end result is simply stunning. Bravo!

  4. Dr. Woohoo! says:

    it’s a very beautiful animation and i love your approach for delivering the processing app to the client.

  5. blprnt says:

    I am on a flight path for crows… about 10000 of them fly over my house every evening. I wish they flew a bit more like this!

  6. Mike Hedge says:

    crazy awesome work.

    mike

  7. Rob says:

    Holy shit! I saw these fox ads a while back and was always stuck the most by this particular one. its so crazy to finally know how the birds were created! brilliant work!

  8. Jim says:

    First of all, as a self described enemy of “generative art” (whatever that may mean), I have to say this is one of the most beautiful things I’ve ever seen. This is also the reason I’ve been searching for pictures of crows for the past 4 years to finish a tattoo on my upper left arm. You did it perfect.

    Any chance of making this app available to the public so random kids like myself can export a PNG/SVG/whatever to get put on an otherwise mediocre tattoo to make it whole??

  9. nicola.xyz says:

    it’s really increadebly beautiful but leave me with a question who made the bird? how? how is been imported in the program you have created in Processing.

  10. flight404 says:

    Hey all, thanks for the great comments. Lets do this one by one:

    Tyler: Thanks. Nervo really did a fantastic job combining all the elements. All of the spots they did for Fox came out beautifully.

    Dr. Woohoo: Getting close to time to visit you in NM.

    blprnt: I had about a dozen outside my window recently, making a hell of a lot of noise and acting like they owned the neighborhood. Super badass, they were.

    Mike Hedge: THANKS! Whee!!

    Rob: You saw these already? Fantastic. I have only seen the quicktime versions as I doubt I will ever see them on Fox.

    Jim: Being that this was client work, I cannot give out the source material. But if you want some tattoo fodder, you should contact Nervo to see if they will help out.

    nicola.xyz: The bird was provided by Nervo so you will have to ask them. They sent me flap cycle images so I never actually touched the model file.

  11. nicola.xyz says:

    anyway you made a great job! adn make me know of Processing ..thanks for that

  12. xi9602 says:

    may I ask if Processing is able to animate the 3D birds such as building the bones for the birds, make them fly with realistic motion as well as mapping and lighting?

    or your customized application produces flocking movements of 2D birds’ sequence images of flying…

    both your process and works are amazing!!!!

  13. flight404 says:

    Processing is able to do all of that, but then it becomes a matter of using the right tool for the right job. Processing is not a substitute for multi-thousand dollar 3D animation software. But then again, even with 3D software you still have to build the bones and explain how they hinge and then cover the skeleton with a surface and then texture map the surface and then place the lights… So its more a matter of what you are willing to put into it.

    I chose to use 2D sprites (160 in total) because it made sense for this particular project. I cant imagine trying to build flapping 3D birds that bank and avoid each other with realistic wing movement. But you totally could if you wanted to.

  14. kevin says:

    Out of curiosity, did you play with the Boids algorithm before doing one with perlin noise? Any insight?

  15. STU says:

    curious if it’s possible to alter the code to make it possible to export alternative file types, like autocad (dwg), vectors (.ai) , rhino, maya, etc etc???

  16. kishanji says:

    cool

  17. leandro says:

    beautiful job.. how could we see the processing code of it?

  18. Matt says:

    Beautiful video I must say! I’m wondering, how do you make the birds look like they are flying towards and away from the screen with just 2d sprites. I’m new to this processing stuff, but am fascinated by it.

    Thanks!

  19. [...] to this day, I still use Perlin noise to simulate flocking behaviors. The Birds piece I worked on with Nervo uses noise flowfields to control the movement of the birds. The code got a bit more sophisticated [...]