meine
meine 🌒 - A CLI file manager and system utility built with Textual. It combines intuitive command parsing with rich t…
Pymunk is a easy-to-use pythonic 2d physics library that can be used whenever you need 2d rigid body physics from Pyth…
git clone https://github.com/viblo/pymunk.gitviblo/pymunkPymunk is an easy-to-use pythonic 2D physics library that can be used whenever you need 2D rigid body physics from Python. Perfect when you need 2D physics in your game, demo or simulation! It is built on top of Munk2D, a fork of the very capable 2D physics library Chipmunk2D.
The first version was released in 2007 and Pymunk is still actively developed and maintained today, more than 15 years of active development!
Pymunk has been used with success in many projects, big and small. For example: 3 Pyweek game competition winners, dozens of published scientific papers and even in a self-driving car simulation! See the Showcases section on the Pymunk webpage for some examples.
2007 - 2025, Victor Blomqvist - vb@viblo.se, MIT License
This release is based on the latest Pymunk release (7.3.0), using Munk2D 2.0.1 rev ade7ed72849e60289eefb7a41e79ae6322fefaf3.
In the normal case Pymunk can be installed from PyPI with pip:
> pip install pymunk
It has one direct dependency, CFFI.
Pymunk can also be installed with conda, from the conda-forge channel:
> conda install -c conda-forge pymunk
For more detailed installation instructions, please see the complete Pymunk documentation.
Quick code example:
import pymunk # Import pymunk..
space = pymunk.Space() # Create a Space which contain the simulation
space.gravity = 0,-981 # Set its gravity
body = pymunk.Body() # Create a Body
body.position = 50,100 # Set the position of the body
poly = pymunk.Poly.create_box(body) # Create a box shape and attach to body
poly.mass = 10 # Set the mass on the shape
space.add(body, poly) # Add both body and shape to the simulation
print_options = pymunk.SpaceDebugDrawOptions() # For easy printing
for _ in range(100): # Run simulation 100 steps in total
space.step(0.02) # Step the simulation one step forward
space.debug_draw(print_options) # Print the state of the simulation
This will print (to console) the state of the simulation. For more visual, detailed and advanced examples, take a look at the included demos. They are included in the Pymunk install, in the pymunk.examples subpackage. They can be run directly. To list the examples:
> python -m pymunk.examples -l
And to run one of them:
> python -m pymunk.examples.index_video
Regardless of the method you use I will try to answer your questions as soon as I see them. (And if you ask on Stackoverflow other people might help as well!)
The full documentation including API reference, showcase of usages and screenshots of examples is available on the Pymunk homepage, http://www.pymunk.org
"Make 2D physics easy to include in your game"
It is (or is striving to be):
Basically Pymunk have been made to be as easy to install and distribute as possible, usually pip install will take care of everything for you.
If you use any of these legacy versions of Python, please use an older Pymunk version. It might work on newer Pymunks as well, but it's not tested, and no wheels are built.
more like this
search projects, people, and tags