openframeworksのチュートリアルを行い図形を動かし、図形を端まで行ったら300px;に戻るというコードを書く。
これもHellowの一環だけど、移動をさせるというスクリプト、Processingでも行ったがギターのコードと同じで基本を勉強したほうがいいと思うので。
パックマンエフェクト、特定の位置まで行ったら300pxに戻るというコードを書いた。
setupの設定
void testApp::setup(){ myCircleX = 300; myCircleY = 200; }
まずはセットアップこれは基本です。一度だけ呼び出される。x座標、y座標なので0,0でいったら0座標です。
ここから図形の移動をどんどんと行っていきます。
図形を動かす
void testApp::draw(){ myCircleX = myCircleX + 1; //xに+1をどんどんすることにより横に1pxずつ動きます。 ofSetColor(255, 0, 255); ofCircle(myCircleX, myCircleY, 60); }
ということは ++というインクリメントも使用できるので、
void testApp::update(){ myCircleX++; } void testApp::draw(){ ofSetColor(255, 0, 255); ofCircle(myCircleX, myCircleY, 60); }
と記述することがきます。
スポンサーリンク
フレームレートの指定
void testApp::update()を行うことでマイフレームに動きを加えることができます。
なのでスピードを加えるのとフレームレートを変更することにより1秒に何枚の絵を使うというのがフレームレートなので
ofSetFrameRate(60);を追加すると60枚の絵を使用するので動きが滑らかになるので追加。
ちなみに29.8ftpはテレビのフレームになります、自分の覚書。
条件分岐
void testApp::update(){ myCircleX++; if(myCircleX > 1024) //myCircleXが1024を越えたら { myCircleX = 300; //300に戻る } }
もし”myCircleX”がステージの大きさ1024よりを越えたら myCircleX = 300;
に移動を行います。結果がTrueなら、myCircleXを300にセットします。
実行結果
Originally posted 2016-01-14 11:10:59.