とびだせどうぶつの森 マイデザインのパレット 全カラーコード公開

 ぶつ森、仕事が少し忙しくてなかなか進められないのですが、ようやく大きなミシンを手に入れてマイデザインのQRの書き出しや、読み出しができるようになりました。

 あと、ネットで色々調べてマイデザインのパレットの全カラーコードを取得することに成功したのでgoogle driveのスプレッドシートで公開します。RGB値つきの親切設計。多分一部の人には需要があるはず。

とびだせどうぶつの森 マイデザイン パレットのカラーコード表

ColorPalette
 ナンバーとカラーコードの対応は上記の絵を参考にしてね☆
13/01/19追記 ぽちさんが作り直して下さったのでさしかえました。サンクスです。

 とりあえず画像や写真をベースに、上記のパレットに合わせてぶつ森の制約の15色以内に減色した32×32のドット絵を生成するプログラムを組むことまでは成功しました。12/8にProcessing Advent Calendar 2012で公開予定。QRコードの書き出しまで作りたいのだけど、ちょっと間に合わないかなー。

 とりあえず今回は、パレットの絵を表示するソースコードを載っけときます。完全に自分用なので見たい人は続きを読むをクリックして下さい

 使い方はコピペして実行するだけ。「p」ボタンで画像を保存できます。

final int n_pallet = 159;
final int rect_size = 50;
final int size_x = rect_size*17;
final int size_y = rect_size*19;

float [] pallet_r = {
  255, 255, 239, 255, 255, 189, 206, 156, 82, 
  255, 255, 222, 255, 255, 206, 189, 189, 140, 
  222, 255, 222, 255, 255, 189, 222, 189, 99, 
  255, 255, 255, 255, 255, 222, 189, 156, 140, 
  255, 239, 206, 189, 206, 156, 140, 82, 49, 
  255, 255, 222, 255, 255, 140, 189, 140, 82, 
  222, 206, 115, 173, 156, 115, 82, 49, 33, 
  255, 255, 222, 255, 255, 206, 156, 140, 82, 
  222, 189, 99, 156, 99, 82, 66, 33, 33, 
  189, 140, 49, 49, 0, 49, 0, 16, 0, 
  156, 99, 33, 66, 0, 82, 33, 16, 0, 
  222, 206, 140, 173, 140, 173, 99, 82, 49, 
  189, 115, 49, 99, 16, 66, 33, 0, 0, 
  173, 82, 0, 82, 0, 66, 0, 0, 0, 
  206, 173, 49, 82, 0, 115, 0, 0, 0, 
  173, 115, 99, 0, 33, 82, 0, 0, 33, 
  255, 239, 222, 206, 189, 
  173, 156, 140, 115, 99, 
  82, 66, 49, 33, 0
};
float [] pallet_g = {
  239, 154, 85, 101, 0, 69, 0, 0, 32, 
  186, 117, 48, 85, 0, 101, 69, 0, 32, 
  207, 207, 101, 170, 101, 138, 69, 69, 48, 
  239, 223, 207, 186, 170, 138, 101, 85, 69, 
  207, 138, 101, 138, 0, 101, 0, 0, 0, 
  186, 154, 32, 85, 0, 85, 0, 0, 0, 
  186, 170, 69, 117, 48, 48, 32, 16, 16, 
  255, 255, 223, 255, 223, 170, 154, 117, 85, 
  186, 154, 48, 85, 0, 69, 0, 0, 16, 
  186, 154, 48, 85, 0, 48, 0, 16, 0, 
  239, 207, 101, 170, 138, 117, 85, 48, 32, 
  255, 255, 170, 223, 255, 186, 186, 154, 101, 
  223, 207, 85, 154, 117, 117, 69, 32, 16, 
  255, 255, 138, 186, 207, 154, 101, 69, 32, 
  255, 239, 207, 239, 255, 170, 170, 138, 69, 
  255, 255, 223, 255, 223, 186, 186, 138, 69, 
  255, 239, 223, 207, 186, 
  170, 154, 138, 117, 101, 
  85, 69, 48, 32, 0
};
float [] pallet_b = {
  255, 173, 156, 173, 99, 115, 82, 49, 49, 
  206, 115, 16, 66, 0, 99, 66, 0, 33, 
  189, 99, 33, 33, 0, 82, 0, 0, 16, 
  222, 206, 173, 140, 140, 99, 66, 49, 33, 
  255, 255, 222, 206, 255, 156, 173, 115, 66, 
  255, 255, 189, 239, 206, 115, 156, 99, 66, 
  156, 115, 49, 66, 0, 33, 0, 0, 0, 
  206, 115, 33, 0, 0, 0, 0, 0, 0, 
  255, 239, 206, 255, 255, 140, 156, 99, 49, 
  255, 255, 173, 239, 255, 140, 173, 99, 33, 
  189, 115, 16, 49, 49, 82, 0, 33, 16, 
  189, 140, 82, 140, 0, 156, 0, 0, 0, 
  255, 255, 156, 255, 255, 173, 115, 115, 66, 
  255, 255, 189, 206, 255, 173, 140, 82, 49, 
  239, 222, 173, 189, 206, 173, 156, 115, 49, 
  173, 115, 66, 0, 33, 82, 0, 0, 33, 
  255, 239, 222, 206, 189, 
  173, 156, 140, 115, 99, 
  82, 66, 49, 33, 0
};

void setup() {
  size(size_x, size_y);
  background(255,255,255);
}


void draw() {
  int big_x = 0;
  int big_y = 0;

  int small_x = 0;
  int small_y = 0;

  for(int i=0; i < n_pallet; i++){
    if(i < 144){
      big_x = int(i/9);
      big_x = big_x % 4; 
      small_x = int(i % 3);
      big_y = int(i/36);
      small_y = i % 9;
      small_y = int(small_y /3);
    }else{
      big_x = 0;
      big_y = 4;
      small_x = i-144;
      small_y = 0;
    }
    fill(pallet_r[i],pallet_g[i],pallet_b[i]);
    rect(big_x*rect_size*4 + (small_x+1)*rect_size, big_y*rect_size*4 + (small_y+1)*rect_size, rect_size, rect_size);
  }
}

void keyPressed() {
  // save image
  if (key == 'p' || key == 'P') {
    save("screenshot.jpg"); 
    println("screen saved.");
  }

  // exit
  if (key == ' ') {
    exit();
  }
}