htmlboss / OpenGL-Renderer

Modern OpenGL renderer written in C++17
MIT License
431 stars 29 forks source link
3d-game-engine assimp computer-graphics cpp game-engine glm opengl pbr

MP-APS

A modern OpenGL 3D rendering engine. The idea behind it is to be very simple to use: no weird abstraction layers, janky variable names, or massive 2000+ line classes. It's primarily a playground for me to implement (or at least try :P) different graphics programming techniques. Progress has been slow since I'm juggling full-time Univesity studies, work, and trying to be physically active. Eventually, I want to create a "scene-based" engine, where you can load up some model(s), add some fancy lights, and virtually explore it.

MPAPS

C/C++ CI CodeQL Open Source Love MIT Licence Codacy Badge

forthebadge forthebadge

Compiling

Ubuntu (and similar)

bash install-deps-ubuntu.sh
make
cd build/
./MP-APS

Screenshots

Anti-aliased wireframe rendering: Wireframe rendering

Physically Based Rendering: PBR PBR

Image Based Lighting (IBL): IBL

Bloom: Bloom

(OLD VERSION) CPU-based terrain generation using Perlin noise: Terrain

Features

WIP

Roadmap

Pipe-dreaming

Third Party Code

Research Used