Gaming Life

一日24時間、ゲームは10時間

<processing>ゲームのロード画面でよくみるアレを作ってみた

 OpenProcessingで見かけた作品のソースコードを少し改変して作ってみた。大部分が元の作品に近いのであまり自慢できるようなものでもないが、それでもブログで進捗晒すことで整理したい&モチベを保ちたいので晒すことにする。

作品(Gif)

f:id:ai_gaminglife:20170618190126g:plain

ソースコード

import gifAnimation.*;

GifMaker gifExport;

final int NUM = 24;
color c1 = color(191, 255, 0);
int click = 0;
void setup(){
  size(640,640);
  noStroke();
  smooth();
  frameRate(50);

  gifExport = new GifMaker(this, "export.gif");
  gifExport.setRepeat(0);
  gifExport.setQuality(10);
  gifExport.setDelay(20);
}

void draw(){
  background(0);
  translate(width/2, height/2);
  for(int i = 0; i < NUM; i++){
    float angle = i * 2*PI / NUM;
    float v = pow(abs(sin(angle / 2 + frameCount * 0.03)), 4);
    float r = map(v, 0, 1, 10, 20);
    fill(lerpColor(color(0,0,0), c1, v));
    ellipse((150 + r + click) * cos(angle),(150 + r + click) * sin(angle), r * 2, r * 2);
  }
  if(frameCount <= 50*3){
   gifExport.addFrame();
 } else {
   gifExport.finish();
 }
}

void keyPressed(){
  if(key == 'r'){
    c1 = color(255,50,50);
  }else if(key == 'g'){
    c1 = color(0,255,0);
  }else if (key == 'b'){
    c1 = color(0,50,255);
  }else if(key == 'y'){
    c1 = color(191, 255, 0);
  }else if(key == ENTER){
    click += 10;
  }else if(key == BACKSPACE){
    click = 0;
  }
}

解説らしき何か

 ・Enterをクリック->円拡大、BackSpaceで元に戻す
 ・r,g,b,yをクリック->それぞれ赤、緑、青、黄色に変化する

まとめ

 ファミチキたべたい