A custom open-source game engine on Python and PySDL2, it's written in pure Python! It's easy and fast!
Project description
🚀 Fusion Engine
Fusion is a game engine for creating graphical applications using the Pygame library and the programming language Python. It provides a simple coding interface for creating windows, rendering graphics, and handling user input. It is and engine to create games fast and easy!
💻 Development
Keep in mind that this project is in work, so if you want to see code, then it is in dev branch but there is no 'full version' of this project! We're working hard to make first alpha version of it!
💾 Installation
Using PyPi
To install our package, run this:
pip install fusion-engine
Our PyPI package is at this link
Install from source
if you want to install the package from source then you do it like this:
git clone https://github.com/dimkauzh/fusion-engine.git
cd fusion-engine
python setup.py install
Developer build
if you want to get the latest changes then follow this instruction:
git clone https://github.com/dimkauzh/fusion-engine.git
cd fusion-engine
python setup.py install_dev
Run example
If you want to run the example, then just run this command:
git clone https://github.com/dimkauzh/fusion-engine.git
cd fusion-engine
python examples/example1.py
For different examples, you change the number to the number of the example file
👥 Community
Our community is just growing, so if you want to help us with the project, it will be very helpful! We have a discord server at this link. Need to contact us? Just DM the Owner or CEO in discord and we will try to react as fast as possible
❤️ Special thanks to these people
- Zenthm (Contributing)
- XCarCedo (Contributing)
- Techsplosion (Bug hunter)
- FBS_Gamer (Discord server)
And our community of course!
📃 Documentation
See at our website
📯 Coming features
🛠️ Features we are working on
We are working hard to implement very basic and complex stuff so our engine becomes more rigid. These features are worked on or will be worked on:
- Engine
- Window
- Create window
- Get data from window
- Draw shapes
- Draw images
- Input
- Storage system
- Rendering options
- Delta-Time
- Pip package and SetupTools
- Cython
- Implement cython for extra speed
- Dev version without cython
- Vectors (stores x and y coordinates)
- Create vector
- Vector build into entity (vectors but with width and height)
- Physics system using PyMunk
- Gravity
- Rendering
- Collision system
- Physics shapes
- GUI library
- Text
- Drawing (Build in draw function)
- Buttons
- And more...
- Sound system
- Sound player
- File support
- And more...
- Window
- CLI
- Create CLI to build your game
- Creates a full project
- Will create a full project dir
🔩 Features that maybe will be implemented
- UI (Using own GUI library)
- Menu
- Create project
- Editor
- Code editor build in
- Run game
💡 - If you have more ideas, please tell us them in our discord group or create an issue!
License
See Licence here
🗄️ About
⚙️ Engine
Fusion Engine is currently (6/14/2023) build with Python and some Python libraries:
- Pygame is used for rendering, windowing, events and more
- Cython for compiling and speed-up
- PyMunk is used for physics simulation
- Custom UI library based on Pygame_gui for UI
- Setuptools for PyPi package
- Json for storing data
This project began May 1, 2023. The original project began in C, but it's entirely rewritten in Python for it's big userbase and ease of use (productivity). This is actually also my EuroPython 2023 project.
🇺🇦 Ukraine
We as fusion team support Ukraine and we hope it will win. Fusion engine is dedicated to Ukraine fighting the Russian invasion. 🇺🇦 Please support Ukraine! 🇺🇦
🚀 About Me
A 13-year-old game developer with much passion about game development. So I made this project to grow my programming skills and just make a tool that I can use for myself or a tool for other people to help them develop games.
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
Hashes for fusion_engine-1.0.2-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bc9c2d19b4a5e41cb780a3709631b86446b1e827e6633e7059a4527733459778 |
|
MD5 | d60a07b551db7588ce2c7c3ae5d4a174 |
|
BLAKE2b-256 | 7eb9ef8483121b67b70ee691f312d95f0eeb848998288e64af88409ce84d8cb4 |