## Fast Rendering Algorithm of Underwater## Optical Effect(2009) |

*Abstract*
Underwater optical effect simulation is an important component of simulating underwater scene. This paper will present a fast rendering algorithm of underwater optical effect based on Iwasak′s method. It simplifies the illumination volume to reduce the light calculation and uses the Gouraud shading method to render each side of every illumination volume. The experiments show that it can reduce the CPU calculation time and increase the rendering speed. The rendering results get a higher frame-rate with better quality

**Existing System :**

Simulating natural scene is one of the most important research areas in computer graphics. Rendering the underwater optical effect is one of the essential components, such as rendering of underwater beam of light, caustics and the shadow of creatures beneath water. Up to now, many methods have been proposed to illuminate the optical effect of underwater scene after the beam tracing method is proposed in 1980s. Szirmay-kalos L. et al. proposed an approximate ray-tracing method based on the GPU. In 1994 Nishita and Nakamae presented a method that used accumulation buffer and illumination volumes to render caustics, beam of light, and the color of water. The advantage of this method is that it can deal with free-form surfaces. Because it has to calculate the light intensity of each illumination volumes at each scan plane, so it will take a lot of time to produce the image. Afterward, Iwasaki and Dobashi developed Nishita and Nakamae′s method. They use illumination volumes to simulate underwater beam of light and using beam of light to render caustics. It divides the illumination volume to sub volumes, and divides every sub volumes to three tetrahedrons. Besides, it uses graphics hardware to accelerate rendering. Using this method can get better rendering effect. However, this method requires a lot of calculation time of lighting and vertex, so it takes a large amount time of CPU. In 1998, Jensen and Christensen used photon mapping to render caustics and beam of light. It can display the interactive in the complicated scenes, but this method does not be fit for real-time rendering. Tin-Tin Yu et al. gave a good application based on photon mapping. In 2001 Briere and Poulin used hierarchical structure over the refracting objects to render caustics. Christoffer Sandberg presented a method for rendering caustics using caustic-volumes that is more dynamic than Pre-generated caustic textures and scales better than the volume-based method presented by Iwasaki et al. In 2005, Iwasaki proposed a method for the quick rendering of caustics formed by refracted and converged light through transparent objects. In 2007, Yong hao Yue proposed a fast global illumination solution for interactive lighting design. Using their method, light sources and the viewpoint are movable, and the characteristics of materials can be modified during rendering.

**Proposed System:**

This paper will present a simple fast method based on Iwasaki’s method. In order to get higher frame-rate with better quality and reduce the calculation of CPU, it simplifies the illumination volumes and uses the Gouraud shading method to render each side of every illumination volume. The caustics are simulated by using Gouraud shading,color blending and Z-buffer. The shading mapping is used to render shadows beneath the creatures in the water. It also uses graphics hardware to increase the rendering speed.

This paper uses height field function to simulate the dynamic water surface. First, this paper uses Perlin’s function to produce the height field, and then uses height field function to simulate water surface.

**Modules:**

*Calculation of illumination volume position:*the refraction complies with the law of Snell: n1 sin(θ1 )= 2 n sin(θ 2 ) (1.2) n1and 2 n are the refractive index of two mediums, θ1 is the angle of incidence ,θ 2 is the angle of refraction. line S is parallel to the sea level. Line L is vertical to S, and intersects seabed at point B,

*I*?? is the incident ray,

*r*?? is the refraction ray,

*n*?? is the normal of point O. θ is the angle between

*I*?? and the line S, α is the incidence angle, β is the refraction angle, χ is the angle between the line L and the refraction ray. H is the vertical height between the point O and the seabed. Supposing the coordinates of O is (x, y, z).

*Light intensity calculation of illumination volume:*
Assuming that reflection took place in the sea almost close to the mirror reflection, so this paper supposes that severalmirrors compose of the whole sea surface. Because the refractive angle complies with the law of Snell, the equation can simplify the calculation of the light intensity from an arbitrary point p1 on the water face to the viewpoint D.

*Drawing of light beam and Caustics:*
After calculating the intensity of every illumination volume’s vertexes, Gouraud method is uesd to simulate every illumination volume. It can reduce the calculation time. Supposing A is an arbitrary illumination volume, the rendering steps of it is as follows:

1. Calculate the light intensity of A’s vertexes.

2. Use linear interpolation for every line composed of A’s planes. Then get the light intensity of every point on A’s planes.

3. Use the Gouraud method to render each plane of A.

*Drawing of shadow:*
One of the most difficult issues is the produce of high-quality shadow. Shadow is one of the most important elements to produce the realistic graph. There are two popular methods to produce dynamic shadow in computer graphics. Stencil shading and shading mapping. The advantage of stencil shading is getting support of most GPU, and is not relative to the type of light source. If using this method, it will get high-quality shadow, but this method greatly relies on CPU. In order to implement real-time shadow rendering and speed up the speed of simulating underwater scene, this paperuses the shading mapping method to produce shading

**Software Requirments:**

Language : Java, Java3D

Operating System : WinXP

**HardWare Requirements:**

Processor : 1.5Ghz

Ram : 2GB

Harddisk : 40GB

## No comments:

## Post a Comment