PCPlus 318: The physics of Angry Birds

Without a doubt,Angry Red Bird this was a fun article to write. Not only was there much research done in order to understand the physics of the game (that is, how gravity worked in the game, how collisions were mimicked, and so on), but I also had to play it. A lot. Can you say that you claimed $0.99 on your taxes because buying the game needed to be offset against the income from the article? I thought not.

Anyway, on to the gist of the article. I cover three main topics: the parabolic flight of the red bird from the acceleration due to gravity, the stretching of the catapult’s elastic cord (and some major simplification of Hooke’s Law), and some basic collision physics, including Newton’s Law of the Conservation of Momentum. I won’t rehash it all here, but enjoin you to go read the article.

PCPlus logoThe real-world physics implemented in Angry Birds is pretty elementary, and I showed that the coding must have been fairly straightforward, but I’d have to admit that I hadn’t used or considered kinematics since those O-level Physics lessons at school, many, many years ago. Coincidentally, during my time at Microsoft, our team was working on a C# implementation of a game called “Battlebots” as a demo (no, I don’t know what happened to it, this was ten years ago) and we spent a long time futzing around with collision detection code trying to improve it. It was nasty.

(Erratum: I just noticed that the design editor changed the color of the ball in Figure 2 from my supplied diagram, but forgot to change the caption. Oh well.)

This article first appeared in issue 318, February 2012.

You can read the PDF here.

(I used to write a monthly column for PCPlus, a computer news-views-n-reviews magazine in the UK, which sadly is no longer published. The column was called Theory Workshop and appeared in the Make It section of the magazine. When I signed up, my editor and the magazine were gracious enough to allow me to reprint the articles here after say a year or so.)

Album cover for Born to Laugh at TornadoesNow playing:
Was (Not Was) - Knocked Down, Made Small
(from Born to Laugh at Tornadoes)

Loading similar posts...   Loading links to posts on similar topics...

No Responses

Feel free to add a comment...

Leave a response

Note: some MarkDown is allowed, but HTML is not. Expand to show what's available.

  •  Emphasize with italics: surround word with underscores _emphasis_
  •  Emphasize strongly: surround word with double-asterisks **strong**
  •  Link: surround text with square brackets, url with parentheses [text](url)
  •  Inline code: surround text with backticks `IEnumerable`
  •  Unordered list: start each line with an asterisk, space * an item
  •  Ordered list: start each line with a digit, period, space 1. an item
  •  Insert code block: start each line with four spaces
  •  Insert blockquote: start each line with right-angle-bracket, space > Now is the time...
Preview of response