FarCry-like water and cube map problems

hello people!
I am making water for my 3dengine. i want to make something similar to farcry water.
i make the algorithm for calculating the vertices of the water. and now I want to make the
reflection stuff…
How I can do that? i think dynamic cube mapping is very good solution. if you think there is
any better than this tell me. the problem is… at which place I will create the cube map
textures every frame? it will be related to the camera or to something other? What texgen mode
should I use? GL_NORMAL_MAP is not for this I think. Using GL_REFLECTION_MAP i get strange
reflection. I used it for testing with a static cube map and the reflection changes is i change
the yaw/pitch of the camera. this is correct for real water. Maybe Use glTexCoord3f() instead
of TexGen modes? Any Ideas?
thanks in Advance!

You wouldn’t use a dynamic cube map - it doesn’t make sense.
What you want to do is render the normal scene into a texture (for refraction), then render the reflected scene into a texture, then simply peturb the texture coordinates by values from your water simulation (per vertex or per pixel), and interpolate between the reflected and refracted textures depending on view-to-vertex angle and a fresnel term.
I think that’s clear.

Clear, indeed.

If you want to have the same water that in Far Cry, you’ll have to forget about those automatic texcoo generation and use shaders, that will let you manage all those effects a lot more easily.


to render to the reflection texture, where should the camera be placed? should it be placed under the water at the same distance it was above it?