nuclear@0: #include "demonpart.h" nuclear@0: #include "nwt/widget.h" nuclear@0: #include "fmod.h" nuclear@0: nuclear@0: extern Widget *win; nuclear@0: extern FMUSIC_MODULE *mod; nuclear@0: nuclear@0: DemonPart::DemonPart(GraphicsContext *gc) { nuclear@0: this->gc = gc; nuclear@0: nuclear@0: //SceneLoader::SetNormalFileSaving(true); nuclear@0: SceneLoader::SetDataPath("data/textures/"); nuclear@0: SceneLoader::LoadScene("data/geometry/demon.3ds", &scene); nuclear@0: nuclear@0: curve = scene->GetCurve("Line01"); nuclear@0: curve->SetArcParametrization(true); nuclear@0: cam = scene->GetCamera("Camera01"); nuclear@0: cam->SetCameraPath(curve, 0, 0, 1500); nuclear@0: } nuclear@0: nuclear@0: DemonPart::~DemonPart() { nuclear@0: delete scene; nuclear@0: } nuclear@0: nuclear@0: void DemonPart::MainLoop() { nuclear@0: dword msec = timer.GetMilliSec(); nuclear@0: float t = msec / 1000.0f; nuclear@0: nuclear@0: FMUSIC_SetMasterVolume(mod, (1500 - msec) / 6); nuclear@0: nuclear@0: gc->Clear(0); nuclear@0: gc->ClearZBufferStencil(1.0f, 0); nuclear@0: nuclear@0: if(t > 1.5f) { nuclear@0: PostMessage(win, WM_CLOSE, 0, 0); nuclear@0: } nuclear@0: nuclear@0: cam->FollowPath(msec); nuclear@0: scene->Render(); nuclear@0: }