Download

Help with Ocean Material?

I am trying to create an ocean shader that uses normal mapping for ripples and smaller waves and World Displacement for larger waves. This material can be incredibly basic, as I am using it simply as a starting point for creating a more advanced ocean shader. For the time being, I am using a Constant3Vector for diffuse, one normal map on a Panner, and a greyscale map on a panner for World Displacement. Tessellation is set to PNTriangles, Crack Free. Tessellation Multiplier uses a constant of two at the moment. This material seems to work (but not well) when applied to shaped objects, but when I apply it to a plane, that’s when the problems start.

When applied to a flat plane, no matter how high-poly I subdivide it before importing, the result is always the same. The entire plane remains flat. If the World Displacement input is multiplied by a constant of a high enough value, it results in vertical motion, but still the entire plane is affected. I have experimented with many options, multiple displacement maps, and a wide range of values for Tessellation Multiplier and multiplication of World Displacement. The result is invariably the same. Wireframe mode shows tessellation, but no offset apart from a whole-object vertical offset.

I feel that I have probably tried the simple stuff, but there is probably something I am missing, so if you have suggestions such as “Be sure your plane has more than four vertices”, I will not be offended at all.

If there is anyone out there who can provide some insight into this, or better yet a short simple tutorial, I would be immensely grateful.

P.S. Adding insult to injury here, I created this same shader (maps, plane, and all) inside the UDK and it works flawlessly!

For what it’s worth, I’m having the exact same problem. In the attached screenshot I’ve applied the same material to both a cube and a plane mesh, while the cube works as expected, the plane just goes up and down. The only other notable issue is the texture color itself is stretched on the plane, so I suspect it has something to do with the UVs, but I haven’t narrowed it down yet. If you managed to solve this though I’d love to hear what you did

I guess I just needed to talk to myself. Unwrapping the UVs for the plane in blender before exporting it fixed the issue:

Long time between posts I know, but I have been busy trying to figure this out on my own. This was apparently an engine bug, and was fixed with the next update. Everything works fine now, just waiting on the ability to render reflections on translucent surfaces so my water doesn’t look like something that was made in 1998.