Elsevier

Computers & Graphics

Volume 28, Issue 1, February 2004, Pages 87-92
Computers & Graphics

Occlusion Culling in OpenSG PLUS

https://doi.org/10.1016/j.cag.2003.10.008Get rights and content

Abstract

Very large polygonal models are frequently used in scientific computing, mechanical engineering, or virtual medicine. An effective technique to handle these large models is occlusion culling. Like most large model techniques, occlusion culling trades overhead costs with the rendering costs of the possibly occluded geometry.

In this paper, we present occlusion culling techniques for OpenSG. These techniques utilize OpenGL or OpenGL extensions to determine occlusion information. Techniques utilizing image-space and temporal coherence are used to optimize occlusion query efficiency. Only the standard OpenSG data structures are used and no precomputation is necessary for the presented techniques.

Introduction

Interactive visualization of large datasets in scientific computing, mechanical engineering, or medical imaging is a major objective of many rendering techniques. Most of them reduce the number of polygons, others are using sampling techniques like point sampling or ray tracing. To reduce the number of polygons, level-of-detail [1] or impostor techniques can be used. Occlusion culling is another approach for rapid visualization of large datasets. Here, hidden parts of a scene are detected and excluded from the rendering process. In this paper, we will present occlusion culling techniques implemented in OpenSG PLUS.

OpenSG [2] is a portable scene graph toolkit with a focus on real-time rendering. Within the OpenSG PLUS project, OpenSG is enhanced with large scene support, high-level rendering primitives and high-level shading. The here presented occlusion culling techniques are part of the large scene support.

The remainder of this paper is organized as follows: the next section briefly reviews related toolkits for visualization and occlusion culling techniques. Section 3 describes the occlusion query techniques and their features. Results are shown in Section 4, followed by a conclusion in Section 5.

Section snippets

Previous work

Numerous scene graph programming toolkits are available, e.g. Open Inventor [3], IRIS Performer [4], Cosmo3D [5], but most of them have no support for occlusion culling. One of the scene graph programming toolkits, which does have support for occlusion culling is Jupiter [6], [7]. Jupiter focuses on large model rendering and provides different concepts to manage large amount of data. For occlusion culling, Jupiter uses the HP Occlusion Flag [8].

Many different occlusion culling algorithms are

OpenSG occlusion culling toolkit

The occlusion culling toolkit [13] provides an abstract, object-oriented access to the occlusion culling approaches in OpenSG. All techniques can be combined and used at the same time. Fig. 1 gives an overview, the grey marked techniques are not used in this paper. Due to the very different characteristic of available graphics boards and datasets, the application decides which approaches are used. [13], [14] give a detail overview of the different toolkit techniques. Here, we are focusing on

Results

For all our tests we used the OSGViewer application [14] and applied a camera path to the different models (see Fig. 3) at a frame resolution of 1024×768 with 32-bit color depth. A standard PC with Intel [email protected], NVidia Geforce4Ti 4600 were used for our measurements. In several frames, some parts of the scene outside the current view are culled by the view frustum culler. Two different models were used, a cotton picker and a model of the west side of London. The cotton picker is a large MCAD

Conclusions

In this paper we have presented different occlusion culling techniques for OpenSG. We presented techniques to exploit image space and temporal coherence. Occlusion culling with the HP Occlusion Flag works well, but should be optimized by saving unnecessary queries. With the use of image space and temporal coherence, the number of queries can be significantly reduced, which leads to a high rendering speed-up.

Acknowledgements

This work is supported by the OpenSG PLUS project of the bmb+f in Germany and the center of competence for minimally invasive medicine and technology, Tübingen–Tuttlingen. The cotton picker dataset is a courtesy of Engineering Animation Inc.

We would like to thank Dirk Reiners, Gerrit Voss and Johannes Behr for their help in OpenSG programming.

References (19)

  • D Bartz et al.

    OpenGL-assisted occlusion culling of large polygonal models

    Computers & Graphics

    (1999)
  • Garland M. Multiresolution modeling: survey and future opportunities. Eurographics STAR report 2;...
  • OpenSG-Forum. OpenSG—open source scenegraph. 2000;...
  • J Wernecke

    The inventor mentor

    (1994)
  • Rohlf J, Helman J. IRIS performer: a high performance multiprocessing toolkit for real-time 3D graphics. In:...
  • Inc. SG, Cosmo3D programmer's guide. Technical report,...
  • Hewlett–Packard. Jupiter 1.0 specification. Technical report, Hewlett Packard Company, Corvallis, OR;...
  • Bartz D, Staneker D, Strasser W, Cripe B, Gaskins T, Orton K, Carter M, Johannsen A, Trom J. Jupiter: a toolkit for...
  • Hewlett–Packard. Occlusion test, preliminary. 1997....
There are more references available in the full text version of this article.

Cited by (13)

  • Conservative occlusion culling for urban visualization using a slice-wise data structure

    2007, Graphical Models
    Citation Excerpt :

    Many data structures have been adopted for scene and object representation such as octrees [1], or scene graph hierarchy [2]. Scene graph usage that provides fast traversal algorithms is particularly popular [3,4]. However, these are useful mainly for the definition of object hierarchies.

  • Level of detail parent and dynamic culling scheme for flight simulator

    2018, International Journal of Engineering and Technology(UAE)
  • A novel terrain rending method for visual navigation

    2015, Communications in Computer and Information Science
  • Visual Computing for Medicine: Theory, Algorithms, and Applications: Second Edition

    2014, Visual Computing for Medicine: Theory, Algorithms, and Applications: Second Edition
  • Exploiting temporal coherence in real-time rendering

    2010, ACM SIGGRAPH ASIA 2010 Courses, SA'10
  • Visibility culling for large dynamic crowds within buildings

    2009, Jisuanji Fuzhu Sheji Yu Tuxingxue Xuebao/Journal of Computer-Aided Design and Computer Graphics
View all citing articles on Scopus
View full text