Introduction

Rage over Babylon was made for CGSociety's contest "spectacular" and won the grand prize.
This tutorial will covers the major points of producing this image, starting with the planning and covering the modeling, texturing, rendering, lighting and compossiting. I will also share a few tips and tricks as I show the process

Planning & Presentaion

When I first read the contest's guidelines, I immediately knew that my entry will have to portray something very detailed, with lots of things happening and with the sense of scale taking a major role. I took a week just to go through several ideas and when I locked on my idea I started "sketching" out the composition in my mind to the finest details even before I set down and started working on the concept sketch. That happens to me quite often. After I get an idea going in my mind, I'll already have most of it planned out before I even start on it. Once I knew I was going for the Babel tower, the first thing I did was to go through as many references as I could to get more inspiration about the architecture, atmosphere and even specific props and details. I went through films such as LOTR and Troy several times to get ideas on which items would fit the scene.

I knew I would have to make the city very small compared to the tower to enhance the sense of scale and I knew this image needs to hold up the details in high resolution, this meant I really have to come up with allot of different items and allot of variations for them. One of the challenges was to avoid having anything look duplicated - each flag on the tower was hand tweaked, I made over 100 different vase types ( 10 different textures X 10 different models with different stretching), most of the textures had dirt masks as map channel 2 and were tweaked after positioning so that textures wouldn't be repetitive either and so on. Another major challenge I knew I'll have to face was the hardware issue. 32 bit shows it's limits when you are working with millions of polygons and hundreds of textures and especially when you are trying to render them. I knew this will be a major issue (and it was, my renders really crashed over 100 times because they run out of memory!) so I realized compositing was the key here. I planned ahead to break the scene into smaller parts and render lots of things separately and then composite them together in the end as I will describe later on.

Modelling & Texturing

I am covering the modeling and texturing together because I realized that in this case it would be better to texture everything I model right after I finish modeling it instead of first model everything and then texture everything.

The tower - Here's how I basically built the tower -

I've started with a base model, I made sure its all quads there so that I could easily tweak things later on. it has around 2500 polys.

Next up, I added meshsmooth modifier, changed it to classic SD and set it's strength to 0.15 so that the edges would become slightly chamfered (I often use this technique to automatically chamfer edges quickly, when I know I am done modeling I usually delete the modifier and do it manually to save on polygons). model has around 10,000 polys.

Here's where the symmetry modifier takes a big role - I've added four symmetry modifiers, each one has double the angle than the one below it to make the wall go evenly round. The model stands on around 150,000 polys

After the base level was ready, I used array to clone it 20 times on top of each other with each level non uniformly scaled. One important thing to notice is that I made the cloning as INSTANCE and that makes a big difference on the hardware calculations. the tower stands at around 3 million polygons.

I slightly rotated all the floors so that the tower would seem to go spirally. After that I've started working on each floor locally to make variations in the details. I broke the instances on the lower floors but kept it on the upper floors. When I added the details, I only needed to work on one part of the floor and the rest would update automatically cause of the symmetry. To save as many polygons as I could, I ended up breaking the symmetry and deleting any polygon that wasn't really visible to the camera. I also removed the meshsmooth modifier and chamfered just the visible edges by hand. I ended up adding more details but going down to about 2 million polygons.

When I was done, I scattered the flags and torches by hand and worked allot with masks and mapping channels to make variations in the tower's textures.