Mehdi Beheshti
Texture Artist
artstation linkedin youtube
More from «Artstation» here
seen from Russia
seen from Türkiye
seen from Belgium
seen from United States
seen from Germany

seen from Germany
seen from Italy
seen from United States

seen from Germany

seen from Malaysia
seen from Malaysia
seen from Ukraine
seen from United States
seen from Serbia
seen from Yemen
seen from Italy
seen from Türkiye
seen from Türkiye
seen from United Kingdom
seen from Romania
Mehdi Beheshti
Texture Artist
artstation linkedin youtube
More from «Artstation» here
Various decal tests for a game
Portfolio, Documentation and Pitch (Aryan Raj Adhikari)
Development Tests #1
Since, I have finished with the compilation of all of the possible references to help assist me in my final project journey, I start carrying a couple of tests to make sure that I am well equipped when I start the production phase.
The first thing I did was to analyze the concept art and break it down into different elements.
Figure 1 (Concept art breakdown)
The concept art has been broken down into 3 elements; foreground elements in green tone, midground elements in blue tone and the background elements in the red tone.
The foreground elements include the bridge, the portal contraption, the cables, the boat, the floodlights and the two buildings on either side. The building however could also be classified under the midground elements but I placed it in the foreground elements. The midground elements include the main archway building, the platform, crates, the sandbags and the main tree actor in the left corner. The background elements include the dome structure, the distant background building and the foliage and assets that are present in the vicinity.
The architectural assets include the two buildings on either side, the the archway structure and the background dome. The foliage include variations of trees, ivy plants, moss and water pads. The modular assets in the art are mostly the wooden panel and the beams that make up the pier bridge while the small assets include the boat, crates, cables, the teleporter, the floodlights, panels and the sandbags.
Figure 2 (Rough blockout inside UE5)
I went ahead and created a simple blockout inside Unreal Engine 5 to figure out the general layout composition and the shape language of the overall level. I used simple primitives like cubes, spheres and cylinders for a faster and efficient blockout.
Resizing and duplicating the assets as necessary, I then set a camera with the proper focal and zoom settings to match the perspective and locked it so I can work on that view exclusively while tweaking it later on.
Figure 3 (Rough lighting pass inside UE5)
A simple lighting pass was set to match the general lighting mood for the scene, making it more similar to the concept artwork. I added a directional light to replicate the lightness of a sun and used a similar color tint to try and mimic the color composition of the concept artwork. I changed the position of the sun to get the similar sun glare in the corner and locked the manual exposure settings of the entire composition.
Figure 4 (Rough cloud cards)
I created a simple rough blockout for the cloud cards in Photoshop. This doesn't reflect the final cloud cards. I painted over the blockout in a new layer with an absolute white color using a wet brush. While working on the color, I also tweak the edges of the cloud using the eraser brush and the move selection brush. I started with a soft blue highlight tint for the silhouettes and a saturated blue highlight for stronger shadow emphasis. Finally, I manipulated the color of the hue/saturation to match the concept art composition which can also be done later inside Unreal Engine.
Figure 5 (Cloud FX test)
I modeled the cloud cards inside Blender and imported it to Unreal Engine. I created a material for the cards using its color and opacity masks. The material for the cloud cards utilizes the material functions and a master material with an instance material to control the parameters of the clouds.
It includes parameters like brightness, desaturation, hue shift and tint color to control the cloud cards. It also includes parameters like distortion speed and distortion strength to control the distortion flow of the clouds.
Figure 6 (Water FX test)
I created a water shader inside the Unreal Engine 5 entirely. The instance material of the water controls the parameters of the water shader. It includes a lot of parameters for the water FX that includes foam masks, normal, the low foam masks, the refraction settings and slots to change the opacity and the color map.
It also includes slots for noise maps that can be plugged to change the foam and normal masks which control the flow behavior of the water shader.
Figure 7 (Rough foliage cards)
I also decided to tackle the foliage as it could prove to be a bit difficult. However, it was really easier than what I had anticipated. Just like with the cloud cards, I created a rough foliage card with different leaf and flower variations and colored it with a wet brush. I then exported a color map and an opacity map which was used inside Blender with the help of a particle system to create flowers and bush. It was then imported inside Unreal Engine where I created a foliage material that can be referenced for any variation.
Figure 8 (Foliage material test)
The materials for the foliage was created inside Unreal Engine 5. It contains a plethora of parameters like billboard properties, color control, a PBR map and shadows which can be tweaked as necessary. I also included parameters for subsurface that help control the tint in the foliage for a subtle gradient silhouette. This material also creates a simple wind parameter to control the flow of the foliage.
Figure 9 (Rough tree test)
I also went ahead and experimented with the trees based on the concept artwork. I decided to use TreeIT, a free alternative to SpeedTree. Although a lot less versatile than SpeedTree, it met the requirements I had to create a nice tree and I have decided to use TreeIT moving forward.
I used one of the rough foliage card as a test for the leaf billboards for the tree. Inside TreeIt, I can control a lot of different parameters for branches, branchlets, barks, leaves and its overall scale and deformation. It proved to be a very viable alternative to SpeedTree while experimenting with it. I will require 2-3 different variations of a small tree to populate my scene later on.
Figure 10 (Modular kit and shader test)
I created rough wooden logs as a modularity test to see if I could use these and build upon some of the scenes. I created 4 different variations of wooden logs. Sculpting it for stylization details and then importing it into Substance Painter for a shader test, it was a really rewarding and a fun process. I tried to mimic the shader of the logs as much as possible to that of the concept art. It is done with a simple procedural setup and utilizes black masks to add grunge maps as overlay details on top of the logs. Adobe recently released a 'Stylization' filter for Painter which allows you to replicate a stylized look based on presets which you can further tweak. The 'Handpainted' effect really allowed for a brushed touchup with grain noises being eliminated. This still requires much work but this test proved to be very useful.
Figure 11 (Trimsheet test)
Instead of creating multiple different variations of wooden planks from scratch, I decided to undergo a trimsheet test to see if its viable for this project. I created a rough trimsheet in Blender and imported it to ZBrush where I sculpted wooden details onto it.
However, due to time constraint, I couldn't go further past this phase but I am confident that this approach would work for a lot of assets present in the concept art and I will employ this approach.
Having carried out these tests, I am happy to say that I am well equipped to tackle the final project head on. Still a bit more needed for testing which will be done in due time but for the meanwhile, I am really satisfied with this result.
Old fountain I created a while ago to get even more familiar with the trimsheet creation process.