Daily Creative Coding

元「30 min. Processing」。毎日、Creative Codingします。

画像をファミコン風にする

f:id:aa_debdeb:20151023232247j:plain
/**
* Image Like Super NES
*
* @author aa_debdeb
* @date 2015/10/28
*/

void setup(){
  size(512, 512);
  PImage image = loadImage("lena.jpg");
  image(image, 0, 0);
  loadPixels();
  int cLevel = 5;
  int levelStep = 255 / cLevel;
  for(int x = 0; x < width; x++){
    for(int y = 0; y < height; y++){
      color c = pixels[y * width + x];
      float r = int((red(c) / levelStep)) * levelStep;
      float g = int((green(c) / levelStep)) *levelStep;
      float b = int((blue(c) / levelStep)) * levelStep;
      pixels[y * width + x] = color(r, g, b);
    }
  }
  updatePixels();
}