Typhon Engine
A Game Engine written in Flutter/C++ to ease the entry barrier for C++ learners with an interactive UI made with flutter and make it easier to integrate existing C++ libraries in any game
Building
In order to build the project you're gonna need to setup a few things:
*CMake is only optional, we can download it for you as a dependency of the program when you run the python code but it might increase the time for building the c++ library at the first time
After downloading and installing the dependencies, download the repository and run the script setup_cpp_library.py with the command below to generate the libraries that are bigger than what Github allows in their website
python setup_cpp_library.py
Then just run
flutter run
Select a device to run and you're all set!
Roadmap
- ✓ Basic Engine UI
- ✓ Basic Project Creation UI
- ✓ Project Creation And Removal
- ✓ Basic Engine in C++
- ✓ Basic C++ Testing
- ✓ Adding on-the-fly C++ Compilation
- ✓ Dynamic Loading|Unloading of the C++ Library
- ✓ Integration of the Shader Compiler to SPIRV (shaderc) and the SPIRV to Shader Code Compiler (spirv-cross)
- ✓ Separating the Shader Compilers into another library
- ✓ Dynamic Loading|Unloading of the C++ Library
- ✓ Basic C++ User Script Creation and Hot Reload
- ✓ Add Initial MacOS Rendering Engine Base (Creating a view, adding shaders and unloading on Metal)
- ✗ Add Initial Windows Rendering Engine Base (Creating a view, adding shaders and unloading on OpenGL)
- ✗ Basic Rendering Engine Outline
- ✗ Add MacOS Support for Rendering Engine (Metal Backend)
- ✗ Add Windows Support for Rendering Engine (OpenGL Backend)