Custom 2D game engine adapted from my previous, cancelled game, known in development as "Visceral Velocity". This version of the engine has been rewritten from scratch to be more efficient, and more user-friendly.
Features
- Comparatively fast rendering in pure Python using Pyglet (~2000 FPS on a large tilemap on a Ryzen 9 7900X, where a similar scene in Pygame would be ~90 FPS)
- Simple and easy-to-use API for quickly getting repetitive things done
- Built-in support for tilemaps using a custom format (and level editor)
- 2D lighting, shadow-casting, normal mapping, and more
- Easy modding support with everything exposed as pure Python to a modder
- Simple multiplayer synchronization using a custom P2P protocol, with a broker server for NAT traversal
Installation
- Clone the repository
- Create a venv
- Python 3.11 is required. If you have pyenv already, it will default to 3.11 for this directory.
- Install requirements
- Run
python main.pyw
to start the engine. Look at the scenes
folder for some example scenes, and look at assets
for the resources used in those scenes.
License
None yet.
Contributing
Feel free to contribute! Just fork the repository and make a pull request. If you have any questions, feel free to ask in the issues tab.