[ Video ]
[ About ]
Day 8 Cat.
パーリンノイズで移り変わる猫の気持ち。
ofImage配列に4種類のPNGデータを読み込ませて、パーリンノイズの値で表示する画像を決めています。
Feeling of a cat that changes with Perlin Noise.
I loaded image to ofImage array. And, determinate view image by Perlin Noise.
[ Source ]
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#include "ofMain.h" class ofApp : public ofBaseApp { public: void setup(); void update(); void draw(); void keyPressed(int key) {}; void keyReleased(int key) {}; void mouseMoved(int x, int y) {}; void mouseDragged(int x, int y, int button) {}; void mousePressed(int x, int y, int button) {}; void mouseReleased(int x, int y, int button) {}; void mouseEntered(int x, int y) {}; void mouseExited(int x, int y) {}; void windowResized(int w, int h) {}; void dragEvent(ofDragInfo dragInfo) {}; void gotMessage(ofMessage msg) {}; vector<ofImage> cat_images; }; |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
#include "ofApp.h" //-------------------------------------------------------------- void ofApp::setup() { ofSetFrameRate(60); ofSetWindowTitle("openFrameworks"); ofBackground(239); for (int i = 1; i <= 4; i++) { ofImage image; image.loadImage("images/cat" + std::to_string(i) + ".png"); this->cat_images.push_back(image); } } //-------------------------------------------------------------- void ofApp::update() { } //-------------------------------------------------------------- void ofApp::draw() { for (int x = 5; x < ofGetWidth(); x += 144) { for (int y = -36; y <= ofGetHeight(); y += 144) { int index = ofNoise(x * 0.01, y * 0.01, ofGetFrameNum() * 0.005) * this->cat_images.size(); this->cat_images[index].draw(x, y - this->cat_images[index].getHeight()); } } } //-------------------------------------------------------------- int main() { ofSetupOpenGL(720, 720, OF_WINDOW); ofRunApp(new ofApp()); } |