bool SinglePlayerGameScene::Init() { if (Scene::Init()) { /*FreeLookCamera* freelookCam = FreeLookCamera::Create(); AddChild(freelookCam); SetCurrentCamera( freelookCam );*/ // create a level from the level resource std::shared_ptr<LevelResource> levelRes = Engine::GetInstance()->GetModuleByType<CachedResourceLoader>( EngineModuleType::RESOURCELOADER )->LoadResource<LevelResource>( "Casino/Casino.vgsLevel", ( char )0xA6 ); LevelNode* level = LevelNode::CreateFromResource( levelRes ); #ifdef TONEARM_DEBUG level->ShowCollisions( false ); #endif SetLevel(level); //create local character(s) TankCharacter* player = TankCharacter::Create("Models/RobynTank.vgsmodel", "Data/Characters.ini", "Tank", false); player->SetPosition(glm::vec3(1000.0f, 8.5f, 1000.0f)); AddPlayer(player); /*SniperCharacter* player = SniperCharacter::Create("Models/DonTank.vgsmodel", "Data/Characters.ini", "Sniper", false); player->SetPosition(glm::vec3(1000.0f, 8.5f, 1000.0f)); AddPlayer(player);*/ /*SniperCharacter* player2 = SniperCharacter::Create("Models/DonTank.vgsmodel", "Data/Characters.ini", "Sniper", false); player2->SetPosition(glm::vec3(1000.0f, 8.5f, 1200.0f)); AddPlayer(player2);*/ // create camera FixedCamera* fixedCam = FixedCamera::Create(); fixedCam->InitWithTarget(player, 1000.0f, 1900.0f); fixedCam->Init(); SetCurrentCamera(fixedCam); //create fog of war FogOfWarNode* fog = FogOfWarNode::Create(); AddChild( fog ); // will be called when ingame starts GameScene::InitGUI(); GUIManager* guiMgr = Engine::GetInstance()->GetModuleByType<OpenGLRenderModule>(EngineModuleType::RENDERER)->GetGUIManager(); guiMgr->CreateLayer(new PauseGUI(PauseGUI::Type::SINGLE), "pause_menu_gui"); CreateReticle(); return true; } return false; }