diff options
Diffstat (limited to 'morpher/src/testApp.cpp')
| -rw-r--r-- | morpher/src/testApp.cpp | 67 |
1 files changed, 55 insertions, 12 deletions
diff --git a/morpher/src/testApp.cpp b/morpher/src/testApp.cpp index 31dffb4..97d57db 100644 --- a/morpher/src/testApp.cpp +++ b/morpher/src/testApp.cpp @@ -3,17 +3,20 @@ //-------------------------------------------------------------- void testApp::setup(){ //mesh.loadfile("Bird-test1.xml"); - if (mesh.loadMesh("Bird-test.xml")) printf("mesh loaded with %i vertices, %i face indices, %i targets\n",mesh.getNumVertices(),mesh.getNumIndices(),mesh.getNumTargets()); + if (mesh.loadMesh("Bird-poses.xml")) printf("mesh loaded with %i vertices, %i face indices, %i targets\n",mesh.getNumVertices(),mesh.getNumIndices(),mesh.getNumTargets()); else printf("mesh XML file not parsed\n"); - if (mesh.loadSeqs("Bird-anim-test.xml")) printf("animation loaded with %i sequences\n",mesh.getNumSequences()); + if (mesh.loadSeqs("Bird-anim.xml")) printf("animation loaded with %i sequences\n",mesh.getNumSequences()); else printf("animation XML file not parsed\n"); - mesh.sequences["flap"].start(); - - texture.loadImage("texture2.jpg"); + mesh.sequences["hover"].start(); + state=HOVER; + currentseq="attack"; + + texture.loadImage("TextureBird.jpg"); - xr=yr=0; + xr=90; + yr=0; xo=yo=0; glEnable(GL_DEPTH_TEST); @@ -43,7 +46,7 @@ void testApp::draw(){ ofRotate(xr,0,1,0); ofRotate(yr,1,0,0); ofRotate(180,1,0,0); - ofScale(2.0,2.0,2.0); + ofScale(1.0,1.0,1.0); //mesh.draw(testweight); mesh.drawAnimated(); ofPopMatrix(); @@ -54,14 +57,54 @@ void testApp::draw(){ } //-------------------------------------------------------------- +/* + void start(); + void stop(); + void startAt(float time); + void fadeout(float time); +*/ void testApp::keyPressed(int key){ - + switch (key){ - case 'a': - //if (movieExporter.isRecording()) movieExporter.stop(); - //else movieExporter.record(); + case '1': + if (currentseq!="hover") { + //mesh.sequences["trans_flaphover"].stopAt(0.3); + //mesh.sequences["trans_flaphover"].start(); + mesh.sequences[currentseq].fadeout(0.5); + mesh.sequences["hover"].fadein(0.5); + currentseq="hover"; + } + break; + case '2': + if (currentseq!="flap") { + //mesh.sequences["trans_hoverflap"].stopAt(0.3); + //mesh.sequences["trans_hoverflap"].start(); + mesh.sequences[currentseq].fadeout(0.5); + mesh.sequences["flap"].fadein(0.5); + currentseq="flap"; + } + break; + case '3': + if (currentseq!="swoop") { + //mesh.sequences["trans_hoverflap"].stopAt(0.3); + //mesh.sequences["trans_hoverflap"].start(); + mesh.sequences[currentseq].fadeout(0.25); + mesh.sequences["swoop_trans"].fadein(0.25); + mesh.sequences["swoop_trans"].stopTime=ofGetElapsedTimef()+1.0; + mesh.sequences["swoop"].startAt(1.0); + currentseq="swoop"; + } break; - case 'z': + case '4': + if (currentseq!="attack") { + //mesh.sequences["trans_hoverflap"].stopAt(0.3); + //mesh.sequences["trans_hoverflap"].start(); + mesh.sequences[currentseq].fadeout(0.2); + mesh.sequences["attack_trans"].fadein(0.2); + mesh.sequences["attack_trans"].stopTime=ofGetElapsedTimef()+0.6; + mesh.sequences["attack"].startAt(0.6); + currentseq="attack"; + } break; } } |
