PyGame and Rotozoom (Sorry if OT)

Lee Harr lee at example.com
Fri May 20 16:38:45 EDT 2005


On 2005-05-20, J. W. McCall <jmccall at houston.rr.com> wrote:
> I'm not sure if this is off-topic, since it doesn't deal with Python 
> itself, but here goes:
>
> I'm messing around with writing a simple "game" where the player (a 
> crudely drawn smiley face) moves by rotating and moving back or forward 
> (think Resident Evil, but from an always-above view).  After much 
> hacking, I have it working where left and right rotate the player sprite 
> and up always moves the sprite whichever direction it's facing, while 
> down is reverse.  I'm using pygame.transform.RotoZoom().
>
> My problem is that it doesn't rotate smoothly.  When it rotates, the 
> corners of the image (just a plain white background) look like they're 
> hitting some barrier and making it move around.  Think of an empty box 
> turned diagonally (so that it looks like a diamond, with its open end 
> facing you), and a cube in that box being turned while it's resting in 
> the bottom corner.  I want it to rotate smoothly around its center, it's 
> it's not doing that.
>
> I'm guessing that it has something to do with me not setting up a Rect 
> right, but I'm not sure.  Maybe this is a limitation of Rotozoom/Rotate?
>
> Any advice would be greatly appreciated.  And yes, I'm a rank PyGame newbie.
>



You might want to try pygsear:
http://www.nongnu.org/pygsear/

It has a RotatedImage class which takes care of rotating
things for you. See the examples roti.py and wings.py
for some use of rotated image sprites.



More information about the Python-list mailing list