/typhon

Primary LanguageC++

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)