Description
nCine is a multi-platform 2D game engine that runs on PC (Linux, Windows, macOS), Android and the web (Emscripten).
The project has been in active development since June 2011. Source code is released under the MIT license and available on GitHub.
nCine alternatives and similar libraries
Based on the "Game Engine" category.
Alternatively, view nCine alternatives based on common mentions on social networks and blogs.
-
Cocos2d-x
A multi-platform framework for building 2d games, interactive books, demos and other graphical applications. [Commercial?] -
GamePlay
A cross-platform native C++ game framework for creating 2D/3D mobile and desktop games. [Apache2] -
Panda3D
A game engine, a framework for 3D rendering and game development for Python and C++ programs. [Modified BSD] website -
The MOAI Multi-platform Game Engine
This is the development repo of Moai SDK. Current, but not necessarily tested or stable.
Get performance insights in less than 4 minutes
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of nCine or a related project?
Popular Comparisons
README
nCine
nCine is a cross-platform 2D game engine.
It is released under the MIT License, Copyright (c) 2011-2020 Angelo Theodorou.
For additional information: https://ncine.github.io
Information
Dependencies
- GLEW
- GLFW 3.x
- SDL 2
- libpng
- libwebp
- OpenAL-soft
- libogg, libvorbis, libvorbisfile
- Lua 5.4
- Dear ImGui
- Nuklear
Supported Platforms and Compilers
- Windows (MSVC, MinGW-w64 on MSYS2)
- macOS (Clang)
- Linux (GCC, Clang)
- Android (GCC, Clang)
- Emscripten
Development Tools
- git
- CMake
- Qt Creator
- Doxygen with GraphViz
- Valgrind
- Cppcheck
- clang-format
- Google Test and Gcovr
- Tracy frame profiler
- Google Benchmark
- RenderDoc graphics debugger
Development
Conventions
Coding Conventions
- Indent with tabs (4 spaces) but use spaces for continuation line alignment
- Allman brackets
- No brackets around one line conditional statements
- Padding space after parenthesis headers (
if
,do
,while
,for
,switch
) - Align pointer and reference operator to the variable or function name
inline
keyword always beforevirtual
andstatic
- Mark an override method with the
override
specifier and removevirtual
- Access specifiers order:
public
,protected
,private
- One half indent for access specifiers (2 spaces)
- Declarations order: typedefs and enums, data members, constructors, destructors, methods
- Friends defined in the private section of a class, after everything else
- One space padding around operators
- Use of the
explicit
keyword all the times it makes sense
Naming Conventions
- Pascal case for classes, enumerations, typedefs and constants
- Camel case for variables, functions and parameters
- All upper case for enumerators in an enumeration
Documenting Conventions
- Put Doxygen brief descriptions in header files and additional documentation in implementation ones
- Use Qt style for Doxygen detailed descriptions (
/*! */
) and end them with a period
*Note that all licence references and agreements mentioned in the nCine README section above
are relevant to that project's source code only.