Post news Report RSS Atlantian Problems Part II

In today's post we'll be talking about the water in Okhlos' fourth world, Atlantis, and how we went about making it using Unity. It's going to be a very artist friendly post!

Posted by on

Happy New Year and welcome back! This is our first update of 2015 and we hope you’ve all had a great start to your year! Here at CoffeePoweredMachine the work never stops, and we’re still chugging away on the Atlantis levels, which we first showed you in our last update.Back then, when we introduced Atlantis to you, we also talked about its ornaments and it’s foliage, and you guys gave us a lot of great feedback! Thank you very much for all your thoughts, we’re going to keep working hard on those details to make sure it look just right!

The water

The composition of the water in Okhlos is quite simple: it’s a plane.

waterPlane
The water is above the actual ground of the game… duh.

It’s a plane above the actual ground of the level, so the units, buildings, and enemies never interact with it. The ground is the one that posseses all the physics components, so it still handles all the collisions itself. The water is just a mesh child of the ground.

The water has a transpartent/diffuse material, and there isn’t much more to it than that. We don’t reduce the opacity of the texture, we just change it in the materials settings. This gives us much more control, and, since we’re working directly on the final look as we make changes, we can just do it all within Unity instead of having to export out a texture for every tweak we want to make.

matProp
“Agua” in spanish means water :P

As far as water within other objects goes, all the water in streams and containers was made in 2DToolkit, which makes animating it so much easier and gives us far more versatility.

agua

As you can see from the picture above, almost all the water streams for the objects are made using sprites. We animate them frame by frame. 2DToolkit has an incredibly useful pipeline for this kind of work. We still need to export the sprites, but we change their sizes, shapes, and orientations very quickly, and we can see the results almost immediately.

barrilbebedero

waterFountain2
This fountain has 8 different sprite animations, just to illustrate the versatility of our system.

fuente

The only real problem we had with this approach was that we had to change the material of the water within the objects to differentiate it from the water plane. The water has an Additive Vertex color material, which is why it almost seems to glow.

The cascading water, as we mentioned before, is a sprite animation, but the ripples are produced using Unity’s particle system.

waterFlow

It’s actually a pretty simple effect, it’s just a looping particle that throws instances every now and then.

Captura de pantalla 2015-01-07 11.07.37

With just a few tweaks we can apply the effect to a character. We just need to change the Emission from Time to Distance, and the simulation space to local.

waterRipplesCharacter

The buildings

The buildings, fortunately, were pretty straight forward to make. We added some moss and a strange glowing pattern that we thought exuded a certain Atlantean look.

buildings

We added the obligatory moss, following in a looooong tradition of water levels.

As for the edges of the level, we got rid of those old fashioned mountain bases and we replaced them with water walls that have ancient Atlantean runes! So cool!

water

Oops… this update ended up being a little long, didn’t it? We still have at least another update to write about Atlantis, talking about enemies and hazards, but there’s also so many other things we want to talk about! We’re still not quite sure what we’ll focus on for next week, but stay tuned, it’ll definitely be exciting!

See you all next time, and happy new year!

As always, this article was proofread and edited by @pfque_!

Post comment Comments
MrAtlas
MrAtlas - - 1 comments

This was a very interesting article for me. Thank you, and this game looks great. Can't wait!

Reply Good karma Bad karma+4 votes
CoffeePower Author
CoffeePower - - 45 comments

Glad to know it helps!

Reply Good karma+1 vote
ChrisKoebke
ChrisKoebke - - 2 comments

Very interesting indeed!

Reply Good karma Bad karma+3 votes
CoffeePower Author
CoffeePower - - 45 comments

Thanks!

Reply Good karma+1 vote
TKAzA
TKAzA - - 3,154 comments

A great read as always, nice to see you guys sharing your solutions

Reply Good karma Bad karma+2 votes
Post a comment

Your comment will be anonymous unless you join the community. Or sign in with your social account: