SDL i własny timer
Ostatnio zmodyfikowano 2009-12-05 13:14
kamillo121 Temat założony przez niniejszego użytkownika |
SDL i własny timer » 2009-11-29 20:11:14 Witam , otóż używam biblioteki sdl i np lazyfoo w dalszych tutkach używa timerów , Na tej stronie w kursie Allegro też jest timer .. Teraz pytanie do Was, co timer z technicznej strony robi ? wiem do czego służy tylko nie rozumie jego zasady działania , jak on może mniej więcej zbliżyć prędkość działania programu na różnych komputerach ? Przeglądałem kody źródłowe z takich timerów i nic nie przychodzi mi na myśl . Proszę, niech ktoś mi wytłumaczy zasadę działania takiego timera |
|
DejaVu |
» 2009-11-29 21:41:02 Jeden procesor wykona 3mln instrukcji w ciągu sekundy, drugi 500 tysięcy w tym samym czasie. Timer zapewnia, aby fragmenty kodu były zależne nie od ilości instrukcji wykonanych, ale od odstępów czasowych, jakie między kolejnymi zdarzeniami mają być. Tak więc jeśli timer ma wykonać 100 razy w ciągu sekundy jakiś fragment kodu to zostanie to zapewnione w miarę możliwości sprzętowych. |
|
kamillo121 Temat założony przez niniejszego użytkownika |
» 2009-11-30 08:13:57 Dziekuję, tylko teraz jeszcze jedno . Przy poącztku pętli głownej/bądź tam gdzie chce zastosować timery mam włączyć czas do odliczania pod koniec wyłączyć i sprawdzić czy jest równy ustalonej szybkiości jak nie to zatrzymać program na SDL_Delay(czasUstalony-czasAktualny) ? Tak w nnajprostrzej postaci pytam :) |
|
DejaVu |
» 2009-11-30 17:39:38 Timery mają wykonywać zadanie x razy na sekundę, a nie mierzyć czasy wykonania między poszczególnymi zadaniami (przynajmniej Ty jawnie tego nie robisz). |
|
kamillo121 Temat założony przez niniejszego użytkownika |
» 2009-11-30 17:42:07 Hmm dzięki za wyjaśnienie |
|
dmx81 |
» 2009-12-04 20:39:48 witam, podlacze sie do tematu, bo wlasnie ten kurs przerabiam, z timerami i musze przyznac, ze nie do konca rozumiem, jak logicznie sobie moge przyswoic dzialanie timera - oczywiscie wszytsko dziala jak trzeba, moge zwiekszac i zmniejszac BPS i efekt jest widoczny, ale chodzi mi o sama logike, chyba cos zle sie wczytalem w temat:
deklarujemy zmienna speed = 0 , oraz funkcje ktora zwieksza ta szybkosc
a pozniej podajemy warunek w petli, ze dopoki speed jest wieksze od 0, szybkosc ma byc zmniejszana - jak to dziala w praktyce, tak krok po kroku, bedzie mial ktos cierpliwosc mi wytlumaczyc?:D:D dzieki
ps. i czy ta zmienna speed oraz funkcja - ich nazwy sa "odgórnie ustalone?" czy nazwac moge jak chce? np void zwieksz_szybkosc |
|
DejaVu |
» 2009-12-05 13:14:10 Bezsensu by było gdyby zmienna i funkcja miałaby odgórne nazwy. |
|
« 1 » |