예제 #1
0
Manager::Manager( const char* name, int width, int height, Engine::WindowMode wm ):
RTTI_CLASS_DEFINE( Manager ),
m_engine( 0 ),
m_game( 0 ),
m_pushState( 0 ),
m_progressState( 0 ),
m_progressStateDefault( 0 ),
m_popState( false ),
m_changeState( false ),
m_loading( false ),
m_states( 0 ),
m_scenes( 0 ),
m_materials( 0 ),
m_effects( 0 ),
m_fonts( 0 ),
m_textures( 0 ),
m_canvases( 0 ),
m_assets( 0 ),
m_assetsLoading( 0 ),
m_actors( 0 ),
m_controls( 0 ),
m_collisions( 0 ),
m_audio( 0 )
{
	m_engine = xnew Engine();
	m_engine->initiation( name, width, height, wm );
	m_states = xnew Stack< IState >();
	m_scenes = xnew SceneManager();
	m_materials = xnew MaterialManager();
	m_effects = xnew EffectManager();
	m_fonts = xnew FontManager();
	m_textures = xnew TextureManager();
	m_canvases = xnew CanvasManager();
	m_assets = xnew AssetManager();
	m_assetsLoading = xnew AssetManager();
	m_actors = xnew Stack< ActorManager >();
	m_controls = xnew Stack< ControlManager >();
	m_collisions = xnew Stack< CollisionManager >();
	m_audio = xnew AudioManager();

	Global::use().engine = m_engine;
	Global::use().scenes = m_scenes;
	Global::use().materials = m_materials;
	Global::use().effects = m_effects;
	Global::use().fonts = m_fonts;
	Global::use().textures = m_textures;
	Global::use().canvases = m_canvases;
	Global::use().assets = m_assets;
	Global::use().assetsLoading = m_assetsLoading;
	Global::use().actors = 0;
	Global::use().controls = 0;
	Global::use().collisions = 0;
	Global::use().audio = m_audio;
}
예제 #2
0
void ReactiveSpaceApp::setup()
{
	//setup vars
	m_currentSceneNum = 3;
	m_nextSceneNum = 3;

	//audio
	m_audioManager = AudioManager();

	//graphics
	ofSetFrameRate(60);
	ofSetVerticalSync(true);
	ofBackground(0, 0, 0);
	ofDisableArbTex();

	//init time stuff
	stepTimeDelta = 0;
	stepTimeLast = ofGetElapsedTimeMillis();

	//open CV stuff
	pCurrentScene = nullptr;
	pPeople = vector<Particle*>();
	openCVManager = new OpenCVManager(&pPeople, &pCurrentScene);

	//kinect
	pHandPositions = vector<Particle*>();
	kinectManager = new KinectManager(&pHandPositions, &pCurrentScene);
	kinectManager->initialize();

	//fill scene vector
	m_scenes.push_back(new GridScene(&pPeople, &pHandPositions, &m_audioManager));
	m_scenes.push_back(new LightScene(&pPeople, &pHandPositions, &m_audioManager));
	m_scenes.push_back(new RainScene(&pPeople, &pHandPositions, &m_audioManager));
	m_scenes.push_back(new GeoScene(&pPeople, &pHandPositions, &m_audioManager));
	pCurrentScene = m_scenes[m_currentSceneNum];
	pCurrentScene->convertPeopleVector();

#ifdef DEBUG_DRAW
	kinectUpdateMS = 0;
	openCVUpdateMS = 0;
	sceneUpdateMS = 0;
	sceneDrawMS = 0;
#endif
}