Aaaah, nothing beats watching the ocean in a sunrise, right? Well, at least not for me. It has its own special joy. If the sea is still or choppy, if the sun is bright, or dramatic clouds obscure it, it’s just a uniquely calming experience.
So when I found out we were learning how to make a procedural ocean, I was quite intrigued. It’s a tricky thing to render, it’s easy to get it wrong. Having the surface of the water look watery, and not just weird takes some soft of magic, and too often in games you see examples of water done wrong. Is it that those rendering water haven’t spent enough time by the side of the ocean actually watching waves, or is it just THAT difficult?
Well, I now have a little more insight in what exactly makes oceans difficult. You see, we spent a few hours with one of our tutors making an ocean from scratch in 3ds Max. One aspect is the trick of actually making the ocean procedurally, or at least getting it to loop nicely. At least for what I am likely to use it for in the future, I don’t want the ocean to be a mismatched repeating loop. For an animation film, rendering out a ocean made in 3ds Max would probably work. You can set a lot of parameters in 3ds, and using them you can get a pretty convincing wave effect. We didn’t spend much time on the actual material in our tutorial though, so really my ocean looked pretty crap. (see gif above)
Unreal Engine 4
The more I thought about it though, the less motivated I was to try and improve my 3ds max ocean. Even if I made it look perfect, as soon as i exported or rendered it, it would stop being a procedural ocean, and begin being, well, just an animation of an ocean. Let’s be real, how often can you picture wanting one of those in a game? At a push, I would use one in a cutscene. This is when I decided to pursue the procedural ocean in UnrealEngine instead. Queue epic research montage.
- Epic Wiki Water Shader Tutorial
- Epic Wiki Swimmable Water Volume
- UE Forum Water Material
- UE docs Effects>Water Examples
Lots of options then. A few different ways of doing things, and huge potential for realism. In fact, too many options to get a realistic effect, I want to at least have som idea of how to do an unrealistic, stylized look. So I looked into how to do that.
- Youtube UE4 Stylized Rendering
How I’ll actually make the ocean
Most of the tutorials include the use of a physics volume, so that seemed like a good thing to learn about first. Also going to need a water material. Possibly a Physically Based one, and it may need some reflections. I got an idea to look into adding some more interesting details to the scene that would be rendered out, like maybe some swaying grass that I could use to show a wind strength acting on the scene. Another option would be some cloth.
And finally; to render it all out, I would probably use Matinee. Alternately just play the scene in the editor with an empty 1st person controller, and then record it with OBS. The assignment calls for a few different wave intensities, and I don’t know Matinee very well already, so I’ll probably end up using OBS.
Out of the three assignments we have, this one was the one I felt would be the most difficult to implement in UnrealEngine. Which is why I wanted to research it so deeply before starting to do it. Also because I was stuck on a computer that just about runs firefox well enough to watch YouTube on lowest quality. It’s honestly a great way to research without being distracted by all sorts of other things.
Research and Planning done, what now?
Where do I go from here then you might ask? Well, when I get a chance to, I will pop open UnrealEngine, and start building my scene. I already have a small mountain range that I will try to use as a backdrop for the ocean, so it doesn’t look quite so lonely. I’ll also use the built in skysphere to create some atmospheric sunlight. Then I’ll start building up the ocean, I think I will use the method that involves a Physically based Material with displacements for waves and ripples, apply that material to a plane, slap that plane near the bottom of the mountain range to create a fjord, apply a physics volume as needed. I don’t know yet if I do need one, or if the material will be enough for my purposes. That’ll be something to find out with a bit of good ol’ Trial & Error.
If I manage all this in a reasonable amount of time, I’ll add in some other items to the scene to liven it up a bit. When that’s all good I’m gonna make a small bonfire (assignment 1) and let my mocap character flail around a bit (assignment 3). Hopefully this will cover all 3 assignments in one go, using just one beautiful scene. Or that’s the idea, anyway.