A fast 2D game engine for Python focused on normal-mapped lighting, optimized rendering, a simple API, and easy modding.
Project description
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.pywto start the engine. Look at thescenesfolder for some example scenes, and look atassetsfor 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.
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 visceng-0.1.0.tar.gz.
File metadata
- Download URL: visceng-0.1.0.tar.gz
- Upload date:
- Size: 16.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77f9a2dac9494d66e1c56a9665308dcbcc11e7acd702556f009aae4ffbf61700
|
|
| MD5 |
ef64a77a757f3eb541c1e4e239a20f65
|
|
| BLAKE2b-256 |
79b5c89cef2a91c9dbfd4c874be9126168b9059a5c314881f19db63db2c786fe
|
File details
Details for the file visceng-0.1.0-py3-none-any.whl.
File metadata
- Download URL: visceng-0.1.0-py3-none-any.whl
- Upload date:
- Size: 16.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.10.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8f03bcd22d6c5e5745faebfa8069f96464e3b240cbdb20327fee55da210e87fd
|
|
| MD5 |
2b9f788488b2e0b4ed2bfebf72845eaf
|
|
| BLAKE2b-256 |
59138e046e7a4487386a502edf7eec68aec27f5364110921888e1e97c3ef1a99
|