Hi, I am Thomas Kole, a Dutch 3D artist and software developer. I’ve used Blender since Blender 2.45 or so. I studied software development for video games, but always kept an eye on 3D.
A while ago, I started reading about pre-Columbian America. The subject does not get a lot of attention where I live, and the topic caught me by surprise. The idea that one of the biggest cities in the world would be in the Americas during the time before the conquest did not fit with my worldview. I just started with importing the terrain data, and it just took off from there. This is how my 3D reconstruction of Tenochtitlan, the predecessor to today’s Mexico City, started.
After importing the terrain, I started overlaying the maps and a mockup of the temples to get a sense of scale. I did a little feasibility test with some basic shapes, and quickly realized I bit off more than I could chew.
The terrain is massive, and so is the city. I had to reinvent the wheel here and there just to keep the project within the video memory for GPU rendering.
I heavily relied on Geometry Nodes to keep things flexible, which was relatively new at that time. Geometry Nodes is involved in almost everything in the scene in some way, sometimes as simple as spawning some people, sometimes a bit more complex, like turning blockouts into palaces.
After concluding that the technical aspect would be doable, I hit another wall—this is history, and history is muddy. No two sources would agree on even the basic aspects, such as the extent of the city, or the level of urbanization. I started emailing the people who authored the papers I read, and slowly got in touch with them. I wanted to make sure the reconstruction was as accurate as possible.
I had to think of a way to render such an immense forest. Instances were right out. I came up with a technique that works similar to billboards but also applies little patches across the surface of the terrain.
This worked reasonably well, and made it into the final project:
Weathering the Buildings
I also had to come up with a way to automatically “weather” buildings, as there would be too many to do manually. I found a way to do that with Cycles, which requires no additional work:
I would just hack away at every problem, bit by bit. Some problems would be 3D related, such as the things I described above, while others’ would be content related. Luckily, I had many contacts at this point that I could consult with.
Tip: Use the ambient occlusion node in a “magic” way to generate procedural leaks / streaks, for large built objects.
Tip: You can experiment with different textures for different looks. It works well, but is a bit slow due to the AO node. Also, note that this does not work in Eevee.
Designing the city
At times, the amount of work ahead would be daunting, and it felt like I was getting nowhere. A few times I was ready to give up, as things just weren’t working out.
From the beginning, I kept a folder with screenshots, and when I got stuck, I would browse through them and see my progress while I also kept a BlenderArtists thread.
About halfway through, I got in contact with a drone photographer, Andres Semo. He was able to capture modern Mexico City, so that we could compare it against Tenochtitlan. We found good angles together, and I would align my camera to his shots, based on focal length, position, and height. We ended up making 4 comparisons in total.
After a year and a half, I reached a point where I was ready to release the project. I planned some time to do the final renders, each of which took about half an hour. I rendered in various passes, and did some post-processing in Gimp and Darktable.
I put together a dedicated website, tenochtitlan.thomaskole.nl, and started populating it with renders. I had written some texts, and found good angles to match my points. There, you can find renders from different angles.
Early on, I had decided to publish my images under CC-BY-4.0 to promote sharing and education.
For more on this project, I've given interviews to National Geographic en Español, Arquine, El Siglo de Torreon, Architectural Digest, and WIRED. Additional publications can be found on the Blender Artists page.
RENDER : A Portrait of Tenochtitlan
Thank you so much for reading!
Thomas Kole is a 3D artist and software developer from the Netherlands, and he has been an active Blender user for many years.