proland::DrawOceanTask Class Reference
[ocean]

An AbstractTask to draw a flat or spherical ocean. More...

#include <DrawOceanTask.h>

List of all members.

Public Member Functions

 DrawOceanTask (float radius, float zmin, ptr< Module > brdfShader)
 Creates a new DrawOceanTask.
virtual ~DrawOceanTask ()
 Deletes this DrawOceanTask.

Protected Member Functions

 DrawOceanTask ()
 Creates an uninitialized DrawOceanTask.
void init (float radius, float zmin, ptr< Module > brdfShader)
 Initializes this DrawOceanTask.

Private Attributes

float radius
 The radius of the planet for a spherical ocean, or 0 for a flat ocean.
float zmin
 The maximum altitude at which the ocean must be displayed.
int nbWaves
 Number of wave trains used to synthesize the ocean surface.
float lambdaMin
 Minimum wavelength of the waves.
float lambdaMax
 Maximum wavelength of the waves.
float heightMax
 Parameter to color the height of waves.
vec3f seaColor
 Color of the seabed.
float sigmaXsq
 Variance of the x slope over the sea surface.
float sigmaYsq
 Variance of the y slope over the sea surface.
float meanHeight
 Average height of the sea surface.
float heightVariance
 Variance of the sea surface height.
float amplitudeMax
 Maximum amplitude between crests and throughs.
int resolution
 Number of pixels per cell to use for the screen space grid used to display the ocean surface.
int screenWidth
 Current width of the viewport, in pixels.
int screenHeight
 Current height of the viewport, in pixels.
ptr< Mesh< vec2f, unsigned int > > screenGrid
 The mesh used to display the ocean surface.
ptr< Module > brdfShader
 The Shader used to render the ocean surface.

Detailed Description

An AbstractTask to draw a flat or spherical ocean.

Authors:
Eric Bruneton, Antoine Begault, Guillaume Piolat

Constructor & Destructor Documentation

proland::DrawOceanTask::DrawOceanTask ( float  radius,
float  zmin,
ptr< Module >  brdfShader 
)

Creates a new DrawOceanTask.

Parameters:
radius the radius of the planet for a spherical ocean, or 0 for a flat ocean.
zmin the maximum altitude at which the ocean must be displayed.
brdfShader the Shader used to render the ocean surface.
virtual proland::DrawOceanTask::~DrawOceanTask (  )  [virtual]

Deletes this DrawOceanTask.

proland::DrawOceanTask::DrawOceanTask (  )  [protected]

Creates an uninitialized DrawOceanTask.


Member Function Documentation

void proland::DrawOceanTask::init ( float  radius,
float  zmin,
ptr< Module >  brdfShader 
) [protected]

Initializes this DrawOceanTask.

Parameters:
radius the radius of the planet for a spherical ocean, or 0 for a flat ocean.
zmin the maximum altitude at which the ocean must be displayed.
brdfShader the Shader used to display the ocean surface.

Member Data Documentation

Maximum amplitude between crests and throughs.

ptr<Module> proland::DrawOceanTask::brdfShader [private]

The Shader used to render the ocean surface.

Parameter to color the height of waves.

Variance of the sea surface height.

Maximum wavelength of the waves.

Minimum wavelength of the waves.

Average height of the sea surface.

Number of wave trains used to synthesize the ocean surface.

The radius of the planet for a spherical ocean, or 0 for a flat ocean.

Number of pixels per cell to use for the screen space grid used to display the ocean surface.

ptr< Mesh<vec2f, unsigned int> > proland::DrawOceanTask::screenGrid [private]

The mesh used to display the ocean surface.

Current height of the viewport, in pixels.

Current width of the viewport, in pixels.

Color of the seabed.

Variance of the x slope over the sea surface.

Variance of the y slope over the sea surface.

The maximum altitude at which the ocean must be displayed.


Generated on Sat May 12 09:42:24 2012 for proland by  doxygen 1.6.1