Ocean Water Shader with Perlin Noise - WiP

It’s a simple test to render ocean surface.
I’m not complete it (have no time) So i hope everyone can help.
of course, you can use it for any project

some screenshoot:

Video :

Source code in :
facebookbanca.googlecode.com/sv … der.tar.gz

Someone can upgrade it like
:mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen: :mrgreen:

Here is a good step-by-step tutorial from nvidia, how to make a ocean shader with perlin noise and the phillips spectrum … does not look bad at all … ever wanted to implement it but had no time …


I saw it before but it not perlin noise. It is slide TTF algorithm and it required nvidia card for cuda compute. It will not run on and or other type.

I tried myself on a ocean shader too, here’s the result: prntscr.com/13q0uv … don’t get it to look like nvivdia’s … :frowning:

Nvidia has a source demo… But it’s write by C++ / DirectX with CUDA. And anything relative with cuda or Nvidia, It hard to work with AMD. I can’t running it, and …

I am not good as shader programming, but i think we can transform FFT to shader and do it without CUDA compute. But as you see, The function of FFT is too complex with me. I regret about don’t study hard at math.

@on your demo, i see too much reflection. without it, that good sample. And if you try to expand size of height map to 64 x 64 (like crysis). I think will have much better result

So all these things would be no problem, the problem is the DirectX11 tesselation. I have the source code here, and when I run the demo, you see what I mean:


There is a huge vertex count. As panda3d does not support DX11, the tesselation would have to be implemented … I think about something like GeoMipTerrain but more efficient …

Edit: Okay, I read some more Articles about computing manually FFT, this won’t be easy, too …

Tessellation? Like this? panda3d.org/manual/index.php … Tesselator

Yeah, but I don’t think its fast enough to compute that tesselation … the water would have to have a heightmap of 8*8K, to get to this vertice resolution … I will try it …

TobiasSpringer !! I think we should working together for this section. I know I am too busy in this time (my thesis about Panda3D have done in early July) but i think after that, you, me and my Friend can work together. I think a group will do more than a person.

Ps. If you agree. My Skype is thien0291 and facebook facebook.com/vngoogle

agreed :slight_smile: sent you a request on skype …