Free Usable Water?

Hello Everyone.

I am a rank beginner, with dreams of eventually creating a MMORPG, and yes, I know it will take years, if not decades to create my first decent MMORPG. At this point I am more interested in “Can it be done?” than “How can I do it?”.

The more I learn about Unity, the less confident I am that the free version can produce usable water. The professional version costs more than I earn in two months, so I am limited to the free version. So far I haven’t seen any demos of usable water in the free version. And no demos of usable underwater for either version.

My goal is a “Third Person Non-Shooter”, that can run, jump, climb stairs and ladders, and swim. For the swimming water, I would need both clear and murky, with darkness growing as you sink deeper. It would also be nice if you can see the surface of the water from underwater through either reflection or refraction/distortion. I don’t need waves, just area defined murkiness.

Free water seems to be just a thin opaque disk with no depth, and only usefull if viewed from above at a distance. All of the game objects seem to be hollow, and cannot be used as a translucent or transparent substance to swim through. Fog may be able to create a nice murky effect, but cannot be limited to the underwater zone.

Are there work-arounds in free Unity, or do I need to consider a different learning a different game engine?

Making indie water translucent is just changing one line of code in the shader. (I can’t recall which one, but you can probably search the googs to find it.)

Fog can be accessed and changed through script. The simplest way is to have a water level and check if the main camera is above or below (and then how much below). That works great for first person.

For third person an option is carefully controlled, slow moving particle systems that emit from a plane directed vertically.

Seeing the water from underneath is as easy as making a child water that’s flipped so it faces down.

Pro water is prettier for sure, but you’ll still need to make your own murkyness as it only addresses the surface shader.

It can be done!