Creating an Optimized Engine for 3D Visualization of Large Reservoir Models Using OpenGL: GPU Rendering, System Architecture, and Petroleum Engineering Applications
Keywords:
GRDECL, Corner-Point Grid, Geometry Shader, OpenGL, Reservoir Visualization, GPU Rendering, Fault Detection, Stratigraphic Analysis, Norne Oilfield, System Architecture, Iterative DevelopmentAbstract
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
How to Cite
Issue
Section
License

This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.