Handling time(时间的处理)
时间的转换
sf::Time t1 = sf::microseconds(10000);
sf::Time t2 = sf::milliseconds(10);
sf::Time t3 = sf::seconds(0.01f);
sf::Int64 usec = t1.asMicroseconds();
sf::Int32 msec = t2.asMilliseconds();
float sec = t3.asSeconds();
时间的运算
sf::Time t1 = sf::microseconds(10000);
sf::Time t2 = t1 * 2;
sf::Time t3 = t1 + t2;
sf::Time t4 = -t3;
bool b1 = (t1 == t2);
bool b2 = (t3 > t4);
时间的测量
sf::Clock clock;
sleep(2);
sf::Time elapsed1 = clock.getElapsedTime();
std::cout << elapsed1.asSeconds() << std::endl;
clock.restart();
sleep(3);
sf::Time elapsed2 = clock.getElapsedTime();
std::cout << elapsed2.asSeconds() << std::endl;
一个示例
sf::Clock clock;
while (window.isOpen())
{
sf::Time elapsed = clock.restart();
updateGame(elapsed);
...
}