1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
int main()
{
std::vector < sf::VideoMode > resolution ;
resolution = sf::VideoMode::getFullscreenModes() ;
std::vector < sf::VideoMode > :: iterator itVideo = resolution.begin() ;
int resolutionX = itVideo -> width ;
int resolutionY = itVideo -> height ;
bool forceRefresh ( false );
sf::RenderWindow window ( sf::VideoMode ( resolutionX , resolutionY ) , "BigBangElement" , sf::Style::Fullscreen ) ;
sf::Event _event;
Data data ( window , forceRefresh );
Resources resources ;
Engine engine ( data ) ;
Builder builder( resources , data ,
engine._graphics,
engine.C_position,
engine.C_selectionZone ) ;
Game game( engine , builder ) ; // le Builder prend dans le constructeur la ref de
//tous les containers de composant
engine.setBuilder( &builder ) ; //oui, c'est malheuresement un pointeur...Peût être l'exeption qui confirme la règle ?
sf::Event event ;
game.load() ;
sf::Clock clock , delatClock ;
sf::Time elapsed , deltaTime ;
while ( window.isOpen() )
{
while (window.pollEvent ( _event ) )
{
if ( _event.type == sf::Event::Closed || sf::Keyboard::isKeyPressed ( sf::Keyboard::Escape ) )
{
window.close() ;
}
}
deltaTime = delatClock.getElapsedTime();
delatClock.restart();
elapsed = clock.getElapsedTime();
game.play() ;
forceRefresh = false ;
if(elapsed.asMicroseconds() >= 62500 )//31250)
{
clock.restart();
forceRefresh = true ;
}
}
return 0;
} |
Partager