Book Image

Processing 2: Creative Programming Cookbook

Book Image

Processing 2: Creative Programming Cookbook

Overview of this book

Processing is probably the best known creative coding environment that helps you bridge the gap between programming and art. It enables designers, artists, architects, students and many others to explore graphics programming and computational art in an easy way, thus helping you boost your creativity. "Processing 2: Creative Programming Cookbook" will guide you to explore and experience the open source Processing language and environment, helping you discover advanced features and exciting possibilities with this programming environment like never before. You'll learn the basics of 2D and 3D graphics programming, and then quickly move up to advanced topics such as audio and video visualization, computer vision, and much more with this comprehensive guide. Since its birth in 2001, Processing has grown a lot. What started out as a project by Ben Fry and Casey Reas has now become a widely used graphics programming language. Processing 2 has a lot of new and exciting features. This cookbook will guide you to explore the completely new and cool graphics engine and video library. Using the recipes in this cookbook, you will be able to build interactive art for desktop computers, Internet, and even Android devices! You don't even have to use a keyboard or mouse to interact with the art you make. The book's next-gen technologies will teach you how to design interactions with a webcam or a microphone! Isn't that amazing? "Processing 2: Creative Programming Cookbook" will guide you to explore the Processing language and environment using practical and useful recipes.
Table of Contents (18 chapters)
Processing 2: Creative Programming Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Creating a drum machine


Now that you know how to analyze audio and visualize it, we'll take a look at how we can create instruments. We'll start with building a programmable drum machine with a 16-step sequencer, such as the famous TR-808 and TR-909 drum machines from Roland. You can find out everything about these classic drum machines at Vintage Synth Explorer, at http://www.vintagesynth.com/roland/808.php.

How to do it...

You can start by creating an empty sketch and saving it as drum_machine.pde. Add a new tab to the sketch and save it as Button.pde. We'll write a simple Button class so you can toggle buttons on and off. This class will also keep track of playing sounds.

class Button
{
  float x;
  float y;
  float w;
  float h;
    
  boolean isOn;
    
  Button( float _x, float _y )
  {
    x = _x;
    y = _y;
    w = 20;
    h = 20;
    
    isOn = false;
  }
  
  void render()
  {
    if ( isOn == true ) {
      fill( 255, 0, 0 );
    } else {
      fill( 255 );
    }
    rect( x, y...