Level::Level(const std::string &mapfile) : _numDeaths(0), _reachedFinish(false) { _shadowedScene = new osgShadow::ShadowedScene; _shadowedScene->setReceivesShadowTraversalMask(RECEIVE_SHADOW_MASK); _shadowedScene->setCastsShadowTraversalMask(CAST_SHADOW_MASK); _shadowedScene->setShadowTechnique(new osgShadow::ShadowMap); addChild(_shadowedScene); _headUpDisplay = new HeadUpDisplay(); addChild(_headUpDisplay->getCamera()); addChild((new Sky())->getCamera()); initializePhysicsWorld(); // load map from file loadMapFromFile(mapfile); // add player to level _shadowedScene->addChild(Player::getInstance()); addChild(Player::getInstance()->getParticleEffects()); // add player ghost object to world _physicsWorld->addCollisionObject(Player::getInstance()->getGhostObject(), btBroadphaseProxy::CharacterFilter, btBroadphaseProxy::StaticFilter | btBroadphaseProxy::DefaultFilter); // register player controller _physicsWorld->addAction(Player::getInstance()->getController()); // initialize members LazyCameraManipulator *cameraManipulator = new LazyCameraManipulator(); // setup manipulator to track the player cameraManipulator->setTrackNode(Player::getInstance()); cameraManipulator->setHomePosition(LEVEL_CAMERA_HOME_EYE, LEVEL_CAMERA_HOME_CENTER, LEVEL_CAMERA_HOME_UP); // player must be updated after physic is updated Player::getInstance()->setUpdateCallback(new PlayerUpdater()); // set _cameraManipulator as manipulator for the scene viewer.setCameraManipulator(cameraManipulator); LevelUpdater *stepCallback = new LevelUpdater(this); setUpdateCallback(stepCallback); // player keyboard control _keyboardHandler = new LevelKeyboardHandler(); viewer.addEventHandler(_keyboardHandler); initializeLighting(); Sound::getInstance()->stop(MENU_MUSIC_FILE); Sound::getInstance()->playInLoop(LEVEL_MUSIC_FILE); }
HRESULT DXRender::recreateResources() { device->GetBackBuffer(0, 0, D3DBACKBUFFER_TYPE_MONO, &_devBackBuffer); device->GetDepthStencilSurface(&_devDepthBuffer); initializeRenderState(); initializeLighting(); initializeRender(); return S_OK; }
void TriangleWindow::initialize() { initializeLighting(); glClearColor(0.0f,0.21f,0.21f,1.0f); glColor3f(1.0f,1.0f,1.0f); glEnable(GL_DEPTH_TEST); //Z-Buffer glDepthFunc(GL_LEQUAL); // Lesser or Equals glEnable(GL_CULL_FACE); glShadeModel(GL_SMOOTH); initializeShaders(); initializeTextures(); initializeVBO(); // glEnable(GL_TEXTURE_2D); }