2D Python game engine built on pygame and pymunk
Project description
⚙️ Cogworks Engine
Cogworks Engine is a small, personal 2D Python game engine I created for fun. It’s designed to make building 2D games in Python quick, enjoyable, and structured, using Pygame for rendering and input, and Pymunk for physics simulation.
📘 Documentation: cog-works-engine-docs.vercel.app
🚀 Features
🧩 Component-Based GameObjects – Build flexible and reusable entities with custom behaviour.
⚙️ Physics Integration – Built-in Rigidbody2D and Collider components powered by Pymunk for realistic 2D physics.
🧲 Trigger Collider – Independent collision detection for triggers and interactions without physics simulation.
💨 Particle Effects – Customisable particle systems for explosions, muzzle flash, blood effects.
🔊 Audio Source – Play and control sound effects or background music through component-based audio sources.
🧠 Script Component – Attach Python scripts directly to GameObjects to define custom behaviour and logic.
🎬 Scene Management – Manage levels, menus, and transitions with ease.
🎮 Input Management – Unified keyboard and mouse input handling.
🧱 Extensible & Modular Design – Add new components, systems, and tools without breaking the engine’s core structure.
📦 Installation
Install via pip:
pip install cogworks
🕹️ Quick Start
Here’s a minimal example to get started:
from cogworks import Engine
# Create a new engine instance
engine = Engine(
width=800,
height=600,
caption="My Game",
fps=60,
)
# Run the engine
engine.run()
📚 Learn More
Visit the full documentation for examples and guides: 👉 https://cog-works-engine-docs.vercel.app
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file cogworks-0.2.9.tar.gz.
File metadata
- Download URL: cogworks-0.2.9.tar.gz
- Upload date:
- Size: 242.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
106f76c037fbdfcff3a27950b66ab7df62580b32a031cb4e56e6ea26fd37cefe
|
|
| MD5 |
f0c8a3633799a872e9714f188dbcc12f
|
|
| BLAKE2b-256 |
9c9a9470a96156ead9e8b62658cb590ef1397ba1a7152399c2736a74d84889fa
|