OpenGL Engine - Showcase 4: Controlling Vertex Level-Of-Detail @s0lly
OpenGL Engine - Showcase 4: Controlling Vertex Level-Of-Detail  @s0lly
Uploaded June 2020 | Updated September 2026, 2 hours ago
This series of videos will demonstrate my progress in making a Game Engine in OpenGL.


This fourth video showcases the use of level-of-detail controls to generate varying levels of resolution for instanced terrain in the Vertex Shader. This scene uses about 20% less GPU power compared to the last scene, for very similar results.


The levels of detail can be seen based on the colour shading on the terrain - the different bands represent 4x less level of detail than the band closer to the screen.


One trick that needs to be employed here is to "shift" vertices on the border of tiles that have different levels of resolution, as otherwise gaps will form in the generated surface.


The Vertex Shader used in this video can be found here: github.com/s0lly/TerrainGenerationOpenGLVertexShader



As before, this engine does not use any libraries; I'm trying to learn everything by hand here (perhaps a slightly ridiculous endeavour).


Learning Sources:

- Real-Time Rendering, 4th Edition: fantastic book (so far, I'm still on chapter 7!), brilliant for theory, much easier to get into than its intimidating look would suggest

- learnopengl.com : Really helpful resource to understand concepts and related code, a little tricky if you don't use the same libraries as they do

- OpenGL Programming Guide (the Red Book), 9th Edition

- khronos.org/registry/OpenGL-Refpages/gl4 : massive use of the OpenGL reference site, of course!

- these great Moon images were obtained from NASA's Scientific Visualization Studio : svs.gsfc.nasa.gov/4720 using the Lunar Reconnaissance Orbiter camera and laser altimeter instruments





Other Social Media stuffs:

twitch.tv/s0llygaming
twitter.com/s0lly
instagram.com/s0lly.gaming
github.com/s0lly
patreon.com/s0lly
OpenGL Engine - Showcase 4: Controlling Vertex Level-Of-DetailGame Engine 19: Lens FlareProject Overlay 04: MazesC++ FPS Raycaster Engine (v0.3) - Perspective Issue Solved!First Games in C++: Dungeons and Flagons (v0.2) - Map Design + Collision Detections0llys [CELL]IVIZATION: Trailer - Game in ExcelFirst Games in C++ - PacMan (Update 2)First Games in C++: Krazy Karts (v0.77) - Music, Sound, Start / End Race Scenes, Improved GUIFirst Games in C++: Dungeons and Flagons (v0.6) - OLC 2018 Game Jam Submission!KSP: Orbit in 2 Launches on Career Hard ModeGame Engine 15: PlanetsClick-Through Windows feat. Bevy [Rust]
s0lly |

OpenGL Engine - Showcase 4: Controlling Vertex Level-Of-Detail

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER