Gun Production with ZBrush & Substance Painter

Gun Production with ZBrush & Substance Painter

Mauricio Llano shared the pipeline of his gun production within CGMA course Weapons and Props for Games lectured by Ethan Hiley. Sofware used: ZBrush, Substance Painter, Toolbag.


Hi, my name is Mauricio Llano, I am a 3D game artist looking for a job in the industry. I’ve done two internships, one with Lee Lanier for animation and VFX and the second in the amazing outsource company CGBot. The latter is where I fell in love with doing art for games. The pipeline and challenges just resonated with me instantly.

I’m also an avid reader of, probably for almost two years now. I read it even before graduating when I self-learned Substance. is the best place to learn! Here I also found out about CGMA. I decided to take a course, and at first, I wanted to go for environment art. But then I realized that I needed to polish my skills on single assets first and found Weapons and Props with Ethan Hiley the best option. If anyone of you is thinking of taking any course, feel confident that it is worth it. What you learn is a real deal and you learn amazing tricks from industry professionals.


I think what makes the guns look different, even if they start with the same model is what references you use and also a bit of personal taste. Here’s why the instructor points out that it’s very important to find the right reference. Also, something I’ve learned during my internship is that you are not always going to find the references with all the views (Front, side, etc). So, you have to learn to feel depth and width with minimal reference.

I like to get a ton of reference before starting modeling, especially getting high res shots for side and perspective as those are the main ones you use to model 80% of the actual gun. I also like to get the shots of the parts not everyone is familiar with. Especially from not so common angles like the underneath or the exposed barrel when the slide is pulled back. Another tip is to search on YouTube (for photos use Google, Pinterest, or sites where they sell what you are modeling), even if the video isn’t 4K you will get a good understanding on how it actually works. It also helps a lot when nailing the width and overall feel.

*Main reference board, note that not all are the exact same model but still share a lot in common. PureRef.

Like I’ve said before, getting references is crucial, make sure you get all levels of detail. Sometimes you can forget about the overall shape and focus on challenging micro details. But you must remember that in the end the player will care more about the silhouette and those details are only the cherry on the cake.

I personally import only high res side shots and perspective shots. It’s almost impossible to match perfectly similar photos (left side and right side, for example) so don’t get too attached.


For the blockout the single most important thing is the silhouette from all angles. This includes width, primary and secondary shapes and also understanding how it will be animated.

*First blockout. You can see the gun is overall too thick and seems too clunky.

In my opinion, the process of modeling should be done in whatever way you feel more comfortable with. For example, I like to combine poly modeling and box modeling. I use boxes, cut them in half and use an instance to see the volume results without having to mirror anything manually.

We all make mistakes, and I made one in the blockout. I went in and modeled the sections from inside the slide and that took a lot of time that should’ve been used more efficiently. Still, don’t be afraid to try new things, because we learn from mistakes and become better!

I also unsuccessfully tried to use Boolean shapes inside Maya. I either love or hate it, so in the end, I just went with traditional cutting and pulling verts to achieve what I wanted.

*Boolean went wrong. Never forget to do them on closed geometry!

High Poly

*Week 2 entry. Here the blockout is almost final.

*Old high poly. Loops weren’t well placed and it took too much time to create bevels without creating pinching.

Here’s where the class really opened my eyes. Normally, I make a high poly entirely inside ZBrush, but this was my first hard surface item and this is where I made my biggest mistake. Since I was too afraid to try ZBrush out, I relied on traditional edge loops and Maya’s smoothing preview to see how the high poly would look like. However, as the blockout was built with a lot of details like grooves on the slide, etc. they messed up my topology. Another mistake during the blockout was that I tried to save on tri-count. You can imagine the nightmare when I tried to fix the loops.

So, it’s here where I took the decision to re-do everything taking close note of the instructor’s workflow this time. That’s where DynaMesh and Booleans saved the day. I built simple geometry and subtracted / added them to create complex pieces. I also liked that in ZBrush you can easily polish or round up the edges, so can achieve even edge thickness without much difficulty like manually adding loops. Make your edges smoother than the real-life counterpart so your normal map doesn’t look too sharp.

*New high poly for the slide was built using simple shapes and subtracting them inside ZBrush. The blockout was used as a guideline to make sure proportions where on point. Also, the blockout will help to do the low poly later.

*Finished and decimated result from ZBrush. Note that not all of the high poly was done this way. Simple assets like the bullet, pins, etc. were built with loops and traditional turbo smooth.

*Mistakes from the booleans. They are easy to fix: modify the geo that’s been used for the boolean operation inside Maya then re-do the operation inside ZBrush.

*Finished clean and decimated high poly.


*Finished low poly with UVs. Using a 2K checker. Avoid stretching if you can. A minimal amount for non-vital parts is allowed, like the magazine which will only be seen for a short period of time.

A neat trick here is to always begin with the biggest pieces first. Nightshade UV Editor is quite good and you should definitely try it out. It will speed up your workflow and also has a lot of tools easier compared to Maya’s default editor. As for the actual process, I use planar mapping almost entirely even with organic models.

For this specific gun, I first did a planar to the entire model, then started with big pieces, putting them into another quadrant rather than the main so I didn’t clutter the grid each time I did a new planar operation. I just kept doing this process until 80%-90% of the pieces were done. Then I start laying out the biggest pieces and finishing unwrapping the little ones. At this point, Ethan did tell me that some pieces wouldn’t ever be seen so I just deleted them. As artists, we must try to get the best texel density and be as consistent as possible. The only places where you can get away with lower density are inside pieces that would only be visible for a fraction of a second.

*UVs of the gun. Pink/Purple pieces are stacked UVs. Be sure to check if the baking program you are using requires you to move stacked shells to other quadrants.

As you can imagine stacking UVs is crucial and here you can take the advantage of the gun’s symmetry. For my XDM model, I stacked the handle and almost all the magazine since it is not visible for a long period of time. On the other hand, if it is a First Person Shooter do not mirror UVs that are going to be directly in front of the player’s face like the sights or back of the gun.


For texturing Substance Painter is an amazing tool. I still recommend Marmoset Toolbag 3 for baking as it has the skew paint tool and it’s fast. Just remember to do your baking groups correctly or you will have projection errors. And finally when you do the AO baking make sure that moving parts are not baked with non-moving. For example, the slide and the barrel.

Now for the texturing inside Substance Painter, it’s important that you start with the material definition and hitting the Metallic and Roughness values first (or Spec / Gloss) because sometimes the albedo can distract you. Using simple fill layers you should be able to recreate the material. Here’s where the references with different lighting conditions will tell you how the material reacts to light. Also, remember to change the default parameters if you are using presets. It’s easy to tell when an artist leaves the settings by default.

*Normal map and AO baked inside Marmoset Toolbag 3.

*Baked Curvature. Note that some errors are visible. I erased them by hand, this also breaks the procedural nature of the smart masks and the “all along the edge grunge” effect.

*Texturing References

I tried to find the user’s manual of the real gun to understand the materials and watched a lot of videos to get a grasp on how they would wear down. I went for a well-treated but not brand-new look. Ethan also taught us to use textures, lay them on top to get an uneven surface that looks more interesting.

*Deep look into my texturing layers. Note all the fill layers with masks applied. Think of how the real thing is made and used. I personally use both additive and subtractive workflow.

*Simple primary variation of the roughness. You can see all the paint layers and adjustments that I do by hand.

*Height Details are kept at the bottom of the stack.

I like to work in Designer for tiling textures and that’s where I learned from amazing Josh Lynch to work first on Roughness. As with PBR, this will sell your material work. Painter, on the other hand, is superb for doing assets like the gun. You have a ton of control over the whole process. What I like to do is to use fill layers, masks and paint layers inside those masks. This way I can add or subtract details. You can do this a lot with the smart masks so they don’t look procedural.

*Materials should look real under different lighting conditions.

A small tip that sometimes can help is to change your 3D view / environment. The asset doesn’t have to look appealing in different environments but it should look physically correct if you are working with PBR shaders. Also as Ethan pointed out during the course, be sure to invest in high-quality textures. For example, a good photo scan of scratches like this can save your life! And they also help to add subtle changes to roughness.

*Finished Gun.


For details, namely emblems, we used Photoshop to create a b&w sheet that you can bring into Painter and use as a mask. Again, the use of fill layers is something I personally use every time.

The text was created the same way. But for some emblems, I used Illustrator as it has some neat auto roundness options for corners. At this point, I noticed that some of the emblems were too detailed for the texel density I had and it made the projections look pixelated. A pro tip here is to add Blur filter to that layer so that it balances out the edges.

*Blur applied to the graving. I do this to all the projected details to blend them with the surface better.

*Stencil used for the gun.


*Blur applied to the graving. I do this to all the projected details to blend them with the surface better.

Of course, it depends on the project whether you need to think about animation or not. When it comes to animation, here’s where remembering those details like making the slide snap where it should, the magazine actually fitting or not baking AO where moving parts meet is crucial. If you are working on a game, make sure to get the asset into the engine ASAP to save the time and compare the piece to other assets. Finally make sure the animator, rigger and game programmer are on the same page, and all the moving pieces are included. It takes some time to set the gun up, and if it turns out that the process has to be re-done it’ll be quite unpleasant for everyone.


For the rendering and presentation, I again like to look for references and inspiration. I collect ArtStation works that I love and analyze them looking for patterns and good compositions. For example, I get inspired by artists like Alex Khaliman and Stefan Engdahl.

I went on making a small scene where I could showcase the model with all its abilities. That’s why I had one gun with the slide locked back, one magazine with bullets outside and the other gun without the Docter sight attached. The most challenging part is to create a composition and make the ground plane go along with the asset without drawing attention from it.

The lighting reference is key. The mood I went fro was neutral and realistic. I used a combination of subtle warm and cold lights. Another thing that sells gun photos is the use of backlights or rim lights shining at the corners or edges. This way you can give a sense of volume through light and show off your work with the low poly + normal map.

I must admit that this process is probably as long as making the asset itself. I did around 3-4 scenes before the final one. By the way, when using Marmoset or any other package take advantage of animating the lights and cameras. Thus you can take several approaches without having to CTRL+Z all the time plus it saves you from accidentally moving the camera.

*Evolution of the Scene shot, left to right.

*Simple lighting. Side shot.

*Lighting for the Thumbnail image.

*You can see the cameras for each shot here.


When thinking about taking a CGMA course, first I wasn’t sure, to be honest. I saw that they had amazing instructors but I hesitated. Now I can tell you that it is well worth it. A lot of people say that any kind of knowledge can be acquired from online research alone. It is partially true, you can totally go that road. However, the time it will take you is huge and also you may find misinformation. Here at CGMA you are being taught real-life workflows, techniques and, – most importantly, – you have a chance to ask industry experts and get feedback from them. This alone will get your quality and speed up.

Finally, if you think that you already know the stuff that’s covered during the course, you should still consider signing up. There are always a few little tricks you can learn, and your quality will go up because the instructor will push you further.