Creating an Optimized Engine for 3D Visualization of Large Reservoir Models Using OpenGL: GPU Rendering, System Architecture, and Petroleum Engineering Applications

Authors

  • Yang Yuchen Department of Computer Science, Faculty of Information Technology, Al-Farabi Kazakh National University, Almaty, Kazakhstan
  • Olzhas Turar Department of Computer Science, Faculty of Information Technology, Al-Farabi Kazakh National University, Almaty, Kazakhstan

Keywords:

GRDECL, Corner-Point Grid, Geometry Shader, OpenGL, Reservoir Visualization, GPU Rendering, Fault Detection, Stratigraphic Analysis, Norne Oilfield, System Architecture, Iterative Development

Abstract

Three-dimensional visualization of subsurface reservoir models described in the GRDECL corner-point grid (CPG) format is a fundamental requirement in petroleum engineering for field development planning, well trajectory design, and production optimisation. This paper presents a comprehensive GPU-accelerated rendering system that correctly reconstructs CPG hexahedra in real time using the OpenGL 3.3 Geometry Shader stage together with Texture Buffer Objects (TBOs). The system evolved through five architectural stages—from a point-cloud prototype to a multi-pipeline fault-aware architecture—each addressing concrete limitations identified in the preceding stage.

The final system comprises nine loosely coupled modules connected by three independent shader pipelines. Each active cell is submitted as a single point primitive; the geometry shader fetches eight corner coordinates from the TBO, performs dual-axis cross-section slicing (X and Z), applies real-time vertical exaggeration with correctly recomputed normals, and emits six quad faces as triangle strips with counter-clockwise winding order for back-face culling. The system provides automatic fault detection based on inter-layer depth discontinuity analysis, well trajectory overlay, and a screen-space colour legend.

The approach is validated on the Norne ATW2013 benchmark dataset from the Norwegian Sea (46 × 112 × 22 cells, ~113,000 active cells). The system achieves 45–60 FPS on a mid-range mobile GPU, uses approximately 12 MB of GPU memory, and is implemented in ~700 lines of Python/GLSL using PyOpenGL and GLFW with only three runtime dependencies.

Published

2026-04-20

How to Cite

Yang Yuchen, & Olzhas Turar. (2026). Creating an Optimized Engine for 3D Visualization of Large Reservoir Models Using OpenGL: GPU Rendering, System Architecture, and Petroleum Engineering Applications. Modern Scientific Technology, (13). Retrieved from https://ojs.publisher.agency/index.php/MSC/article/view/8330

Issue

Section

Technical science