A cross-platform 2D game engine written in C++11 with optional Lua scripting, emphasizing performance.
nCine is a cross-platform 2D game engine written in C++11 with optional Lua scripting. It is designed for developers who need a high-performance foundation for creating 2D games across multiple platforms, including desktop, mobile, and web. The engine solves the problem of fragmented tooling by providing a unified, open-source solution with a focus on optimization and extensibility.
Game developers and hobbyists creating 2D games for Windows, macOS, Linux, Android, or web platforms who prefer C++ or Lua for development and value performance and cross-platform compatibility.
Developers choose nCine for its strong emphasis on performance, permissive MIT licensing, and broad platform support. Its combination of C++ core with Lua scripting offers both low-level control and rapid iteration, while active long-term development ensures reliability and modern tool integration.
A cross-platform 2D game engine
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Builds for Windows, macOS, Linux, Android, and Emscripten, with CI badges confirming cross-compilation stability across compilers like MSVC, GCC, and Clang.
Emphasizes smooth 2D gameplay with integrated profiling tools like Tracy and debugging with RenderDoc, allowing fine-grained performance tuning.
Core written in C++11 for low-level control, with optional Lua scripting via documented APIs, enabling rapid iteration on game logic without sacrificing power.
Includes support for Tracy profiling, RenderDoc debugging, and testing frameworks like Google Test, enhancing workflow reliability and code quality.
Relies on an older C++ standard from 2011, missing modern language features that could improve code safety, expressiveness, and performance in contemporary projects.
Requires manual management of numerous external libraries like GLEW, GLFW, SDL, and Qt, increasing initial configuration time and potential for build errors.
As a smaller, long-term project, it lacks the extensive tutorials, plugins, and asset stores found in mainstream engines like Godot, limiting resource availability.