kitao / pyxel

A retro game engine for Python
MIT License
15.35k stars 847 forks source link

New functions #533

Closed Flevtek closed 6 months ago

Flevtek commented 7 months ago

I think you could add some new functions to pyxel for better work. For example, I was doing one project and I needed to work with delays and objects colliding, but sadly pyxel don't have such functions

merwok commented 7 months ago

I think pyxel wants to provide us the minimum functions needed to make 2D games (and some nice extras, like perlin noise!) without prescribing the game physics or any other part.

This is great because we can discover how to do things from scratch, or reimplement existing gameplay from classic games, or use other libraries in combination with Pyxel. For example, Pymunk is a 2D physics library with all kinds of nifty behaviours and it doesn’t render things, so you can use it with Pyxel.

kitao commented 7 months ago

@Flevtek

As @merwok mentioned, Pyxel intentionally does not provide high-level features such as collision detection and ECS.

The reason for this is to provide users with the opportunity to create their own modules from scratch instead of learning how to use black box tool features, and to make it easier for others to provide high-level features as separate modules in Python.

Instead, Pyxel provides sample code for functions needed in 2D games, such as collision detection and font rendering. You can learn from this code and create your own modules, or simply copy and use them.