this is a simple pygame wrapper for advanced game features with less boilerplate
Project description
🕹️ Pygame ECS Framework
A modular, extensible game engine framework built with Pygame, designed to support both 2D (SDL) and 3D (OpenGL) rendering backends using a flexible Entity-Component-System (ECS) architecture.
🧱 Core TODOs
- ⚙️ Make Entity system
- 🧩 Make Component system
- 📁 File System (Asset loading/saving)
- 📡 Event System (Custom game events & input routing)
- 🌐 Networking (Multiplayer / sync states)
- 🏷️ Tag Component (
name: str) - 📊 Profiler (performance monitoring)
🖼️ SDL SOFTWARE Engine (2D)
🎨 SDL Renderer TODOs
- 🖌️ Renderer (blit surfaces, render queue)
- 🧪 Visual Debug (draw colliders, axes, etc.)
👾 SDL Entities
- BaseEntity (
Parent entity / empty entity)
🧬 SDL Components
- 🧭 Transform(
position: tuple[int, int],rotation: int,scale: list[int, int]) - 🛞 Rigidbody(
mass: float,velocity: tuple[float, float, float],acceleration: tuple[float, float, float]) - 🧱 Collision(
shape: Enum,size: int,offset: list[int, int]) - 🎞️ Animation(
frames: list[pg.Surface])
🧊 OPENGL 3D Engine
🕶️ OpenGL Renderer TODOs
- 🧼 3D Renderer (OpenGL context, mesh/material support)
- 💡 Shaders (basic lighting, texturing)
- 🎥 Camera system (FOV, perspective, etc.)
- 🧩 Visual Debug (bounding boxes, axes, wireframe mode)
📦 3D Components (Planned)
- 🧭 Transform(position: tuple[float, float, float], rotation: tuple[float, float, float], scale: tuple[float, float, float])
- 📐 Mesh(mesh_id: int)
- 🎨 Material(shader_id: int, texture_id: int)
- 💡 Light(color: tuple[float, float, float], intensity: float)
- 🎥 Camera(fov: float, near: float, far: float)
- 🧲 Rigidbody(...) (extended for 3D: includes angular velocity, etc.)
🧠 Extra Components & Systems
- ❤️ Health / Damage system
- 🤖 AI / Behavior system
- 🎒 Inventory system
- ⚗️ Status Effects / Buffs
- 🎮 Input system (player input mapping)
- 📜 Scripting (attach logic to entities)
- 🔊 Audio (sound emitters, background music)
- 🌠 Particle system (fire, smoke, etc.)
- 🗺️ Scene system (level loading & transition)
- 💾 Serialization (save/load ECS state)
- 🧰 UI Components (HUD, health bars, etc.)
- 🧷 Entity Parenting / Hierarchy
🛠 Tooling & Dev Features
- 🧪 Entity Inspector / Debug Overlay
- 🧱 Level Editor (drag & drop, place entities)
- 🔁 Hot Reloading (assets or scripts)
- ✅ Component-based testing framework
- ♻️ Resource Manager (texture, mesh, sound caching)
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pygame_framework_1just_josh-0.0.9.tar.gz.
File metadata
- Download URL: pygame_framework_1just_josh-0.0.9.tar.gz
- Upload date:
- Size: 8.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a25a49129ce90fa009f890f694f0a46aad98505de8d9cdaf8c627d0ea4b5bdbe
|
|
| MD5 |
372df9d8b179ba33722f977995bc84c8
|
|
| BLAKE2b-256 |
56a7616d7f5b8ff9e2312d463881a5f67c30c3827e429cb4edbc140a3a71a047
|
File details
Details for the file pygame_framework_1just_josh-0.0.9-py3-none-any.whl.
File metadata
- Download URL: pygame_framework_1just_josh-0.0.9-py3-none-any.whl
- Upload date:
- Size: 10.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68b71ccafd231f07e3ecb1cc3d4afc1ed252e13c440756f416e07aaf67a3aa77
|
|
| MD5 |
8b2ef9862cad98288218cec43cff6886
|
|
| BLAKE2b-256 |
2e96a4ecc23228a28246faeafa25126bf869944008890884a80dd03976459265
|