Freshwater aquarium, part 1

"Part 1?" I hear you say. "What's that all about? I thought she was going to do a different project each week." Well... Let me explain. 

I was on holiday last week (which means that the last two projects were both created the week before) and I happened to visit the Loro Parque in Tenerife. I went away full of ideas for nature scenes, but the one that I wanted to make the most was an aquarium. Now, the park has a great exposition of saltwater aquariums but, as beautiful as they are, they are still too complex for me to make. (Think about all the corals and weird-shaped plant life I'd have to create.) So I chose to do a freshwater aquarium instead. Not that I expect it to be much easier but I have to start somewhere.


If you've ever seen a large aquarium you know that there is a lot going on inside. The nicest ones have a lot of different plants and fish and maybe other animals like snails and whatnot. Now imagine that I'd try to do all of that in a week. Even if I didn't sleep at all, I wouldn't make a very good job of it. So instead I decided to split the project into several parts. But don't worry, each part should still be a mini-project of its own.

This week I want to create the fish tank with pebbles on the bottom, a large rocky formation in the back and smaller rock piles in the front. Then I want to make sure I have a good camera angle, lighting and color management in place so that I can focus on creating the living things in the upcoming weeks. I might need 2 weeks for the plants (since I haven't tried making realistic-looking plants yet and there is a lot of experimentation to be done). Then probably 2-3 weeks for the fish and other animals, depending on how much variety I want to cram in. And possibly another week for polishing things up. In total you can expect to see the aquarium for 5-6 more weeks. If things go smoothly. Which they always do, right?
***
I started off by creating the tank itself. Not the most complicated thing in the world, a glass tank. I used the clear glass material from Jigglypuff's adventures because it worked well for me before. I also separated the front side so that I can hide it easily without having to go to Edit mode, selecting the face and pressing H / Alt+H all the time.


Then I duplicated the bottom face, separated it, extruded and applied a nice pebble texture I found on Poliigon.com. I hope that by doing it this way I can avoid ugly black artifacts I remember so well back from when I modelled the tube stand.
***
Plugging in all textures for the pebbles material wasn't difficult (I'm starting to get the hang of it) but it doesn't look particularly nice. There are, however, couple of things I can do to make it look more realistic. Ever since I discovered the lattice modifier I try to use it as much as I can. I think it will come in especially handy in this scene because I want to do a lot of shaping without distorting the mesh (in the past, reworking destroyed meshes took a lot of my time). The second thing I need to figure out is displacement. Poliigon provides normal and displacement maps but there are several different ways they can be used and I need to figure out the best one.

***


For now, I'm using the normal map in the material and the displacement map in the Displace modifier. Probably not the best way to go (something tells me that you only want to use one or the other, but I'll keep it this way for now). I've started working on the background piece. Putting it together was even faster because I simply duplicated the pebbles material and changed the image textures. However, I've noticed that I made a mistake with the gloss map-since I'm connecting it to the roughness input of the Principled shader I need to invert it. Unfortunately, I kinda like the wet look it's giving the rocks. Hmm. Should I go with physically accurate or visually pleasing? Oh, what a conundrum.

All right, all right, accurate it is. 

To make the stone wall look less blocky I used another lattice and shaped it a bit. Luckily for me, the texture is quite interesting on its own so I don't think I have to add any more loose rocks. 
***
Aaand I've spent quite a lot of time tinkering with displacement again. That's because I've noticed that the tutorial on Poliigon plugs in the displacement texture directly into the material. So I had a go at that and I have to say I have mixed feelings about it. First, it requires you to switch to "Experimental" feature set, which presumably makes Blender less stable. Second, it requires the SubSurf modifier to be present and to be last in the stack. Which is not ideal when using lattice (at least I think lattice should be last, in these circumstances). But if the SubSurf is not last, the "Adaptive" option doesn't show up. And since I need to use it... well. Let's hope the lattice won't mind too much.

With 'Displace' modifier
With microdisplacement

I also encountered a weird issue with the microdisplacement (as I believe this is called). When I ticked the "Adaptive" option, the rock wall rendered as black. Took me a bit of digging before I figured out it was caused by the normal map. It looks like in this case you *have* to have only the displacement map, without a normal map.

Another thing was the UV unwrapping. With the Displace modifier the testing cube was not showing any seams (I took a great care to position the texture properly) but with the microdisplacement the seams show up as hard lines. I'm not sure there is a way around this-but if you know of any, do let me know, please.

Reading what I've written about microdisplacement, you might wonder why I would even want to use this. The thing is that Displace modifier uses the map to generate actual geometry. The plugged-in texture, on the other hand, does not. Less geometry means smoother viewport and shorter rendering time. It is, however, offset by the memory requirements, especially if you, like me, enjoy rendering via GPU. Even with some of my geometry-extensive scenes I've never seen the graphics card to sweat this much. The memory usage went as high as 2.5 GB and I'm pretty sure it won't stop there. Which is odd because one of the advertised features of microdisplacement is memory *reduction*. I'll carry on for now but I'll have to have a proper look at it soon.
***
I know I should have done this after I was finished with lighting but it bugged me so much that I had to recolour the pebbles at once. Now they go together with the rock wall a bit more, I think. I've also selected textures for the front rocks. I thought it would be nice to have some of them covered in moss, so I ended up with three materials: no moss, partly mossy and fully mossy. Now it's only the question of creating the rocks and placing them in an interesting way. Should be easy enough.


***
Well, I wouldn't call it easy but it wasn't as bad as it could have been. Again, I used simple geometry combined with lattice. However, since I have the same setup for each rock, the Outliner gets cluttered very quickly. For that reason I put each mesh-lattice pair below an empty parent. And overall, I have another empty parent for all the rocks at the bottom. I'm still not entirely proficient in using the empties (they can easily surprise me by misbehaving) but so far there have been no issues. Let's hope it stays that way.
***
Because this post is once again getting far too long, I'll spare you the details of me wrestling with lighting. The short story is that I'm using a combination of a sun lamp and HDR (something which is generally not recommended but in this case I'll go with it because it allows me to blend in different light colours to balance the scene). I also have an area lamp directly above the fish tank to simulate the halogen lights. I was thinking about modeling the tubes and using an emission shader but I think the lamp will do for now. I can always change it later. In fact, I'll most likely have to because it is not nearly as strong as it will have to be in the end.

There is one more thing I wanted to mention and that is the rendering part. It is official now. This project marks the first time when I ran out of memory on my graphics card. Yay! And it's not a bad card either. Bought last year, with 8 GB of memory and it went *puff*. It was alright while I rendered my 1920x1080 image scaled down to 50 % but once I cranked it up to 100 % for the final image, it refused to render. Eventually, I had to switch to CPU, which is not something I'm very happy about but it will have to do.


So there you have it, an empty aquarium. Next time I'm going to add the plants and I might have a look at how to best simulate the water. In the meantime if there is anything that bothers you about the image you have the unique opportunity to let me know because for the first time in the history of this blog I can fix the errors before the project is finished. So much power, folks, use it wisely!

Comments

Popular Posts