43 research outputs found
Techniques for an image space occlusion culling engine
In this work we present several techniques applied to implement an Image Space Software Occlusion Culling Engine to increase the speed of rendering general dynamic scenes with high depth complexity. This conservative culling method is based on a tiled Occlusion Map that is updated only when needed, deferring and even avoiding the expensive per pixel rasterization process. We show how the tiles become a useful way to increase the speed of visibility tests. Finally we describe how different parts of the engine were parallelized using OpenMP directives and SIMD instructions.Eje: Workshop Computación gráfica, imágenes y visualización (WCGIV)Red de Universidades con Carreras en Informática (RedUNCI
Time and Space Coherent Occlusion Culling for Tileable Extended 3D Worlds
International audienceIn order to interactively render large virtual worlds, the amount of 3D geometry passed to the graphics hardware must be kept to a minimum. Typical solutions to this problem include the use of potentially visible sets and occlusion culling, however, these solutions do not scale well, in time nor in memory, with the size of a virtual world. We propose a fast and inexpensive variant of occlusion culling tailored to a simple tiling scheme that improves scalability while maintaining very high performance. Tile visibilities are evaluated with hardwareaccelerated occlusion queries, and in-tile rendering is rapidly computed using BVH instantiation and any visibility method; we use the CHC++ occlusion culling method for its good general performance. Tiles are instantiated only when tested locally for visibility, thus avoiding the need for a preconstructed global structure for the complete world. Our approach can render large-scale, diversified virtual worlds with complex geometry, such as cities or forests, all at high performance and with a modest memory footprint
Compressed Coverage Masks for Path Rendering on Mobile GPUs
We present an algorithm to accelerate resolution independent curve rendering on mobile GPUs. Recent trends in graphics hardware have created a plethora of compressed texture formats specific to GPU manufacturers. However, certain implementations of platform independent path rendering require generating grayscale textures on the CPU containing the extent that each pixel is covered by the curve. In this paper, we demonstrate that generating a compressed grayscale texture prior to uploading it to the GPU creates faster rendering times in addition to the memory savings. We implement a real-time compression technique for coverage masks and compare our results against the GPU-based implementation of the highly optimized Skia rendering library. We also analyze the worst case properties of our compression algorithms. We observe up to a 2 × speed improvement over the existing GPU-based methods in addition to up to a 9:1 improvement in GPU memory gains. We demonstrate the performance on multiple mobile platforms
Implementing software occlusion culling for real-time applications
The visualization of complex virtual scenes can be significantly accelerated by applying Occlusion Culling. In this work we introduce a variant of the Hierarchical Occlusion Map method to be used in Real-Time applications. To avoid using real objects geometry we generate specialized conservative Occluders based on Axis Aligned Bounding Boxes which are converted into coplanar quads and then rasterized in CPU using a downscaled Depth Buffer. We implement this method in a 3D scene using a software occlusion map rasterizer module specifically optimized to rasterize Occluder quads into a Depth Buffer. We demonstrate that this approach effectively increases the number of occluded objects without generating significant runtime overhead.Eje: Workshop Computación gráfica, imágenes y visualización (WCGIV)Red de Universidades con Carreras en Informática (RedUNCI
Realidad virtual para el mantenimiento de motores de avión
Exponemos un sistema de realidad virtual para la simulación de procesos de mantenimiento en aeronáutica que se ha desarrollado en el marco del Proyecto REVIMA. Hemos desarrollado un hardware nuevo (háptico) y resuelto diversos problemas al elaborar el software que integra el sistema. El nuevo háptico se emplea para realizar el seguimiento del movimiento de las manos, y al mismo tiempo devuelve una fuerza que provoca la sensación de estar trabajando con una maqueta fÃsica. Los principales módulos de software son: el módulo de generación de imágenes, el módulo de colisión y el módulo de control. La integración del sistema está basada en dos ordenadores conectados mediante una LAN que comparten diferentes tareas y datos.El módulo de visualización ha sido implementado empleando sistemas gráficos de bajo coste y mediante un estudio exhaustivo se ha logrado una frecuencia válida para las operaciones de simulación. Los modelos consisten en más de dos mil elementos diferentes y emplean alrededor de dos millones de polÃgonos para describir su geometrÃa.Este trabajo presenta una breve descripción del conjunto y desarrolla de modo especÃfico las técnicas de visualización que se han desarrollado
Vertex discard occlusion culling
Performing visibility determination in densely occluded environments is essential to avoid rendering unnecessary objects and achieve high frame rates. In this work we present an implementation of the image space Occlusion Culling algorithm done completely in GPU, avoiding the latency introduced by returning the visibility results to the CPU. Our algorithm utilizes the GPU rendering power to construct the Occlusion Map and then performs the image space visibility test by splitting the region of the screen space occludees into parallelizable blocks. Our implementation is especially applicable for lowend graphics hardware and the visibility results are accessible by GPU shaders.
It can be applied with excellent results in scenes where pixel shaders alter the depth values of the pixels, without interfering with hardware Early-Z culling methods. We demonstrate the benefits and show the results of this method in real-time densely occluded scenes.WCGIV - XI Workshop computación gráfica, imágenes y visualizaciónRed de Universidades con Carreras en Informática (RedUNCI
Techniques for an image space occlusion culling engine
In this work we present several techniques applied to implement an Image Space Software Occlusion Culling Engine to increase the speed of rendering general dynamic scenes with high depth complexity. This conservative culling method is based on a tiled Occlusion Map that is updated only when needed, deferring and even avoiding the expensive per pixel rasterization process. We show how the tiles become a useful way to increase the speed of visibility tests. Finally we describe how different parts of the engine were parallelized using OpenMP directives and SIMD instructions.Eje: Workshop Computación gráfica, imágenes y visualización (WCGIV)Red de Universidades con Carreras en Informática (RedUNCI
Conservative From-Point Visibility.
Visibility determination has been an important part of the computer graphics
research for several decades. First studies of the visibility were hidden line
removal algorithms, and later hidden surface removal algorithms. Today’s
visibility determination is mainly concentrated on conservative, object level
visibility determination techniques. Conservative methods are used to
accelerate the rendering process when some exact visibility determination
algorithm is present. The Z-buffer is a typical exact visibility determination
algorithm. The Z-buffer algorithm is implemented in practically every modern
graphics chip.
This thesis concentrates on a subset of conservative visibility
determination techniques. These techniques are sometimes called from-point
visibility algorithms. They attempt to estimate a set of visible objects as seen
from the current viewpoint. These techniques are typically used with real-time
graphics applications such as games and virtual environments. Concentration is
on the view frustum culling and occlusion culling. View frustum culling
discards objects that are outside of the viewable volume. Occlusion culling
algorithms try to identify objects that are not visible because they are behind
some other objects. Also spatial data structures behind the efficient
implementations of view frustum culling and occlusion culling are reviewed.
Spatial data structure techniques like maintaining of dynamic scenes and
exploiting spatial and temporal coherences are reviewed.1. Introduction.............................................................................................................1 2. Visibility Problem...................................................................................................3 3. Scene Organization...............................................................................................10 3.1. Bounding Volume Hierarchies and Scene Graphs.................................10 3.2. Spatial Data Structures ...............................................................................13 3.3. Regular Grids...............................................................................................14 3.4. Quadtrees and Octrees ...............................................................................15 3.5. KD-Trees.......................................................................................................20 3.6. BSP-Trees......................................................................................................23 3.7. Exploiting Spatial and Temporal Coherence ..........................................27 3.8. Dynamic Scenes...........................................................................................30 3.9. Summary ......................................................................................................34 4. View Frustum Culling .........................................................................................35 4.1. View Frustum Construction ......................................................................36 4.2. View Frustum Test......................................................................................37 4.3. Hierarchical View Frustum Culling .........................................................41 4.4. Optimizations ..............................................................................................42 4.5. Summary ......................................................................................................44 5. Occlusion Culling .................................................................................................45 5.1. Fundamental Concepts...............................................................................45 5.2. Occluder Selection.......................................................................................46 5.3. Hardware Occlusion Queries....................................................................49 5.4. Object-Space Methods ................................................................................50 5.5. Image-Space Methods ................................................................................55 5.6. Summary ......................................................................................................64 6. Conclusion.............................................................................................................66 References .................................................................................................................... 7
An Application of Tetrahedrisation to From-Point Visibility
We propose a method for tetrahedrizing a polyhedral volume containing polyhedral holes. We use the resulting tetrahedrization to produce from-point visibility algorithms that can be either exact, conservative or aggressive. We also discuss the applications of such from-point and from-region visibility techniques, including their use in lighting and in simulating vision of artificial intelligence agents
Erosion Based Visibility Preprocessing
International audienceThis paper presents a novel method for computing visibility in 2.5D environments. It is based on a novel theoretical result: the visibility from a region can be conservatively estimated by computing the visibility from a point using appropriately "shrunk" occluders and occludees. We show how approximated but yet conservative shrunk objects can efficiently be computed in a urban environment. The application of this theorem provides a tighter potentially visible set (PVS) than the original method it is built on. Finally, theoretical implications of the theorem are discussed, and we believe it can open new research directions