Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Engine::runEngine(sf::RenderWindow &window)
- {
- bool menu = false;
- // deklarujemy potrzebne do liczenia obiekty
- Clock clock; // do mierzenia czasu pomiędzy
- float time=0; // ile minęło czasu w ostatniej klatce od rozpoczęcia pomiaru
- while(!menu)
- {
- Event event;
- sf::Vector2f mysz(Mouse::getPosition(window));
- if (Mouse::isButtonPressed(Mouse::Left)) {
- /* jak pewnie wiesz, delta (m.in. w fizyce) to przyrost czegoś, delta time czyli przyrost czasu w danej klatce
- a więc musimy znać czas jaki minął do poprzedniej klatki i w tej, co liczymy następująco:
- */
- float delta_time = clock.getElapsedTime().asSeconds() - time;
- time = clock.getElapsedTime().asSeconds(); // aktualizujemy wartość na aktualny czas
- player.idz(delta_time); // poruszamy się
- }
- else
- player.stop();
- ...
- }
- }
- void Player::idz(float delta)
- {
- ...
- // pamiętaj aby zwiększyć wartość speed do np 30 (w konstruktorze) inaczej postać będzie się słabo poruszała
- sprite.move(vx*speed*delta,vy*speed*delta);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement