[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Ann: Pygame 1.8 SVN snapshot as Win32 installers



As you say the mouse input is different with windib.  It isn't as
smooth, and some events are deleted.  There are slight differences
with keyboard input too.

I noticed a few games on the SDL mailing list had problems with their
input after windib was made the default.

On older machines it can mean the difference between an unplayable
game, and a playable one.

Also windib doesn't do hardware acceleration at all.  For games
written correctly this is a massive difference in speed.

Maybe we could limit it to win9x machines with directx on by default.


Kamilche, do you remember what OS the people with problems had?  My
guess is it was a laptop with xp/vista or some such?



On Jan 28, 2008 3:10 AM, Kamilche <kamilche@xxxxxxxxxxxx> wrote:
> Brian Fisher wrote:
> > I'd be in favor of leaving SDL's current behavior (windib over
> > directX) unless we have a real compelling reason to do otherwise -
> > it's had 3 point releases since the change, and windib has continued
> > to improve while directX has not been used or developed. Also, I'm far
> > more interested in using a library that ensures compatibility and
> > correct functioning across a variety of computers than the most
> > performant one unless we are talking a really significant difference.
> >
> > So is there a case where performance is significantly different? like
> > 6 fps instead of 30?
> >
>
> On the machines I've tried, windib is faster than DirectX. I'm using a 3
> year old machine running Windows 2000, 2.6 ghz, so I can't vouch for
> machines older than that.
>
> Some of my users couldn't play the game with DirectX as the default, it
> would err out, so I have the following snippet to force windib mode on
> my game:
>
> if sys.platform == 'win32':
>      os.environ['SDL_VIDEODRIVER'] = 'windib'
>
> Plus there were issues with how DirectX fed mouse input to Pygame. When
> you moved the mouse quickly, it would feed all the points between the
> last mousepoint and the new mousepoint to Pygame, resulting in sluggish
> behavior. I had to modify the mainloop to throw out all mousemove events
> except the last one each time through the mainloop to avoid slow
> redraws. With Windib, it was faster because it didn't feed every
> mousemove like; it would allow 'skips' for fast movement.
>
> In my opinion, windib should be the default.
>
> --Kamilche
>