fullscreen TOO much fast than windowed!

Blitz3D Forums/Blitz3D Beginners Area/fullscreen TOO much fast than windowed!

Kel(Posted 2004) [#1]
Hi mates :P

I'm struggling at the moment with the animations/presentations of the logo for my game and guess that, in a window all was so soft and sweet ... and when I finished to test my code and the main program, the fullscreen works about 500 times faster, so I had to reprogram some effects, add floats and make it slower... and now the windowed version goes too slow.... Is there a way to have the same speed or similar in windowed and full screen?
thanks for your time.


CyBeRGoth(Posted 2004) [#2]
Hmm maybe try

Vwait
Flip False

instead of just flip?


Kel(Posted 2004) [#3]
Lol CyberGoth, that is a fast answer and solution!

It worked! LOL Thanks.

PS: going to rework on a less messy solution now that it goes equally fast :O

PS2: I had my VSync off in the nvidia settings... may be this was a cause but now its fixed even with vsync off.thanks .


CyBeRGoth(Posted 2004) [#4]
Cool :)

Yeah I always have vsync on in my nvidia settings but I know a lot of people dont like having it on, I had the same problem as you a while ago :)


Warren(Posted 2004) [#5]
What you really need is a proper timer system that animates independent of the frame rate.


Kel(Posted 2004) [#6]
thanks to all.

WarrenM: I implemented a little tweening system( no exactly like the castle demo but, hey, im still a noob in blitz).

Now everything is working exactly equally fast in full screen or windowed... you still need "Vwait : flip false" in full screen, but I have added a little Fps Locker to select speed in full screen mode(so now fixing the fps is identical in full or window). problem solved.... :P


BlackD(Posted 2004) [#7]
using vwait is ok in most cases - as nvidia drivers default to 60hz in many installations. However, if you have refresh set higher (mine is set to 100) then its all going to run almost twice as fast as it should. Theres a couple of good frame limiters in the code archives that you should check out.


wizzlefish(Posted 2004) [#8]
You could put Delay 100 at the end of the loop...


Gabriel(Posted 2004) [#9]
You could put Delay 100 at the end of the loop...



Good idea. Make it run dog slow on every PC. That's a tenth of a second, every frame you're delaying, so he'll be lucky to get 5 fps.


Defoc8(Posted 2004) [#10]
limiter=CreateTimer(60) ;create a timer for 60 fps..
While(Not KeyHit(1))
WaitTimer(limiter) ;this forces the program to wait
..program
Wend

use the above code to frame limit your gameplay to
60fps...this is probably the best solution..but its
really down to your own preference.....


Warren(Posted 2004) [#11]
"Delay 5" has always worked well for me. Any lower and I don't seem to get any processor time back.