[SFML, C++] Timery
Ostatnio zmodyfikowano 2011-08-03 02:12
diego997 Temat założony przez niniejszego użytkownika |
[SFML, C++] Timery » 2011-08-02 22:04:11 Czy jest coś czym mógłbym zastąpić sf::clock, w przypadku gdy potrzebuje aby jakaś czynność wykonywała się co jakiś czas? |
|
DejaVu |
» 2011-08-02 22:27:00 Niespecjalnie... timery pewnie nie zostały oprogramowane w SFML ze względu na swoją precyzję, a dokładniej jej brak - aplikacje oparte o timery rzadko kiedy działają jak trzeba chyba, że są wykorzystywane do uruchomienia zdarzenia, które nie musi się wykonać dokładnie w określonym czasie - wówczas się je stosuje no ale to w programach, a nie grach. |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-08-02 22:28:31 A czy rozwiązaniem jest inkrementowanie jakiejś wartości i zrobienie do niej warunku ?
Np. if(i = 100000) |
|
DejaVu |
» 2011-08-02 22:33:57 No, tak się robi gry ;p a za pomocą sf::Clock kontrolujesz o ile powinien się zwiększyć timer gry. Timer gry może być równie dobrze intem, a jego wartość może być ustalana stosując np. wzór:
int iKlatka = czas.pobierz() * 20;
gdzie czas.pobierz() to odpowiednia metoda z klasy sf::Clock zwracająca czas na każdą sekundę będzie wówczas przypadało 20 cykli.
|
|
waxx |
» 2011-08-02 23:19:38 Pytanie czemu chcesz cos innego? |
|
Thud |
» 2011-08-02 23:20:34 |
|
DejaVu |
» 2011-08-03 00:09:28 Lepszą metodą jest to co ja napisałem bowiem nadaje się do gier sieciowych - obliczanie różnic między klatkami jest 'słabe' bowiem nigdy nie uzyskasz np. 30ms stałej... z resztą to jest dłuższa debata dot. tworzenia gier i zachowania właściwej prędkości gry oraz wykonywania zdarzeń w niej :) |
|
diego997 Temat założony przez niniejszego użytkownika |
» 2011-08-03 00:56:01 Pytałem o inną metodę ponieważ przy ustawieniu granicy FPS czyli 150 klatek gra mi się przycina na ułamek sekundy właśnie w momencie kiedy pojawia się obiekt który ma się pojawić w odpowiednim czasie ;p
P.S przy 300 klatkach tego nie widać może ustawić tyle ? |
|
« 1 » 2 |