Re: Sleep w OS/2

Autor: Lech Wiktor Piotrowski (lewhoo_at_teamos2.org.pl)
Data: Fri 09 Mar 2001 - 16:36:19 MET


On Fri, 9 Mar 2001 15:51:44 +0100 (MET), Grzegorz Szyszlo wrote:

>Lech Wiktor Piotrowski wrote:
>
>> >> Chce, zeby moj waz sie szybciej ruszal, a miedzy ruchami ma sleepa :) Chyba
>> jedyny
>> >> sposob na ta sama predkosc na roznych komputerach...
>> >
>> >eeee.... do tego dokladnosc 1/30 sekundy wystarczy :)
>> >
>> Tyle, ze ja chcialbym miec rozne predkosci, a grywam zazwyczaj na predkosci
>> wiekszej, niz mozna uzyskac 30 ms
>
>telewizornia wyswietla 50klatek/s, komputer do 100klatek/s.
>watpie by dla ciebie byl zauwazalny krok mniejszy niz 10ms.

Mniejszy - mozliwe. Ale nie zapominajmy, ze tu nie chodzi o plynnosc obrazu, tylko o
predkosc przesuwania, a wrazenie optyczne tych dwoch zjawisk to zupelnie co innego.
Przy duzej predkosci najwyzej nie bede zauwazal skoku (bo sie przesuwa co 10 pixeli),
ale bede rejestrowal te predkosc...

>30ms to co prawda 3 krotnie wiecej, ale w grze mozesz sobie zrobic
>dynamiczne dzielenie kroku. nie musi byc 1:1 z zegarkiem, moze byc
>dowolny inny ulamek. np. 2:3 ? 3:2 ? a moze 17:13 ? :)))))
>po prostu przyjmujesz sobie liczbe 0.
>najpierw sprawdzasz czy liczba dodatnia (w tym zero). jesli tak,
>odejmujesz
>pierwsza liczbe (przed dwukropkiem) i wywolujesz engine gry. jesli nie,
>dodajesz druga liczbe (po dwukropku) i wywolujesz sleep z wartoscia
>minimalna.
>w ten sposob mozesz calkiem plynnie okreslic sobie wspolczynnik biegu
>gry do taktow zegarka.
>
Moze bede tak mu8sial zrobic. Ale wyczytalem, ze time_critical thread ma zegar na 8.2
ms.... Obacze, jak sie toto bedzie zachowywalo jako time_critical :)

-------------------------------------------------------------------------------------------------
Lech Wiktor Piotrowski | ICQ#: 50746253 | lewhoo_at_teamos2.org.pl
TeamOS/2 Poland Webmaster - http://www.teamos2.org.pl
Inne systemy maja uzytkownikow, OS/2 ma wyznawcow
My home OS/2 system uptime is: : 0d 20h 50m 29s 617ms (en).
----------------------------------------------- -------------------------------------------------



To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 15:30:43 MET DST