Menu

A Simple Water Surface and Rendering -- FAN JIANG,WEN-CHENG

Abstract

The main features of the system are graph effects using CG vertex and feagment shaders.

the system includes:

- Generate the water surface : 2 kind water surfaces. one is ocean, and the other is pool.
- Generating Camera Rays : using for lighting, reflection and Refraction.
- Shapes and Ray-Surface Intersection :
- Intersection: using for lighting, reflection and Refraction.
- Shading: Implement a material that contains di?use, specular, and ambient terms.
- The material parameters should include coefficients that modulate diffuse, specular and ambient reflectance.
- The material should be able to deal with multiple point lights.
- Reflection: Extend your material model to include specular re?ection. You will need to cast rays recursively to follow the re?ected light path.
- Refraction: Add specular refraction to your material. Include Schlick’s approximation for Fresnel reflection.
- Other:
- ogre compositor for special effect.(real work with fragment shader.)
- interactivity with water pool.
- object moves according to ocean wave.(real work with

Authors

Abstract

The main features of the system are graph effects using CG vertex and feagment shaders.

the system includes:

- Generate the water surface : 2 kind water surfaces. one is ocean, and the other is pool.
- Generating Camera Rays : using for lighting, reflection and Refraction.
- Shapes and Ray-Surface Intersection :
- Intersection: using for lighting, reflection and Refraction.
- Shading: Implement a material that contains di?use, specular, and ambient terms.
- The material parameters should include coefficients that modulate diffuse, specular and ambient reflectance.
- The material should be able to deal with multiple point lights.
- Reflection: Extend your material model to include specular re?ection. You will need to cast rays recursively to follow the re?ected light path.
- Refraction: Add specular refraction to your material. Include Schlick’s approximation for Fresnel reflection.
- Other:
- ogre compositor for special effect.(real work with fragment shader.)
- interactivity with water pool.
- object moves according to ocean wave.(real work with

Technical introduction

- Generate the water surface :
- ocean: VS: wave generation with sine and cosine fun.
- Generating Camera Rays: material can auto input envirment variable to VS. then we can compute need vector using for lighting, reflection and Refraction in the FS.
- Shapes and Ray-Surface Intersection :
- Intersection: using for lighting, reflection and Refraction.
- Shading: Implement a material that contains diffuse, specular, and ambient terms(lighting) + reflection and Refraction + noise texture(more real). The cofficient of the envirment can auto input from material. But it's effect is not clear. so, i use static value to set.
- Reflection: using normal and eyevector to compute the real texcel.
- Refraction: using normal and eyevector to compute the real texcel.
- Other:
- ogre compositor for special effect.(real work with fragment shader.) change traditional motion blur effect using red color ratio from center viewpoint.
- interactivity with water pool. one class to simular water action in the ogre code.
- object moves according to ocean wave.(real work with vertex shader.) object using vertex shader that be the same as ocean. but change a little part. all point's new y position according to center of the object.

Video

Copyright © 2019 NTUST CSIE Computer Graphics Lab. All right reserved.