X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2FYoinkApp.cc;h=a9b8f1328068029f42442cfa16630234db76f3a3;hp=77f5c7318d0a9b8f7676e305f020c4d492ae2b7a;hb=33842c860fe18ca8cf087905992885687434320c;hpb=6dd7ae54e742339cc49e640d1076a310a0f4eedd diff --git a/src/YoinkApp.cc b/src/YoinkApp.cc index 77f5c73..a9b8f13 100644 --- a/src/YoinkApp.cc +++ b/src/YoinkApp.cc @@ -30,13 +30,12 @@ #include #include -#include - #include #include #include #include #include +#include #include #include @@ -100,6 +99,28 @@ static std::string iconFile() } +void YoinkApp::myFunc(Mf::Timer& timer, Mf::Scalar t) +{ + std::cout << "timer: " << t << std::endl; + + //timer.invalidate(); +} + +int YoinkApp::myThread() +{ + Mf::Scalar timer = Mf::Timer::getTicks(); + + for (;;) + { + std::cout << "thread awake: " << Mf::Timer::getTicks() << std::endl; + + timer += 3.0; + Mf::Timer::sleep(timer, true); + } + return 0; +} + + YoinkApp::YoinkApp(int argc, char* argv[]) : Mf::Engine(argc, argv, configFiles(), PACKAGE_STRING, iconFile()), music("NightFusionIntro"), @@ -124,6 +145,11 @@ YoinkApp::YoinkApp(int argc, char* argv[]) : octree = Mf::loadScene("Test"); heroine->treeNode = octree->insert(heroine); + + //myTimer.init(boost::bind(&YoinkApp::myFunc, this, _1, _2), + //0.0, Mf::Timer::REPEAT); + //Mf::Thread thread = Mf::detachFunction(boost::bind(&YoinkApp::myThread, this)); + //std::cout << "thread " << thread << " detached." << std::endl; } YoinkApp::~YoinkApp() @@ -176,7 +202,6 @@ void YoinkApp::update(Mf::Scalar t, Mf::Scalar dt) { //dt *= 0.7; - music.update(t, dt); fadeIn.update(dt); camera.update(t, dt); heroine->update(t, dt); @@ -186,7 +211,8 @@ void YoinkApp::update(Mf::Scalar t, Mf::Scalar dt) octree->print(heroine->treeNode); //camera.lookAt(heroine->getSphere().point); - camera.setPosition(Mf::Vector3(-heroine->current.position[0], -heroine->current.position[1], -256)); + camera.setPosition(Mf::Vector3(-heroine->current.position[0], + -heroine->current.position[1], -256)); interp.update(dt); hud.setBar1Progress(interp.getState(dt)); @@ -294,7 +320,8 @@ void YoinkApp::handleEvent(const Mf::Event& event) case SDL_VIDEORESIZE: glViewport(0, 0, event.resize.w, event.resize.h); hud.resize(event.resize.w, event.resize.h); - camera.setProjection(cml::rad(60.0), double(event.resize.w / event.resize.h), 32.0, 2500.0); + camera.setProjection(cml::rad(60.0), + double(event.resize.w) / double(event.resize.h), 32.0, 2500.0); camera.uploadProjectionToGL(); break; }