virtual void keyPressed(const KeyEventUnrecPtr e) { if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_CONTROL) { TutorialWindow->closeWindow(); } }
virtual void keyPressed(const KeyEventUnrecPtr e) { if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_COMMAND) { TutorialWindow->closeWindow(); } switch(e->getKey()) { case KeyEvent::KEY_SPACE: TheAnimation->pause(!TheAnimation->isPaused()); break; case KeyEvent::KEY_ENTER: TheAnimation->attachUpdateProducer(TutorialWindow->editEventProducer()); TheAnimation->start(); break; case KeyEvent::KEY_1: dynamic_pointer_cast<FieldAnimation>(TheAnimation)->setInterpolationType(Animator::STEP_INTERPOLATION); break; case KeyEvent::KEY_2: dynamic_pointer_cast<FieldAnimation>(TheAnimation)->setInterpolationType(Animator::LINEAR_INTERPOLATION); break; case KeyEvent::KEY_3: dynamic_pointer_cast<FieldAnimation>(TheAnimation)->setInterpolationType(Animator::CUBIC_INTERPOLATION); break; } }
virtual void keyPressed(const KeyEventUnrecPtr e) { if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_COMMAND) { TutorialWindow->closeWindow(); } switch(e->getKey()) { case KeyEvent::KEY_SPACE: TheAnimationGroup->pause(!TheAnimationGroup->isPaused()); break; case KeyEvent::KEY_ENTER: TheAnimationGroup->attachUpdateProducer(TutorialWindow->editEventProducer()); TheAnimationGroup->start(); break; case KeyEvent::KEY_MINUS: TheAnimationGroup->setScale(osgMax(TheAnimationGroup->getScale()-0.1f, 0.0f)); break; case KeyEvent::KEY_PLUS: case KeyEvent::KEY_EQUALS: TheAnimationGroup->setScale(osgMax(TheAnimationGroup->getScale()+0.1f, 0.0f)); break; } }
virtual void keyPressed(const KeyEventUnrecPtr e) { //Exit if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_COMMAND) { TutorialWindow->closeWindow(); } //Toggle animation if(e->getKey() == KeyEvent::KEY_SPACE) { if(animationPaused) animationPaused = false; else animationPaused = true; } //Toggle bind pose if(e->getKey() == KeyEvent::KEY_B) { //Toggle skeleton if(dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->getDrawBindPose() == false) { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawBindPose(true); } else { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawBindPose(false); } } //Toggle current pose if(e->getKey() == KeyEvent::KEY_P) { //Toggle skeleton if(dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->getDrawPose() == false) { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawPose(true); } else { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawPose(false); } } //Switch animation if(e->getKey() == KeyEvent::KEY_1) { TheCurrentAnimation = TheJointAnimation; } else if(e->getKey() == KeyEvent::KEY_2) { TheCurrentAnimation = TheChildJointAnimation; } }
virtual void keyTyped(const KeyEventUnrecPtr e) { if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_CONTROL) { TheWindowEventProducer->closeWindow(); } switch(e->getKey()) { case KeyEvent::KEY_1: case KeyEvent::KEY_2: case KeyEvent::KEY_3: case KeyEvent::KEY_4: case KeyEvent::KEY_5: case KeyEvent::KEY_6: case KeyEvent::KEY_7: case KeyEvent::KEY_8: case KeyEvent::KEY_9: { UInt8 Index(e->getKeyChar() - '1'); if(Index < Sounds.size()) { Sounds[Index]->play(); } } break; case KeyEvent::KEY_P: SoundGroups[0]->pause(); break; case KeyEvent::KEY_U: SoundGroups[0]->unpause(); break; case KeyEvent::KEY_MINUS: { Real32 Volume(SoundGroups[0]->getVolume()); Volume -= 0.1; if(Volume < 0.0) Volume = 0.0; SoundGroups[0]->setVolume(Volume); } break; case KeyEvent::KEY_EQUALS: { Real32 Volume(SoundGroups[0]->getVolume()); Volume += 0.1; if(Volume > 1.0) Volume = 1.0; SoundGroups[0]->setVolume(Volume); } break; } }
virtual void keyPressed(const KeyEventUnrecPtr e) { //Exit if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_CONTROL) { TutorialWindow->closeWindow(); } //Toggle animation if(e->getKey() == KeyEvent::KEY_SPACE) { if(animationPaused) animationPaused = false; else animationPaused = true; } }
virtual void keyPressed(const KeyEventUnrecPtr e) { if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_COMMAND) { TutorialWindow->closeWindow(); } switch(e->getKey()) { case KeyEvent::KEY_S: { allPhysicsBodies.push_back(buildSphere()); } break; case KeyEvent::KEY_B: { allPhysicsBodies.push_back(buildBox()); } break; case KeyEvent::KEY_E: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 1280.0f); break; case KeyEvent::KEY_1: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 20.0f); break; case KeyEvent::KEY_2: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 80.0f); break; case KeyEvent::KEY_3: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 320.0f); break; case KeyEvent::KEY_4: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 1280.0f); break; case KeyEvent::KEY_5: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 5120.0f); break; case KeyEvent::KEY_6: makeExplosion(Pnt3f(0.0f,0.0f,-5.0f), 20480.0f); break; } }
virtual void keyPressed(const KeyEventUnrecPtr e) { //Exit if(e->getKey() == KeyEvent::KEY_Q && e->getModifiers() & KeyEvent::KEY_MODIFIER_COMMAND) { TutorialWindow->closeWindow(); } //Toggle animation if(e->getKey() == KeyEvent::KEY_SPACE) { if(animationPaused) animationPaused = false; else animationPaused = true; } //Toggle bind pose if(e->getKey() == KeyEvent::KEY_B) { if(e->getModifiers() & KeyEvent::KEY_MODIFIER_SHIFT) { //Toggle mesh if(UnboundGeometry->getTravMask() == 0) { UnboundGeometry->setTravMask(1); } else { UnboundGeometry->setTravMask(0); } } else { //Toggle skeleton if(dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->getDrawBindPose() == false) { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawBindPose(true); } else { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawBindPose(false); } } } //Toggle current pose if(e->getKey() == KeyEvent::KEY_P) { if(e->getModifiers() & KeyEvent::KEY_MODIFIER_SHIFT) { //Toggle mesh if(MeshNode->getTravMask() == 0) { MeshNode->setTravMask(1); } else { MeshNode->setTravMask(0); } } else { //Toggle skeleton if(dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->getDrawPose() == false) { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawPose(true); } else { dynamic_cast<SkeletonDrawable*>(SkeletonNode->getCore())->setDrawPose(false); } } } }