Volumetric models can be used for visualizing virtual effects, atmospheric phenomena, medical images or datasets defining volumetric properties. This way of storing three-dimensional data may contain datasets that cannot be defined by geometric primitives or surfaces easily.
The present-day graphics cards offer an efficient way of visualization. The methods of volume rendering are not suitable for the traditional algorithms that works with meshes, so these methods are quite complex.
In this project I chose one of these methods, that allows real-time rendering and the opportunity of interaction during this process, such as navigation over the scene. I am going to show you the implementation of the alghorithm in details using the OpenGL graphics library. The solution highly depends on the abilities of the graphics card.
I introduce you the volumetric models themselves, their visualization methods, and the processes of their creation. There are going to be multiple shading techniques to compare during the implementation of the rendering method. As an example of the models that can be barely defined by surfaces, a smoke volumetric model is going to be used for testing purposes.
Later, the playback of the animated volumetric models are going to be the main subject, like results of simulations or other time-varying datasets. The storage, loading, and updating of the data is part of the discussion.
These rendering methods can be used in medical or scientific visualization, in the world of visual effects, or in computer games. My way of implementation may help one who is determined to create application for volume rendering and uses OpenGL to achive this.