Skip to content

aleksCheh/SimpleRenderEngine

 
 

Repository files navigation

Build Status Codacy Badge

Renderer

The goal of SimpleRenderEngine (sre) is to provide easy way to get started with graphics programming in 2D or 3D without a deep knowledge about the low-level graphics APIs like OpenGL, DirectX and Vulkan.

SimpleRenderEngine currently depends on Simple Direct Layer 2.x (SDL2), SDL2-image, OpenGL Mathematics (GLM), and OpenGL 3.3 (or higher), Dear ImGui and runs on both Windows, macOS and Linux.

sre provides:

  • Virtual camera (perspective and orthographic)
  • Texture support (JPEG, PNG, Raw)
  • Cube map support
  • Mesh support (with custom vertex attributes)
  • Shaders (PBR, Blinn-Phong, unlit, alpha blending, and custom shaders)
  • Enforces efficient use of OpenGL
  • Forward rendering
  • Full C++14 support
  • Support for 2D or 3D rendering
  • GUI rendering (using Dear ImGui)
  • Emscripten support (allows cross compiling to HTML 5 + WebGL)
  • VR support (OpenVR)
  • Bump mapping

To keep sre as simple and flexible as possible the following features are not a part of sre:

  • Scenegraphs
  • Deferred rendering
  • Shadowmap support
  • Dynamic particle systems

Examples

Example usage can be found in the examples folder.

More examples/projects can be found on https://github.com/mortennobel/SimpleRenderEngineProject which also contains all/most dependencies for Windows and macOS.

Documentation

API documentation is defined in header files.

Other resources

About

Small C++14 render engine

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • C++ 91.0%
  • C 6.6%
  • Objective-C 1.1%
  • Other 1.3%