src/rcrt/textures/WaterTexture.cpp

Go to the documentation of this file.
00001 #include "WaterTexture.h"
00002 #include "PerlinNoise.h"
00003 
00004 namespace rcrt
00005 {
00006 
00007 WaterTexture::WaterTexture()
00008 {
00009 }
00010 
00011 WaterTexture::~WaterTexture()
00012 {
00013 }
00014 
00015 Vec3D WaterTexture::getBump(const Point2D& p, const float& scale,const Matrix4D& onb) const
00016 {
00017         Point3D p1 = Point3D(p[0]*width,p[1]*width,0.05f * frame);
00018         Point3D p2 = Point3D(p[1]*width,0.05f * frame,p[0]*width);
00019         return (onb *
00020                         Vec3D(intensity * PerlinNoise::turbulence(p1,0.01f,2),
00021                                         intensity * PerlinNoise::turbulence(p2,0.01f,2),
00022                                         1)).normalize();
00023 }
00024 
00025 RGBAColor WaterTexture::getColor(const Point2D& p) const
00026 {
00027         return RGBAColor(1,1,1,1);
00028 }
00029 
00030 void WaterTexture::setWidth(const float& w)
00031 {
00032         width = w;
00033 }
00034 
00035 void WaterTexture::setIntensity(const float& i)
00036 {
00037         intensity = i;
00038 }
00039 
00040 }

Generated on Thu Jan 31 19:26:20 2008 for RenderingCompetitionRayTracer by  doxygen 1.5.3