バーチャルYouTuber犬 Virtual youtube dog
人の声に合わせて口を動かす犬です。
マウスの方向に顔を向けます。
YouTubeの動画を作る時に、画面端に置いて、犬に解説してもらうと、楽しいかもしれません。
The illustration of this dog moves his mouth according to the voice of a person.
This dog points his face toward PC mouse.
When creating a YouTube movie it may be fun to let the dog explain it by placing it on the edge of the screen.
Download Processing Zip here ↓
下のプログラムをprocessingにコピー&ペーストして、ご利用ください。
import ddf.minim.*; PImage bg; PImage mask; PImage fmask; PImage o0; PImage me; PImage hana; PImage o1; PImage o125; PImage o2; PImage o25; PImage o3; PImage o4; Minim minim; AudioInput in; float volumeIn; float vs; float un; int on; void setup() { bg = loadImage("bg.png"); mask = loadImage("mask.png"); fmask = loadImage("fmask.png"); hana = loadImage("hana.png"); o0 = loadImage("0.png"); o1 = loadImage("1.png"); o125 = loadImage("125.png"); o2 = loadImage("2.png"); o25 = loadImage("2.5.png"); o3 = loadImage("3.png"); o4 = loadImage("4.png"); me = loadImage("me.png"); noStroke(); noSmooth(); size(512, 512); minim = new Minim(this);//Minin生成←(3) in = minim.getLineIn(Minim.MONO, 2046); fill(200, 0, 0); frameRate(120); } float k; float f; float h; float xx; float yy; float ky; void draw() { background(130, 200, 255); volumeIn =in.left.level()*2; //println(volumeIn); //println(frameRate); image(bg, 0, -0, 512, 512+(f*0)); if (volumeIn >= 0 && volumeIn < 0.2)image(o0, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.2 && volumeIn < 0.3)image(o125, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.3 && volumeIn < 0.5)image(o1, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.5 && volumeIn < 0.7)image(o2, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.7 && volumeIn < 0.85)image(o25, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.85 && volumeIn < 0.95)image(o3, xx*1.3, h+(yy*1.5)-ky, 512, 512); if (volumeIn >= 0.95)image(o4, xx*1.3, h+(yy*1.5), 512, 512); if (un > 0)un -= 1; if (un <= 0)un += 1; if (volumeIn > 99) { un -= k; if (k > 0)k -= 0.05; } else { if (un <= 0)un += 4; k = 2; } //f = volumeIn*10; h = (un+15-(volumeIn*10)); image(hana, xx*2, un/2+(yy*3), 512, 512); image(me, xx, un/3+(yy*1), 512, 512); xx = -(256-mouseX)/8; yy = -(256-mouseY)/8; if (mouseY < 256) { ky = volumeIn*((256-(512-mouseY))*5); } if (mouseY >= 256) { ky = 0; } if(ky < 0)ky = 0; image(fmask, 0, -0, 512, 512+(f*0)); image(mask, 0, -0, 512, 512+(f*0)); } void stop() { in.close(); //音声再生オブジェクトを閉じる minim.stop(); //Minimオブジェクトをクリア super.stop(); //自分でstop()を定義した時、必須 } void mouseWheel(MouseEvent e ) { if ( e.getAmount() < 0 ) { un += 7; } else { un += -7; } }
動画です↓
koha妹が声優です。