supernovaengine / supernova

Game engine for 2D and 3D projects with entity component system (ECS) and data-oriented design

Home Page:http://www.supernovaengine.org

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Logo

Entity component system (ECS) and data-oriented design engine using object oriented for API.

Supernova is a free and open-source, cross-platform game engine for creating 2D and 3D projects with Lua or C++. It is lightweight and promotes the simplest way to use the best performance of a data-oriented design.

Screenshot1

Live samples: https://samples.supernovaengine.org/

Supports

  • Web (with Emscripten - OpenGL ES 2.0, OpenGL ES 3.0)
  • Android (OpenGL ES)
  • iOS (Metal, OpenGL ES)
  • macOS (Metal, OpenGL)
  • Linux (OpenGL)
  • Windows (DirectX, OpenGL)

Features

  • 2D and 3D scenes
  • GLTF and OBJ models load
  • Model skin and morph targets
  • PBR shaders
  • Lights
  • Dynamic shadows
  • Particle system
  • Animations
  • Sprites
  • Fog and sky
  • UI
  • Terrain LOD
  • Textures and shaders pool
  • 3D audio
  • Cross-platform persistence system
  • Multithreading support
  • 2D and 3D physics

Upcoming features

  • Instancing
  • More UI components
  • Water

Samples

For all samples source code:

https://github.com/supernovaengine/supernova-samples

Documentation

(in development)

For tutorials and all engine information:

https://docs.supernovaengine.org/

Building

Third party libraries

License

Licensed under MIT license, you can use freely for whatever you want, including commercial projects.

About

Game engine for 2D and 3D projects with entity component system (ECS) and data-oriented design

http://www.supernovaengine.org

License:MIT License


Languages

Language:C++ 59.9%Language:C 34.8%Language:Objective-C 4.5%Language:CMake 0.4%Language:GLSL 0.2%Language:Objective-C++ 0.1%Language:Python 0.1%Language:Java 0.1%Language:Makefile 0.0%Language:Lua 0.0%