Bohdan Levochko discussed how he created the SIG MPX gun using ZBrush, Blender, Substance 3D Painter, and Marmoset Toolbag, described his ideal pipeline for creating objects, and showed his weapon texturing workflow.
Introduction
Hello, dear friends. My name is Bohdan, and I’m a 3D Weapon Artist. I’ve been working in 3D for 4 years now, and I’d like to share a bit about how I got into this field.
I studied programming in college, and I had a friend who was developing games on his own. I decided to team up with him and start creating games together. We developed several of our own projects, but soon, we had to stop due to financial reasons. Left on my own, I began creating various 3D objects in Blender. I taught myself this software for about two years, creating different scenes, small objects, interiors, and exteriors. I focused on self-improvement across different social media platforms to gain visibility and attract freelance projects. This helped me sharpen my Blender skills.
Alongside freelance work, I was building my portfolio, which consisted of various scenes, characters, props, and weapons. All the renders, models, and textures were created in Blender. However, I realized that my work wasn’t resonating with others as much as I’d hoped because I wasn’t using Substance 3D Painter. After that realization, I started learning this software, and I really enjoyed creating beautiful textures, which motivated me to keep improving.
I spent a long time searching for my path in 3D, and it was only about a year ago that I discovered my passion for creating weapons and texturing them.
SIG MPX
I love playing different games, and one day, my friends and I decided to play Call of Duty: Warzone. There, I saw a beautifully balanced weapon called the "SUPERI 46." I became fascinated by it and decided to find a similar weapon with a similar shape. I had the following weapon options:
- SIG MPX
- B&T SPC9
- SIG Sauer MCX
- Brügger & Thomet GHM9
I found some very beautiful images of the SIG MPX with various attachments. I gathered as many references as possible, with around 20 to 50 photos for each attachment. To better understand how the weapon works and to collect more references, I watched a lot of videos on YouTube. I start by gathering reference blueprints of the weapon. To find these, you need to visit the official website of the weapon manufacturer and search for the manual of your model. For my model, I found a large number of blueprint photos and texture references. Here are some useful sites for finding references:
Plasticity
In my opinion, this program is the best for developing hard surface objects. I started learning it because hard surface modeling in Blender was very challenging for me, so I switched to CAD. I like Plasticity for its simplicity – it's very easy and fast to create any complex-shaped object. It took me about three months of learning this software to achieve the modeling results I wanted.
Modeling
After gathering a large number of references, I load them into Plasticity and adjust the size of the blueprints to work comfortably and accurately. I often used ChatGPT to help with various tasks. For example, if I couldn't find the exact dimensions of a magazine I was working on, I turned to AI. It can quickly help find a website with the correct dimensions or provide the necessary size of an object.
I used several programs to create my weapon:
- PureRef
- Plasticity
- Blender
- PiXYZ
- ZBrush
- RizomUV
- Marmoset Toolbag
- Substance 3D Painter
- Topaz Gigapixel
To create the weapon, I first learned how to model a bullet and then adjust the dimensions of the weapon around it.
Important! When you search for blueprint images of bullets, most of the photos are inaccurate. Therefore, you need to create an exact bullet based on blueprints. I learned from my mistakes that photos often do not reflect the actual dimensions!
Creating the weapon itself didn’t present many difficulties, but modeling the grip in CAD was challenging for me. My colleagues suggested creating it in Blender, but I decided to model the entire weapon in CAD. I think people who work in CAD know there are many different ways to create an object. I chose to model the grip from small parts, then merged them into one and added chamfers. Of course, I also made use of Loft during the process.
I created the grip as best I could, and to save time, I imported it into ZBrush to refine the shape using the Smooth brush. This allowed me to avoid spending unnecessary time trying to create an exact copy in Plasticity.
Creating this weapon was a challenge for me because most of my previous work consisted of smaller objects, where I focused on learning texturing. In this case, with the weapon, I was more focused on learning the technical aspects, particularly modeling.
Topology & Unwrapping
I found an ideal pipeline for creating objects. First, I create the object in CAD and then import the model into PiXYZ, which automatically generates a low-poly model. Of course, some manual work is still needed to optimize certain details, but this process is much easier for me than importing a 3D model from Plasticity using the Bridge addon. After going through the pipeline with PiXYZ, I "clean up" the model by removing unnecessary vertices and edges. This process isn’t fast, but I find it relaxing.
When it comes to UV unwrapping, I work in Blender and RizomUV. First, in Blender, I plan and distribute the object into UV sets to ensure a consistent texel density. In my case, the texel density was 80 pixels per centimeter, and the weapon required three UV sets, with a few overlaps on the scope (specifically between the lenses). I use Blender’s automatic seam placement tool, which places seams on hard edges, and I perform the initial unwrapping in Blender. Then, I import the weapon into RizomUV to continue the process there.
It's important to create a tightly packed UV layout and align each detail carefully. I try to unfold all circular shapes into a flat surface. To save time in unwrapping, it's best to import the 3D model in quads for better performance, as RizomUV handles quads much more efficiently than triangles.
For texture baking, you should use a model made up of triangles. The same model should be used in Substance 3D Painter to avoid UV stretching.
Texturing
My favorite task is creating textures, and I can talk about it for a long time, but I’ll tell you the key elements I use every day.
First of all, as I mentioned earlier, we need to gather a large number of references to see every detail of the weapon or its element in order to convey the textures accurately. From quality references, we can also extract information about the black-and-white alpha channel. I believe this is fairly common knowledge on how to create an alpha from a photo, which you can easily find available online.
For the textures you want, you need to start with a wide range of base colors and shades. For example, if we are working with black, I use various tones of gray, dark, and light, as well as purple, green, and red hues, which, in my opinion, work best with black. Similarly, when we "break down" our texture with different colors, we also need to change the roughness of each part of the weapon; it should vary.
Also, if I'm creating a portfolio prop, I import it into Marmoset Toolbag, where I immediately look at the result and adjust the textures for rendering.
Let’s examine one part of the weapon where I’ll show you an example of how I create textures.
First, I break the whole model into different colors and roughness.
Next, I add damage, which can range from surface-level scratches down to the base material or metal, and also small damages that only affect the roughness. Here’s how the metallic map looks on my weapon.
Looking at this part of the weapon, here’s how I created the damage:
Base color of the part
As I mentioned above, you first need to establish a base color by breaking it into different colors and roughness. Then, I layer in various metal colors, which change due to heat.
At the start of your fill layers, you should also add the MatFinish Powder Coated filter, which gives the metal a textured look. Usually, I don’t apply a strong effect because it can make your texture too noisy. Here are the parameters I used on my weapon.
The next layers above in the list may override this effect. To prevent this, set the normal value in the normal settings.
I use many different layers that can override this effect. In some places, the coverage is 100%, while in others it is only 10%. In areas where the damage has reached the metal, I override this effect 100%.
With the base complete, I create a roughness folder for convenience and draw details like oil marks, fingerprints, and surface wear. I also adjust the color of the stains, mostly using alpha channels. I only manually paint around the pins with a smooth noisy brush.
You need to understand the areas where the weapon interacts with a person’s hands. In these areas, I paint different types of wear or grease marks with a brush. For hard-to-reach places, I can manually paint them with a regular brush.
After working on roughness, I create a damage folder, where I create a fill layer with the following settings:
I usually reduce the base color. When working with damage, especially if it’s for a portfolio piece, I review it in Marmoset Toolbag with scene settings and environment lighting, which we’ll cover later. This is done to understand how the final result will look and to check whether the color or roughness is oversaturated.
I also don’t use just one metal color; I use different subtle shades and roughness. Generally, every new fill layer I add is different in all parameters from the previous one. I don’t use height maps for damages that reach the metal because the paint and primer layers are very thin. Of course, the references I gathered didn’t have the details I wanted, so I had to imagine a lot. It’s important to understand that you can’t just add damage randomly; it has to make sense.
For example, this scratch, in my mind, was caused by the person using the weapon laying it down on rocks, which rubbed against it and created this beautiful scratch.
In the references for black weapons, I didn’t find beautiful details, so I decided to combine elements from painted weapons and took this reference to create the following damage.
Here are several layers with different colors, painted using an alpha. In this way, I paint every piece of damage and dirt on my weapon with different colors and levels of metal in the required places.
I also use this type of dirt. Here are the settings for this material.
First, I create large details, then medium and small ones. It’s also important to remember that small details add realism: little paint chips, tiny amounts of dust – I always use these details in my work.
To achieve this effect, I first add dirt with the following settings in hard-to-reach places. For this, I use a Smart Mask. You can also create a smart material for dust and dirt and use it on other textures. Next, I add an anchor point that we’ll use later for a large number of spots, which will serve as our dust.
Then, I add a fill layer, use the anchor I created for dirt in hard-to-reach places, and create the color for our dust. Here are the settings I used in my work.
I use Dirt 3 and 5 textures. After adding Dirt 5, I adjust the levels to fine-tune the spots, increasing or decreasing their amount depending on the situation and where they should be. I copy the fill with spots and change the size, number of spots, and color to vary the dust. I shift the tint to brown or red.
I also used a new method for dirt in my work. Here’s how it looks:
Here are the settings for the base material.
First, I painted the areas on the object where dirt might accumulate. Then I added levels and used these settings. Afterward, I added a blur filter with an intensity of 0.05, duplicated the levels, and added an anchor to break up the color. I added white, orange, and brown tones.
When I finish with the textures, I need to create a nice picture of my object. I constantly review the results in Marmoset Toolbag. At the end of all the layers, I add a brush with the "Passthrough" blending mode, apply it to all channels, add levels for roughness, and set the following parameters.
To this layer, I also add a sharpen filter (set to 0.47) and an HSL Perceptive filter, adjusting only the saturation to add a bit more contrast and vibrant shades to the model.
Rendering
I use Marmoset Toolbag to render my objects. Before this, I always used Blender, but experience has shown that it’s faster to set up a scene in Marmoset's software.
Here are my render settings:
In the scene, I use only one HDRI map – Peppermint Powerplant – my favorite map, which adds beautiful, subtle hints of various colors. I use colorful HDRI maps to make my work feel alive. To properly adjust the lighting, I first rotate my scene and try to capture beautiful light and shadow, ensuring a smooth transition between light and shadow and a nice shine on the metal. I start by positioning the camera in a way that I like, then adjust the HDRI. If the lighting doesn’t fall as I’d like, I select the entire scene – in my case, the weapon, the wood, and the plane with the texture – and rotate it along with the camera. Marmoset has a limitation where the map can only rotate on the Z-axis. Maybe there are other ways to handle this, but I rotate the whole scene and camera to capture the perfect lighting.
It took me a long time to choose the scene for rendering my weapon. I like wood; it beautifully livens up the image. So, I went into Bridge and found a high-quality prop for my scene.
After creating beautiful images, I import them into Lightroom, where I slightly enhance the saturation and adjust the colors and shadows.
Conclusion
Creating this weapon was an exciting and challenging task. I often shared my progress with my colleagues in the MykhailykArt Discord, where they gave me different insights and feedback.
I combined developing the weapon with work and life, so I don’t have an exact time frame for how long it took me to create it. In total, it took about two months of development, considering life and work obligations.
What I liked the most about my work were the textures, of course. I often like to revisit the scene where I did the render, analyzing the textures.
I’ve learned to always listen to each colleague’s opinion. Everyone can point out some details; different people see things differently. It’s important to pay attention to feedback, even from people without experience in weapon and texture development.
The main keys to creating a weapon are gathering a large number of references and receiving feedback from colleagues. You should always be learning and not afraid to try a new program or a new method of texturing. If you’ve been texturing in Metal Roughness, try Specular Gloss. It’s very useful to change your method of developing textures or 3D models because a new pipeline might be better suited for you.
I didn’t attend courses or go to school for 3D. I learned everything on my own and with the help of my colleagues. I’m very happy to have found such a circle of people who are always ready to help. I also share my knowledge with people and colleagues who need it. To achieve results, you only need motivation and desire – it’s a cliché, but these are the two things that can help you accomplish your goals and dreams. I wish everyone to find their path in 3D.
I would also like to thank the 80 Level community and its readers for giving me the opportunity to share my journey and the creation of my 3D model.