This project is a 3D Environment, inspired by orientalist paintings such as The Bath of Bursa from Gérôme or the Bauernfeind orientalist period. I always loved this thematic of Art as it usually depicts the relation between grandiose places and people living in it with a good sense of romanticizing. Those paintings are not just realistic but capture the elegance of lighting and simplify the patina in amazing ways.
My purpose here was also technical, I wanted to test Lumen in Unreal Engine 5, as well as some 3D recipes I had in mind. This project was mainly a sandbox for me to experiment with ideas and benchmarks.
The first step was to gather many references as inspiration. I love this step as it’s where you always discover new historical facts and amazing places. Like the temple of Diane in France, the Orbelian’s Caravanserai in Armenia or the roman bath of Somerset in England.
I started creating a very simple grey blockout. Trying to create something iconic but not reproduce one image in particular, gathering elements from many references. At this stage, I was playing with the structural shapes whilst also trying to cast shadows from the destroyed ceiling.
In terms of numbers, I ended up spending around 650 hours on the entire project, creating around 90 3d assets and 40 materials. It was a big side project and proved rather difficult with everything going on, in my life and the world. I have listed and planned everything to optimize my spare time.
Then from that listing, I fleshed out a Block Plan. It helped me a lot to visualize the workload and gave me a rough idea of how many hours I needed to put in. For me, it’s the most important step to limit overtime for professional or personal projects. I mostly worked 30 hours a week on this project during lunchtimes, evenings and Sundays.
I started with the most interesting recipe, the walls I wanted something more versatile and grounded than a plane with displacement so I sculpted around 30 stones, intact and broken ones. I baked those in two separate substance Painter files to avoid dozen of files to update.
Here are some early test with only 10 simple stones. I wanted to test out the recipe. It helped me to realized my scale could be smaller, that I would need broken versions of my stones, a kit of decals and variation of my material to have the bi color wall.
Creating architectural setups with baked assets gives you the versatility to reuse those assets for a corner, straight, concave, convex recipes or even rubbles. Visually it will guarantee consistency as those are the same stones you are using everywhere. Production-wise, it’s an amazing time savior that will free you some time for more important assets.
Here are a few examples of how I used those assets.
Here is a screen to visualize the sculpted stone’s repartition. You can see them on the walls, arches, rubbles and also clutters. (The interior of the arches were made with a multi-material of 2 wall stones, with added stucco driven by vertex paint)
I kept the stones sculpt and texturing simple, as I knew I would add extra layers of decals on top of it. I created a set of decals of simple color splashes, dust, dirt, water and even cracks. It helped me add the final extra layer of patina and linked every asset together without feeling repetition between the instances.
To make it simple it’s a bit like taking the patina pass outside your texturing and replacing it with decals in the engine. Here is an overview of the final scene where you can see the decals.
When I was happy with the wall recipe I started working on the grounds. Usually, those are the most important part of an environment. I searched many patterns and volumes of intensity before finding the right one. I wanted something simple that would contrast with the matte vertical walls. Something rich but that would not steal the show and yet go well with the overall structure. Here is an early test to find the overall structure.
With the propping and decals, I could have something more subtle than the walls and add some variations with the blend. So I created and baked 4-floor modules with a dedicated material to have a nice grounded patina, and a broken variation for each to paint cracks where I wanted. I also created variations to break the tiling.
Each one was modelled in 3DSMax, then baked and textured in Substance Designer.
For the texturing, I went for something simple and straightforward, material layering. I created my own marbles, mixed them with some from Substance Source and dirt from a scan library to nail exactly the look I wanted. It allowed me to iterate quickly and keep everything tight and simple.
I then duplicate my substance to create a broken version. This one was exactly the same but with cracks on top driving some extra dirt layering.
Here is a screenshot of the cracks setup I reuse on my 4 broken floor versions.
Once you have two states of a material, the regular and the broken one, you can plug those in a multi-material driven by vertex color. That way you will be able to paint where you want to reveal each state.
For the Muqarnas patterns in the ceiling, I created a base mesh in a hard surface manner. Creating a simple mesh that could be turbosmoothed. I unwrapped its Uvs, duplicate it and bend it to create a big ceiling module.
In Designer, I drew a shape on the UVs, I then extracted from my mesh. Then created a tileable heightmap pattern from it. I finished by layering bronze and oxidation the same way I layered my materials on the floors.
It gave me a simple material matching my UVs and doing the tricks in the upper part of the scene.
I wanted 3 different oil lamps, one hanging, one open and one broken. For more quality value I could have sculpted and baked each one but it would have been barely visible in my shots and a waste of time. Instead, I went with a kit approach. I created one lamp and reused it for those 3 stages.
To win a bit more time I created some parts with a trim sheet material and some elements were baked This way I was using the best of those recipes depending on my needs.
For the trim sheet material, I just designed the material and the mesh to have plain surfaces, hollowed surfaces and trims without feeling too artificial.
The trim sheet Material was made in Designer, like the ceiling and vase materials. Heightmap first then material layering according to it. For consistency, I reused again the same Bronze and Patina SBSAR I made in Designer.
I recreated the same setup in Painter for the baked assets. Layering the same SBSAR to obtain elements that work together.
For the curtains, the most efficient way to go for me is Marvelous Designer. One of the simplest and funniest software I have worked with. Curtains have very simple sewing patterns and can quickly be very dramatic with few tacks.
The material applied to the curtain was very straightforward. A simple shape is used to create several threads interlaced together. I created 3 color variations for the base color and custom masks to do a quick blend pass in the scene.
At some point, I wanted to add a bit of color to the frame behind the lamp in the center of the image. I remembered these amazing blue tiles in one of my references and thought it would work well to fill the arch and add a bit of color.
This fantastic painting has a different color scheme than my scene but it was really interesting to try to match one of those surfaces.
This Material was really fun to do as it is pretty simple but gives a lot of opportunity for subtle detailing and variations. Most of the tricks in the base color come from the AO and Thickness.
Graph overview:
Pattern and Mid Shapes
Surfacing and Porosity
Base Color
One of my favorite pieces of the scene was certainly the lions. I wanted to do a very classical lion that could be in Damas with some roman twist to it. I picked elements here and there to create something that would not be too naive or modern. For the anatomy lioness sculptures were really helpful as they don’t have the lion’s mane.
Figurative sculpts are so relaxing, here are some of my refs.
For the Sculpt itself, it was pretty straightforward, I started from spheres I deformed and refined, trying to keep everything simple. Nothing fancy just Moves, Clay build Up. Pinch and Trim Smooth Border. I worked the body, head and legs before adding any other elements, keeping everything with separate polygroups to work easily.
When I finished it I duplicate my lion and start chopping in it with the slice selection tools to create the broken parts. Each one is dynameshed and resculpted to chip the edges and fill the cuts with mid shapes.
The Lion and Broken Lion were both baked and textured in Painter. It allows me to create my layering, group it and reuse it as a smart mat on the other version. It guarantees good consistency and makes you win some precious time. Again I kept the texturing simple to avoid a tiling feeling between instances and give room to the decal pass.
In the end, I imported the baked version of each element with their specific materials. It gave me a lot of flexibility as I was reusing the full lions but also the broken part as figurative rubbles. It was even possible to put some broken elements back to create even more variations.
When I started playing with the sequencer I realized it would be interesting to invest more time in the Gate. I created the Gate in a modular manner again to reuse elements on the gate itself and in the scene as rubbles.
I created several alphas of stone, wood, broken surfaces but also a decoration to go quickly in ZBrush.
My wood alphas:
My iron Alphas:
The Gate Decoration for the Lintel:
It allowed me to quickly flesh out my sculpt before chipping edges and adding details.
Then, like the Lions, I baked and layered my materials in Painter to create the final material. To be more efficient I worked everything in one SPP using one UDIM for each element, door, props and stone.
Once everything was baked I created the final version of the asset, playing with the separate elements to create a two-door Gate with a stone lintel, nails and iron hinges.
All in all, it was an amazing project and I had so much fun on it. I wanted to do an environment inspired by Gerome since I worked on Rhodes’s souk on Assassin’s Creed Revelations, I was due. The Unreal Engine 5 is an amazing beast, freeing the Artist like never and even with a big hiccup on alpha material like foliage I can’t wait for their next update.
I hope this project breakdown will give some of you a few ideas for your personal projects. Feel free to reach out if something was not clear or detailed enough.