Source Code. Projects. Nerd Stuff. Art Stuff.

Category: icm

Music Visualizer

Posted on December 3rd, by amoeboar in classes, icm. No Comments

For my ICM final, I elaborated on last week’s assignment, by working with the minim library to turn it into a music visualizer. Read more


Posted on November 25th, by amoeboar in classes, icm. No Comments

For this assignment I made use of Processing’s built-in 3D shapes, camera and lighting methods. Read more

Space Invaders

Posted on November 15th, by amoeboar in classes, icm. No Comments

My midterm project was to begin working on a classic Space Invaders-style game. Read more


Posted on October 16th, by amoeboar in classes, icm. No Comments

A sketch that puts you underwater!

[gn_spoiler title="underwater source code:" open="0" style="1"]

[gn_tabs style="3"]

[gn_tab title="underwater"]

 / John Capogna
 / underwater.pde
 / ITP, 2012


Capture cam;
PImage displayImg;
//int greenX = 0;
//int greenY = 0;
//float mostGreenPixel = 10000;  // start green value very high

ArrayList images;

void setup() {
  size(640, 480);

  cam = new Capture(this, 640, 480);

  displayImg = new PImage(640, 480);

  // Initialize the ArrayList
  images = new ArrayList();

  // Make bubbles and fishes
  for (int i = 0; i < 25; i++) {
    if (i < 20) {
      Bubble tempBubble = new Bubble(random(width), random(height), random(-1, 1), random(-1, 1));
    else {
      Fish tempFish = new Fish(random(width), random(height), random(-1, 1), random(-1, 1));

void draw() {
  if (cam.available()) {;

    for (int x = 0; x < cam.width; x++) {
      for (int y = 0; y < cam.height; y++) {
        // (width – x – 1) refers to a reversed image
        int dIndex = x + y * cam.width;  // display index
        int cIndex = (width – x – 1) + y * cam.width;  // camera index

        color currentPixel = cam.pixels[cIndex];

        displayImg.pixels[dIndex] = cam.pixels[cIndex];


    image(displayImg, 0, 0);

  // We go through the images ArrayLIst
  for (int i = 0; i < images.size(); i++) {
    // We cast every object we pull out as a Bubble. Read more

Many Objects

Posted on October 9th, by amoeboar in classes, icm. No Comments

Making use of objects and ArrayLists.
Class BaseShape sets the parameters for all shapes, which contains movement properties and contains a “Bouncing Shape” check for walls. Read more

Moving Storybook

Posted on October 2nd, by amoeboar in classes, icm. No Comments

I created an animated storybook. A collection of nouns, adjectives, and verbs is stored in a word array, and each time the user clicks the mouse, a random word is chosen. Read more


Posted on September 25th, by amoeboar in classes, icm. No Comments

This assignment is inspired by Large Hadron Collider (see the second image here). Read more

Super Mario

Posted on September 6th, by amoeboar in classes, icm. No Comments

Using mouseX and mouseY I made a simple interaction between Mario and Boo. Hovering the mouse either to the left or right of Mario causes him to face different directions. Read more