Skip to content

February 6, 2014

Simple butterfly simulation based on bezier curve

by Reza Shirazian

I’ve been meaning to warm up my iOS development for awhile and finally got a chance to get back into it.

A new version of the cocos2d framework has been released since I developed “Around the world in 5 differences.” So I figured the best way to get the hang of it, is to dive right back in. I don’t want  to turn this post into a super technical one so I’ll just highlight what I ended up making:

A butterfly simulation based on bezier curves:

  • Wing animation is based on simple sprite manipulation using CCActions
  • Each butterfly determines a flight path using a randomly generated bezier curve. Each curve is based on a start point, two control points and an end position. like this


  • Once the flight path is selected, a random time interval is picked at which the butterfly plans to complete its flight.
  • After flight is completed, each butterfly ‘chills’ for a randomly  generated amount of time, determines a new path and flies off once again.

The implementaion of the simulation is rather simple. There are no specific swarm rules and the butterflies do not interact with each other. Perhaps that’s something that can be added in future iteration.

For anyone interested in the code, they can get it from here: (I believe all you need is a mac computer and xcode)

Read more from News and Events

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Note: HTML is allowed. Your email address will never be published.

Subscribe to comments

%d bloggers like this: