https://github.com/stanislawfortonski/3D-Engine-OpenGL-4
3D Graphics Engine For Games | C++ OpenGL 4.1
https://github.com/stanislawfortonski/3D-Engine-OpenGL-4
3d 3d-engine 3d-game-engine 3d-graphics 3d-printer 3d-printing engine engine3d engineering fragment-shader game-engine geometry-processing geometry-shader graphics-engine height-map normal-mapping terrain-generator tesselation tesselation-shader vertex-shaders
Last synced: about 2 months ago
JSON representation
3D Graphics Engine For Games | C++ OpenGL 4.1
- Host: GitHub
- URL: https://github.com/stanislawfortonski/3D-Engine-OpenGL-4
- Owner: stanislawfortonski
- License: mit
- Created: 2020-03-06T14:25:52.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-01-31T15:16:36.000Z (over 4 years ago)
- Last Synced: 2025-04-05T14:34:53.430Z (2 months ago)
- Topics: 3d, 3d-engine, 3d-game-engine, 3d-graphics, 3d-printer, 3d-printing, engine, engine3d, engineering, fragment-shader, game-engine, geometry-processing, geometry-shader, graphics-engine, height-map, normal-mapping, terrain-generator, tesselation, tesselation-shader, vertex-shaders
- Language: C++
- Homepage:
- Size: 228 KB
- Stars: 30
- Watchers: 5
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Support: support/Font.cpp
Awesome Lists containing this project
README
# 3D-Engine-OpenGL-4
### 3D Game Engine (made with API OpenGL 4.1) for C++### Engine features:
- Blinn-Phong lighting
- Bloom/HDR effect
- Omnidirectional shadows
- Perspective/orthogonal camera
- Multisampling
- Particles generator
- Terrain generator based on 2D heightmap and tessellation
- Terrain LOD - level of detail
- Water with reflection and refraction
- Heightmap 2D/3D generator based on Perlin noise and random noise
- Heightmap to normalmap converter based on Sobel operator
- Input/output based on GLFW
- Model loader based on Assimp
- Skeletal animations
- Font rendering based on FreeType#### Engine delivers simple shaders that support features of this engine.
### Engine structure:
```
/ - base engine class, config, include
base/ - shader and program compilators, texture class
buffer/ - buffers e.g framebuffers
camera/ - classes of cameras
renderable/ - everything what you can render
scene/ - scene class
support/ - supporting files
texture-generator/ - noise, heightmap, normalmap generators
window/ - window class
shaders/ - proposed shaders
```
### Requirements:
- Graphics card that support OpenGL 4.1
- GLEW library - http://glew.sourceforge.net
- GLFW library - https://www.glfw.org
- GLM library - https://glm.g-truc.net
- Assimp library - https://github.com/assimp/assimp
- FreeType library - https://www.freetype.org
- STB_IMAGE library - https://github.com/nothings/stb
- nlohmann/json - https://github.com/nlohmann/json#### Example applications that use this graphics engine: [Procedural Terrain Generator](https://github.com/stanfortonski/Procedural-Terrain-Generator-OpenGL) & [Stickman 3D](https://github.com/stanfortonski/StickMan-3D)