malek sakah (maleksk)

7 replies · posted

Sea Wave creation

Hi all,

is there any course here tech on how to do sea wave, i am looking for something like this


  • crew

    I didn't see a ton of the water from the video, but it mostly looks like they're using basic water planes. The large wave at the end actually looks like a 3d mesh with a water shader applied. That being said I would think just about everything shown can be easily replicated.

    Unity has some water prefabs in their Environment package (Assets>Import Package>Environment). There's one that includes things like sea foam and some subtle waves. You could use that as your base. For creating the splashes, you could use a particle system so that when it detects the water you play a water splashing particle effect. The drops of water on the screen are done using a shader like this:

    I'm not entirely sure how that big wave was created but I'm going to assume it included some sort of mesh deformation. If you wanted to buy an asset that cover all your water needs you can find a few like this:

    Water is typically created through fancy shaders so depending how complex you want your water to be will determine if it's worth building something on your own. 

    Oh I forgot to mention, you could watch this course to see how the built in water prefabs can be used: 

  • crew

    I would like to cover a water shader at some point, but typically those are far more complex. They usually include having fancy lighting, using mesh distortion to mimic waves and water movement and are also used with scripting to control things like bouyancy and general movement of objects on water. 

  • I often see water shaders, but what I would really like to see a tutorial on is creating and animating a tube wave, and how it crashes, and how to blend the planes maybe.

  • crew

    Mimicking anything liquid in Unity is tough. Fluid simulations are not something Unity really does well if at all. I think the best solution at the moment would be to try to recreate it in a 3d program like Blender then bake out an animation or simulation that could be used in Unity. You could also sculpt out various tube waves in Blender, then apply a fancy shader that "fills" the mesh with a water effect to look like it's growing over time. I haven't deal much with water physics or shaders so my advice on that would be limited. 

  • I've been using the Suimono water asset you linked above,and I would second that recommendation. Getting a decent look on large crashing waves seems difficult to say the least. personally I'm more interested in waves crashing over rocks than in the actual tube effect. I might be satisfied with the animated deformation you can get from Suimono, combined with a good soundfile, and some pulsing particle systems for the crashing foam.

  • crew

    I think something like that would be far more feasible. I've never worked with complex wave shaders, but I'm sure there's a way to detect if the wave hits a solid object at a specific height. At that point you could create more foam and add in a unique splash effect. Sounds easier in theory than in practice I'm sure. Would be fun to test this out when I do approach this type of shader.