logo80lv
Articlesclick_arrow
Talentsclick_arrow
Events
Workshops
Aboutclick_arrow
profile_login
Log in
0
Save
Copy Link
Share

Breakdown: Creating a Star Wars-Inspired Arabian-Style 3D Scene with Sci-Fi Elements

Matvey Meleshko discussed the workflow behind the Ember Bazaar, talking about how he was inspired by Star Wars, how he created the canopies with Marvelous Designer, and explaining how he made the materials look more realistic.

Introduction

Hello everyone! My name is Matvey Meleshko, and I'm a self-taught Environment Artist currently looking for my first job in the game development industry. I first started thinking about a career in game development back in high school while studying the fundamentals of academic drawing and composition to apply to an architecture university. However, life took a different path, and I ended up studying Materials Science with a focus on artistic design.

From my first year at university, I began teaching myself 3D and spent most of my time working in Blender, but I wasn't seeing any significant progress. During my studies, I became part of an artist community where I received a lot of valuable feedback and advice. I also went through numerous tutorials and courses. The quality of my props improved considerably, but I wanted to grow by working on something larger in scope, so I decided to focus on environment art.

I realized that environment art was too complex to master entirely on my own and that I needed a mentor. While researching learning opportunities, I came across one of Evgeniy Vegera's feedback streams and discovered that he had created a platform dedicated to helping artists improve their skills.

I chose a concept and reached out to Evgeniy, telling him that I wanted to work on the project under his mentorship. I was drawn to Bart's concept because of its unique blend of African and Middle Eastern architecture combined with sci-fi elements. It immediately reminded me of the Star Wars universe, particularly the landscapes of Tatooine, which I've loved since childhood.

Ember Bazaar

The main goal of this project was to learn every stage of the environment art pipeline under the guidance of an experienced industry professional and gain a solid understanding of a real production workflow. In addition to the concept art, I used Star Wars Outlaws and Assassin's Creed Mirage as my primary visual references.

I also researched Star Wars theme parks and studied real-world architecture from North Africa and the Middle East. Since my academic background is in Materials Science, I've had the opportunity to work with real material samples, which helped me better understand their structure as well as the processes of aging, oxidation, and deformation.

To begin, I identified the primary materials used throughout the environment and assigned them based on their intended purpose. After that, I created a step-by-step production plan outlining how I would approach the entire project.

Blockout

The blockout was created in Maya, with the primary shapes built according to the concept. I also made a simple layout to better understand the internal structure of the building.

After completing the blockout, I began refining the individual architectural forms, which continued to evolve throughout the production process. One of the most challenging tasks was simulating the fabric canopies in Marvelous Designer, as it was my first time using the software. Once the simulation was complete, I applied a wind simulation to achieve more natural-looking folds, then exported the mesh to ZBrush for additional sculpting.

UVs

Next, I added planes along the edges of the fabric to serve as future tears. I exported everything to RizomUV. The base UVs had already been generated in Marvelous Designer, so I only adjusted them to match the desired texel density (10.24px/cm). After that, I created a second UV set, cut the UV shells on selected areas of the fabric, and placed the edge planes into those regions. This second UV set would later be used as the alpha set.

I then exported everything to Substance 3D Painter and used Alpha brushes to create a mask that would later allow me to blend the fabric material in Unreal Engine. The key here is to make sure the shading is correct — the fabric and the attached planes must remain a single mesh with welded vertices.

Otherwise, your fabric patches and edge planes will end up looking like this:

In Unreal Engine, I created a dedicated material for the fabric that supports a second UV channel and allows an alpha mask to be applied.

Using just two materials for each canopy set, I was able to achieve realistic torn fabric edges and holes. I also experimented with simulating the canopies using Chaos Cloth. To be honest, the results were terrible, so I looked for a simpler alternative. The SimpleGrassWind node offsets an object's World Position using mathematical functions to simulate gentle swaying. I really liked how straightforward and artist-friendly this approach was, so I later incorporated it into my master material to animate vegetation and other fabric elements throughout the scene.

However, I ran into a problem with the grass — the entire mesh was moving, which looked far from convincing. I spent several days searching for a solution, but it turned out to be just as simple as the node itself: using a Vertex Color mask.

Here, I isolate the green channel and tell the material to apply the World Position Offset only where the green channel is painted. Then, in the Mesh Paint tool, I simply paint the areas that shouldn't move black on the green channel. Below is an example using the canopies, where I also painted the supporting structures black. This way, everything sways smoothly, and the motion can be precisely controlled.

Architecture

The primary architectural elements were also refined in Maya. I tried to maintain a reasonably clean topology in the areas where Vertex Paint would later be used. The radial design of the building saved a considerable amount of time, as it allowed me to efficiently duplicate and arrange repeating elements around the structure.

I also listed Blender as secondary software for modeling. Maya doesn't always handle very dense geometry and high-poly meshes well (which might be an issue specific to my current version), so I use Blender to manipulate heavy models.

The lower section of the building was sculpted in ZBrush and then decimated to break up the perfectly uniform, "computer-generated" edges of the mesh. I also adjusted certain areas using the Move brush. In my opinion, this material is especially susceptible to natural wear, particularly in the lower part of the building where people would interact with it the most. This section also uses a tiled material, Vertex Paint, and a second UV channel.

After assembling the initial version of the building in Unreal Engine, I realized that it looked isolated and disconnected from its surroundings. I used Hunyuan 3D to generate background buildings, but I didn't integrate the bazaar into the environment well enough, so it still felt as though it had simply been pasted onto the background. On top of that, the quality of the generated buildings was honestly quite poor. The materials also felt rather flat, the metals appeared overly dark, and several elements of the bar looked underdeveloped.

Materials

At that point, I decided to focus seriously on improving the materials and integrating the building into its environment. All of the materials were created entirely in Substance 3D Designer. Unfortunately, the file containing one of the plaster variations was lost, but I can show the remaining ones.

I think this was the most successful material because it captures the layered nature of plaster quite well, contrasting its rough, noisy surface with smoother, polished areas. It was primarily inspired by a material from Star Wars Outlaws, which I further refined using references from real buildings in North Africa and the Middle East.

The next material, whose Substance 3D Designer graph was unfortunately lost, was inspired by the outstanding work of Jones Armellini on Star Wars Outlaws and the highly detailed plaster material created by Aleksey Kirsanov for Half-Life. I analyzed the distinctive features of their work and tried to incorporate those qualities into my own material.

The works of these artists are shown below.

When creating the next material, my goal was to age, crack, and erode the previously created plaster base.

The wood material went through many iterations. Although it may seem like a fairly straightforward material, achieving a convincing result turned out to be one of the most difficult tasks. I also created a painted variation, which I later used with Vertex Paint on the main decorative wooden elements.

I apologize for how messy the graphs are — I know they're far from easy to read. The key feature of this material is this small group of nodes. If I plug in a completely black mask, all of the paint disappears, revealing the bare wood underneath. Since the mask itself can also be replaced, the material becomes highly versatile.

Props

After finishing the materials, I moved on to creating the props. The clay pots are probably my favorite assets in the project. I used radial symmetry for the UV shells: simpler shapes were split into quarter sections, while more complex ones were divided in half. I followed a traditional high-poly to low-poly workflow and baked the details. This approach preserved a significant amount of UV space, allowing me to achieve a texel density of 15.62 px/cm. (2048x2048 texture set)

Texturing

Next came the texturing stage. When creating textures, I primarily focus on the Albedo and Roughness channels. The color information should feel rich and dimensional, containing a wide range of subtle color variations, as this makes the asset appear much more believable. Back in art school, I was taught to look for both warm and cool tones within the same object. That contrast makes surfaces more visually appealing and realistic.

I also introduced subtle gradients throughout the textures. Since the environment is set in a desert, the lower parts of the props become lighter and gradually shift toward sandy tones, helping them blend more naturally with the ground. Another technique I used was driving saturation with the Lightmap. Surfaces that receive constant sunlight gradually lose saturation and appear faded over time, which adds an extra layer of environmental storytelling to the assets.

Roughness view:

The terminal can be considered a hero asset, since I envisioned it as an object the player would interact with. It could serve as a quest location or the starting point of environmental storytelling, revealing information about the characters involved in the narrative — for example, a bounty target displayed on the screen. This asset evolved alongside the rest of the environment. While the main display remained the same and followed a traditional baked workflow, the supporting brackets were rebuilt as mid-poly geometry.

For the brackets, I used AI-assisted blocking. I first generated a concept for the supports, then created a 3D model in Hunyuan 3D, and finally rebuilt the geometry manually over the generated mesh. I know AI tools are still controversial among many artists, but I believe this approach makes it possible to develop complex forms much faster while still allowing the final asset to be completed logically without compromising its visual quality.

For the brackets themselves, I used overlapping UVs to save texture space, and the individual support pieces were simply mirrored along one axis.

The screen material was created by following a tutorial. The shader simulates real RGB subpixels, and I also blended an Albedo map into the material, driving the Emissive output with adjustable scalar parameters to control the screen's brightness.

Adding Details

After that, I revisited the wooden bar counter. I sculpted individual wooden planks in ZBrush, baked them as unique assets, textured them, and placed them along the entire length of the counter, rotating and mirroring them to avoid obvious repetition. The counter itself was also sculpted, packed into its own texture set, and baked. Although the resulting texel density of the counter was relatively low, I never intended to texture it uniquely.

Instead, I only used its Normal Map and blended it with the tiled wood material I had created earlier. I highlighted several of the planks with blue paint because I wanted to introduce a color accent that would naturally draw the player's attention and subtly guide them through the environment. The blue paint appears on the counter, in the ornaments on the main building, on the foreground planks, in the flowers, and on the terminal.

I distributed the painted planks using roughly a 70/30 ratio, since I felt this irregular pattern would be more visually engaging than placing them at perfectly even intervals. After importing everything into Unreal Engine, I realized the counter still needed to blend better with its surroundings, and its individual parts felt somewhat disconnected.

I packed the entire counter into a separate UV set for RGB masks. Using these masks, I added dust to the lower sections of the planks, introduced subtle color variation underneath the counter to increase depth, and highlighted selected edges using a single color. These relatively simple adjustments made the asset feel much more cohesive.

The gate also looked rather plain, so I decided to borrow an idea directly from the Star Wars theme parks by adding engraved inscriptions to the archway. Using a real reference from one of the parks, I generated an alpha with AI, carved it into the mesh using a simple Boolean operation, refined the edges in ZBrush, and finished the asset with Decimation.

As I mentioned earlier, I wasn't able to optimize every asset individually, so I left this mesh as a Nanite asset. It ended up at around 63,000 triangles, which is certainly higher than I would normally target, but I simply didn't have enough time to optimize it further.

The stairs were inspired by the concept art from Horizon Forbidden West. I really liked their design and felt they would fit naturally into this environment. I made several modifications, sculpting a few of the steps and other staircase elements, then repeated the same approach I had used for the bar counter.

By rotating and mirroring the pieces, I achieved a unique appearance while using significantly less UV space. I separated the materials by introducing bronze elements, then packed everything into a dedicated texture set with RGB masks.

I also redesigned the roof of the bar counter by breaking up its overly clean silhouette with additional details such as ventilation units and cables. These are separate meshes with unique textures. I really liked this approach because it allowed me to add a high level of detail to large structures by creating modular detail pieces that can later be reused on other assets as well.

The Atmosphere

I've talked about the props and the main building, but the most important aspect of the project is still the overall mood and atmosphere of the environment. The streets also went through several iterations. I started by creating a simple layout to ensure the main building was properly integrated into the overall composition. My goal was to capture the atmosphere of a real marketplace where players could buy equipment, supplies, and various items.

I created my first modular kit for assembling different types of buildings. The assets were fairly simple, mapped to tiled materials, and used to build the surrounding town. However, I drifted too far away from the original concept, which turned out to be my biggest mistake. The bazaar building stood out too much — it was colorful and richly detailed, while the surrounding houses were almost entirely monochromatic sandstone.

The balconies were too dark, and the scale of the balconies, doors, and windows was clearly unrealistic. A player wouldn't have felt comfortable walking through the doorways, looking through the windows, or stepping onto the balconies. I decided to redesign those elements completely.

I began identifying the key visual elements of the concept. What defines its style? What creates its mood and gives it a unique visual identity? I particularly liked the use of wood, antennas, and various attachments that could introduce additional color variation and break up the monotony of the sandstone buildings. I also added decorative patterns based on my own interpretation, using several ornaments from the Assassin's Creed Mirage trim sheets as inspiration.

These patterns introduced the same blue-cyan accent color that I had already established throughout the scene. I also incorporated several wooden details into the trim sheet. The image below shows the trim sheet layout I planned, including approximate proportions based on the intended camera angles.

After planning everything out, I created the base trim sheet geometry in Maya and refined it with sculpting in ZBrush. It's important to enable brush wrap mode so the sculpt remains perfectly tileable when baked.

Afterward, I baked everything onto a flat plane and textured it in Substance 3D Painter.

I relied heavily on the excellent tutorials by EMC3D — Game Art. UV shells don't necessarily have to match the exact proportions of the trim sheet — they're often scaled and adjusted to fit the asset. However, excessive stretching should be avoided. I really enjoyed working with trim sheets and would like to build more of my future environment art pipeline around them, as they're an incredibly powerful tool for adding detail efficiently.

Around this time I also discovered Cable Actors in Unreal Engine. (I would end up fighting with them for quite a while during rendering — but I didn't know that yet, so I enthusiastically placed cables all over the environment.) After that came a lot of routine work adding secondary props. The environment simply felt too empty without them. I added ventilation units, technical equipment, and many other small assets.

Megascans helped tremendously — I used vegetation along with props such as benches, small tools, rocks, and other supporting assets. I also added more hanging fabrics, which are commonly found in Middle Eastern markets, to provide shade from the intense sunlight. Just like the market canopies, these cloth pieces were simulated in Marvelous Designer using the Sew tool and pressure simulation to create realistic folds along the stitched seams.

I sculpted several rocks in ZBrush and used them to build stone pathways by rotating, mirroring, and scaling the meshes. Finally, I used Unreal Engine's Foliage Tool to distribute the grass and rocks throughout the scene.

Improving the Scene

At that point, I thought the project was finished — but I knew it could still be improved. The first thing that stood out was the excessive contrast. This becomes especially obvious if you temporarily switch the scene to grayscale. Strong contrast isn't inherently bad, but it has to be carefully controlled. Otherwise, the environment stops feeling cohesive. The background, in particular, shouldn't constantly draw the player's attention.

To address this, I began balancing the background using a Color Exposure parameter that I'd previously exposed in my master shader. I also adjusted the wood and other materials so their overall values became more consistent wherever possible. This reduced the harsh contrast and made the scene feel much more unified. I also revisited several wooden assets, sculpting additional details and introducing more natural color variation.

Most of the work, however, went into redesigning the ground. The original idea with large rock formations simply didn't make sense — massive boulders in the middle of city streets felt completely out of place. I removed both the rocks and the stairs. Instead of relying solely on the Foliage Tool to scatter grass and stones, I manually refined their placement to create more believable clusters. Along the edges of the streets, rocks naturally accumulate in the sand between the buildings, and that's also where grass would realistically grow.

It would have looked strange to find isolated bushes emerging from the middle of paved stone paths. I also created a small environmental composition where one of the ventilation units had previously been placed. The wooden planks from that area were later reused throughout the surrounding buildings. They were sculpted in ZBrush, heavily decimated, UV unwrapped, and baked. Below is a comparison between the high-poly version and the decimated low-poly mesh.

I also made a few improvements to the doors and turned them into double-sided assets to increase variation. At this stage, every minute counted.

The view of the scene at that moment:

I decided to enhance the scene further using Niagara particle effects. I wouldn't call myself a VFX artist, so I followed several tutorials and mainly adjusted the parameters to fit my environment. I added wind effects along with a heat distortion effect that simulates the shimmering air caused by rising hot air. These effects were placed in the background and around the ventilation units. They're much easier to appreciate in the video than in still images.

After all of that, I made the final lighting adjustments. I selected an HDRI with a sky that matched the mood I wanted, fine-tuned the Directional Light, and adjusted settings such as Bloom and Exponential Height Fog. I also used localized fog volumes around the bar to add atmospheric depth. In practice, these fog volumes are simply geometric meshes — cones or other shapes — with translucent opacity materials applied to them.

Later, I discovered the excellent Virtual Camera (VCam) tool. It took me an entire day to configure it properly, but it was absolutely worth the effort. The application lets you record camera movement directly from your phone in real time. I literally walked around my dorm room while recording the cinematic shots, as if I were physically moving through the environment. The image below shows just how many keyframes were generated during a single take — the camera recorded every movement automatically.

Now, back to the Cable Actors. During rendering, they started behaving completely unpredictably because Unreal Engine would simulate them again for every render. I rendered the project using Movie Render Queue (MRQ), since it allows you to add advanced rendering settings and significantly improve image quality while minimizing artifacts.

Below are my MRQ settings. There are plenty of excellent YouTube tutorials covering each of these options in detail, so I won't go through every parameter individually.

To eliminate the unpredictable behavior of the cables during rendering, I adjusted the Anti-Aliasing settings, specifically the Engine Warm Up Count. This parameter determines how many frames Unreal Engine renders before recording the final output, allowing all simulations to stabilize. This applies not only to Cable Actors but also to effects such as heat distortion and wind. (For Niagara systems, warm-up can be enabled directly within the system itself — I set it to the maximum value of 9.96 seconds.) After some experimentation, I found that a warm-up count of 120 produced stable results.

I also spent some time experimenting with Spatial Sample Count and Temporal Sample Count. Spatial samples primarily improve the quality of static geometry, producing sharper and cleaner images, while temporal samples mainly affect moving elements such as the animated cloth, wind, and heat distortion. I was surprised to see how much difference increasing the Temporal Sample Count to just 3–4 made — the animation immediately became much smoother and more natural. The downside, however, was render time. On my relatively modest PC, a 40-second cinematic took nearly two hours to render.

Even after that, I felt the final renders could still be improved. Ever since I started creating my first prop renders, I've always enjoyed post-processing. This project was also my introduction to DaVinci Resolve. Previously, I had done all my post-processing in Photoshop, but Resolve turned out to be a much more powerful and comprehensive tool. One recommendation I'd give to anyone planning to work in DaVinci Resolve is to render your images in the EXR format. Although the files are considerably larger, they preserve a much wider dynamic range and significantly more exposure information, allowing Resolve to make full use of that data during color grading.

The first thing I noticed on the scopes was that the image contained far too much red. While the environment is set in a desert, the warm tones were still overpowering the overall look. I reduced the Temperature value into the negative range, then created separate masks to improve the lighting around the bar, adjusting parameters such as Highlights, Bloom, and others. I also added a stronger bloom effect to the light fixtures. Lowering the temperature caused the already blue sky to shift toward an indigo hue. To fix this, I used the HSL Qualifier to isolate the colors of the sky, then refined the selection with the Window tool so the correction wouldn't affect other blue elements in the scene, such as the painted wooden boards or the decorative architectural patterns.

Finally, I applied a subtle sharpen effect to the overall image along with a slight blur in the areas surrounding the bar to enhance the sense of depth. I won't go through the entire post-processing workflow here, since there are already countless excellent DaVinci Resolve tutorials available online, and the software itself is surprisingly approachable. I'll only mention that for the cinematic shots I relied heavily on tracked masks, refining them according to the movement of the camera throughout each sequence.

The screenshot below shows what the overall post-processing workflow looked like:

Conclusion

This turned into a very long article — I hope it wasn't too boring, and I also hope someone actually made it all the way to this paragraph. This project took me almost an entire year to complete – about 360 days. Of course, I wasn't working on it every single day, and during that time I was also finishing my bachelor's degree at university, so my available time was fairly limited.

The biggest lesson I learned from this project is surprisingly simple: don't make environments this large. Seriously. Working on the same scene for such a long period is incredibly demanding. If you're just starting in environment art, I'd recommend choosing smaller concepts. Focus on quality rather than quantity.

The only advice I'd like to give to beginners is to never give up and keep improving. You've seen how rough this project looked in its early stages compared to the final result. Don't be afraid to redo your work, and always rely on good references — they're one of the most important tools you have. Believe in yourself, and don't be afraid to work at your own pace.

Matvey Meleshko, Environment Artist

Interview conducted by Emma Collins

Built for the Game & Digital Art Industry
Get Our Media Kit

Comments

0

arrow
Type your comment here
Leave Comment
Built for the Game & Digital Art Industry
Get Our Media Kit

We need your consent

We use cookies on this website to make your browsing experience better. By using the site you agree to our use of cookies.Learn more