[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[pygame] Improved Sprites System - Call for Suggestions
- To: pygame-users@xxxxxxxx
- Subject: [pygame] Improved Sprites System - Call for Suggestions
- From: Sagie Maoz <sagie@xxxxxxxxx>
- Date: Fri, 1 Jun 2012 16:29:33 +0300
- Delivered-to: archiver@xxxxxxxx
- Delivered-to: pygame-users-outgoing@xxxxxxxx
- Delivered-to: pygame-users@xxxxxxxx
- Delivery-date: Fri, 01 Jun 2012 09:29:48 -0400
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:message-id:subject:x-mailer:mime-version :content-type; bh=PYUbRzPgZ0zUMoXAIrxv/SZssx1RMvbroBTqimBcMQ8=; b=W+zCNDVuzTr9B2wh6YYSJBMua+yst/oGkzwKIcjcRldzHvNqlJv6Uoqn4oxZ/1riLz 1afLTmFgy/7ksvGwROKzZFCUPTI9UoOggOKQl6NFCPVmdcJsKptEIUYXnQefNSzEK1dj zcx/uJAQnDBzqkoxqJDmGcVAXlyyUdQ+7Zozrzc9bHOxJ/V3F95DLV1vWoO3tbP6V82o DCnkU6fQ7Q/flgYuJXssaN3Oia/YVhc4TFop49I0PsnLTufjgyXYVZcGI5JhUSbOFZXE tN9cN45ZQW/BTnONWxDXiLEG4rvOvU5+GaZFRurRfzl00llBcAMZv8BCVCPzguxfR9HO UlxA==
- Reply-to: pygame-users@xxxxxxxx
- Sender: owner-pygame-users@xxxxxxxx
Hi guys,
As part of my GSoC project [1], I've been researching Pygame's sprite.py and equivalents in other libraries, figuring out a list of features I will focus on in my project.
I wanted to get your thoughts and feedback on these items; which of these do you think are necessary, and which more necessary than the others? Do you think implementing any of these would be too difficult for a first-time contributor (me)? Do you have any other ideas?
Suggested improvements for sprite.py:
1. Easier positioning methods: Using tuples or arrays, instead of just Rects.
2. Setting a sprite's anchor points for handling in movement, animation, collision etc.
3. Aggregated sprite class (basically, a sprites group which implements the sprite interface).
4. Automated dirty rendering (existing feature in Spyral [2]).
5. New visual attributes for sprites:
- Rotation angle
- Scale
- Crop rectangle
- Visible/hidden
- Collision parameters (smaller hitbox, etc.)
6. Alternative forms of collision detecting (not limited to circles and rectangles).
Possibly using algorithms such as quadtrees and spatial hashing.
7. Improved layering system.
8. Respecting blendmode flags are handled in all types of sprites.
9. Animated sprites:
- Setting a group of images to cycle through in a time interval.
- Animating visual attributes, a-la Kivy [3] or CSS transitions [4].
10. Events dispatching from groups to sprites.
This list was comprised after consulting with mentor Robert Deaton (masquerade) and fellow contributors on the IRC channel.
It's obviously not a final list of the work I'm planning, but more of a list of things to research before I get to coding.
I would love to hear your feedback on these.
Thanks,
--
Your friend in time,
Sagie Maoz
sagie@xxxxxxxxx // +1 (347) 556.5044 // +972 (52) 834-3339
http://sagie.maoz.info/ http://n0nick.net/
/* simba says roar! */