Jump to content
  • Advertisement
Sign in to follow this  
Geometrian

OpenGL Water

This topic is 3031 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, So, I'm representing (ocean) water as a plane, with per-pixel lighting via normalmap. This normal also is used to perturb a simple reflection constructed with an inverse transform. My problem is that there is also land in the scene. I want the interaction between land and water to not be terribly unrealistic, and also not terribly slow. I had the idea of making the water closer to land more transparent, and then darkening the landscape below water. I was wondering if instead it would be somehow possible to render fog only below the water's surface? This would be a much better approach. I've basically never used OpenGL fog before, so I'm wondering if this would even be possible. Ideas? Thanks, -G

Share this post


Link to post
Share on other sites
Advertisement
You should look at a fresnel effect to moderate the translucency based on viewing angle - that's always a big win and is a couple of extra shader lines.

If you want to do the transparency thinning out with depth, then you can read a depth map easily if you're using a shadowmapping technique already - the floor will be in it but not the water, so you can do a rudimentary calculation right there. Of course the angle's off, but if you don't have a "Navy SEAL Cam" then it'd probably be good enough.

Share this post


Link to post
Share on other sites
Quote:
You should look at a fresnel effect to moderate the translucency based on viewing angle - that's always a big win and is a couple of extra shader lines.
Actually sounds like a fairly good idea. I had thought of this, but I wasn't going to do it. Now that I think about it a bit more, this could look great with the normalmap also affecting transparency.
Quote:
If you want to do the transparency thinning out with depth, then you can read a depth map easily if you're using a shadowmapping technique already - the floor will be in it but not the water, so you can do a rudimentary calculation right there. Of course the angle's off, but if you don't have a "Navy SEAL Cam" then it'd probably be good enough.
Actually, I'm not doing shadowmapping yet (and not on the whole landscape at the same time) but the land is rendered via heightmap. This was actually my previous approach, as I meant with:
Quote:
darkening the landscape below water
I actually colored the landscape below the water to the water's average color. This didn't, unfortunately, have the desired effect.

Fog can't be specified for certain areas in an OpenGL scene?

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!