Tag Archives: rovio

Angry Birds & Box2D: An Open Source Holiday Wish

I have been spending far too much of my time over the last week or so playing Angry Birds. It’s a simple, clever, and addictive game which seems to have captivated large part of the human population (just yesterday, I heard a woman on the subway exclaim: “Take that, you %$!# pigs!”). Along with immense popularity, the game has also brought in millions upon millions of dollars for Rovio, the Finnish game company who created the concept and built the game. Though exact figures are unclear, the game has had upwards of 50M downloads, and brings in $1M per month in ad revenue alone. It’s likely that Angry Birds has made upwards of 100 million dollars.

For those that haven’t played, the gameplay is straight-forward: you launch birds out of a slingshot, in an attempt to collapse structures that are protecting egg-thieving pigs (it’s more fun that it sounds). A large part of the effectiveness of the game comes from the fact that these structures – built from blocks, triangles, and cylinders of various materials, react with realistic physics; the blocks knock each other over, the cylinders roll down hills, and the triangles act as convenient ramps.

I can’t say this for sure, but it’s very very likely that Angry Birds is built on top of Erin Catto’s excellent Box2D physics engine. Box2D is a set of libraries for C++ which makes it easy to build rigid body physics simulations – which is, essentially, what Angry Birds is. [EDIT: It has been confirmed that Angry Birds does in fact use Box2D]

Box2D is released with a very liberal open source license – it can basically be used by anyone, for anything. The only requirement is that, if and when source is released, the code has to be attributed to Erin, and can’t be claimed as original. There is absolutely no legal requirement for anyone using Box2D to pay for it in any way.

But is there an ethical requirement? The founders of Rovio are very, very, very rich men – thanks to Angry Birds. If, indeed, Angry Birds relies as heavily on Box2D as I suspect, they are also very, very, very rich men thanks to Erin and Box2D.

I’ve often thought of open source as a gratitude economy – people maintain and distribute projects largely because they are fueled by the thanks that they receive. By releasing Box2D with such a generous license, Erin Catto was clearly aware that he wouldn’t be profiting from its use. Likely, he’s been happy seeing his project used in so many interesting ways. I can’t imagine that he ever expected someone to make such a ridiculous fortune from his code, on the scale of Rovio and Angry Birds.

Of course, Rovio may have built their own physics engine for Angry Birds. And, even if they didn’t, they are perfectly within their rights to keep every penny, and not say a word about Erin or about Box2D.

With Christmas just around the corner, though, I can’t help but imagine an ideal world – in which Erin Catto receives some kind of an unexpected bonus. An open source holiday wish?