Screenshot Description of the method Compiling / running the program Related publications Documentation

Realistic real-time rain rendering

Screenshot

screenshot of the method

A screenshot generated with this method, using 16000 regular raindrops, with light illumination.


Description of the method

This module proposes a full framework to add rain or snow to real-time applications.
It includes:

Compiling and running the program.

This program was created using the great
OGRE rendering engine, which must be installed (version 1.2) on your sytem if you wish to run the program. By now, it has only been tested under linux, but should work under windows systems thanks to the multi-platform character of Ogre.

To execute it, you will need a SHADER MODEL 3 capable card, such as an nVidia Geforce 6, and Cg compiler installed.

You must first have a look to CommonRain.h to choose the type of rendering you wish (just uncomment the desired settings).

The particle count can be modified in RainCloseDropsParticles.cpp, by modifying the value of the #define BILLBOARD_POS_TEX_SIZE. Particle count is the square of this value.

This code is given as a running complete program, but shouldn't require too much modifications to be adapted to the needs of another program.

In the proposed implementation, the following key bindings are handled :
You can access the Doxygen-made documentation for this program !

Publications

Full details about the methods used is given in the following paper :
@Article{RJG06,
  author       = "Rousseau, Pierre and Jolivet, Vincent and Ghazanfarpour, Djamchid",
  title        = "Realistic real-time rain rendering",
  journal      = "Computers \& Graphics",
  number       = "4",
  volume       = "30",
  year         = "2006",
  note         = "special issue on Natural Phenomena Simulation",
  url          = "http://www.msi.unilim.fr/basilic/Publications/2006/RJG06"
}




Pierre Rousseau
University of LIMOGES
rousseau@msi.unilim.fr
17th of may, 2006