|
dev.gamez.lv Latvian Game Developers Community
|
View previous topic :: View next topic |
Author |
Message |
ocer Guest
|
Posted: Mon Aug 29, 2005 8:23 pm Post subject: Leens bilzu feidings, delays, time-based actions, ms .... |
|
Gribeetu uzzinaat dazzas neskaidras lietas.....
kaa notiek piemeeram feidings respektiivi man ir bildiite, kurai pa virsu tiek rendereets melns kvadraats (pa visu ekraanu), kura alpha veertiibai ir leenaam jaasamazinaas, liidz paliek pilniigi tumsh.
Sleep, vai manaa gadiijumaa SDL_Delay kaut kaa neiepriecina, jo tad arii viss paareejais kods (input piemeeram) tiek apstopeets.
aplikaacija uzreiz ir taada kaa sabremzeeta.
arii for, while loopi visu baigi bremzees
viens jautaajums, kaa lai uztaisu kaadu animaaciju, vai efektu (fading) nebremzeejot paareejo kodu...
Jaalieto threadi?
otrs jautaajums, kaa vispaar panaakt kaut ko "time-based" nevis CPU/GPU baazeetu. Laikam speeles fizikaa viss buus vairaak vai mazaak time-based?
Kjipa FPS limiters: SDL_Delay(1000/30); un buus man 30 FPS konstanti., viss jau buutu labi, ja tik tas nesabremzeetu visu progu....
Ir Labaaks risinaajums? |
|
Back to top |
|
|
kaszu
Joined: 28 Dec 2004 Posts: 103 Location: Iceberg, Northpole
|
Posted: Mon Aug 29, 2005 8:37 pm Post subject: |
|
Nezinu daudz par SDL, bet tur ir funkcija SDL_GetTicks()
Code: |
Var darīt šādi
.....
long prevTick;
long alphaTime = 1000; //Laiks cik ilgi alpha nomainisies no 255 lidz 0
.....
void draw()
{
long curTick = SDL_GetTicks();
long tickDifference = curTick - prevTick;
//tickDifference ir atšķirībā laikā starp iepriekšējo reizi, kad tika zīmēts un tagad.
...
if (alphaTime > 0)
{
long melnasBildesAlpha = 255 - (1000- alphaTime)/1000*255;
alphaTime -= tickDifference ;
}
...
//Seit zimee melno bildi ar alphu melnasBildesAlpha
...
prevTick = curTick;
}
|
Tagad tev nebūs CPU/GPU bazēta pāreja, bet gan laika.
Protams šitas kods tev jāmodificē.
Ceru, ka ir pareizi |
|
Back to top |
|
|
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
Powered by phpBB © 2001, 2005 phpBB Group
|