Bhanu Singh talked about the production of his first 3D weapon Wingman: sub-d modeling with smoothing groups, UVs, metal and wood materials, presentation in Marmoset Toolbag, and more.
In case you missed it
You might find these articles interesting
Hello everyone! My name is Bhanu Singh. I am a 3D Artist from New Delhi, India, specializing in Environments and Props. I studied 3D Art at M.A.A.C (Maya Academy of Advanced Cinematics) Janakpuri, New Delhi, India. After completing my studies, I landed a 3D modeling and texturing internship at Simulanis Solution Pvt. Ltd. in 2019 where I create 3D assets for VR training modules. After spending almost 5 months there, I realized that I was more passionate about making 3D assets for games rather than for training, film, or animation. As soon as I completed my internship, I started building my own game portfolio aiming to get into the video game industry.
Wingman: Inspiration and Start of the Project
I’ve played lots of games, some of my favorites are Prince of Persia, Tomb Raider, Rainbow Six Siege, and Tekken 7. I thought to give Apex Legends a try as well and enjoyed it a lot. There, I found this amazing tiny gun called “Wingman” that can deal a huge amount of damage with a single shot. This amazing game inspired me and I decided to recreate the “Wingman” gun. I was really excited about this project as it was going to be my first weapon. This prop was neither simple nor complex but I knew I could take it to the next level since I’d already started practicing creating assets for games.
I started the project by gathering some references on ArtStation. My main goal was to learn techniques for baking, using floaters, sub-d modeling with smoothing groups, lighting, and presenting props. To avoid burnout, I also look for inspiration on ArtStation where I found some cool images of Simon Fuchs’ handgun. I really loved how he presented it with yellow, orange, and blue tones, so I wanted to achieve that as well.
Back then I didn’t know how to use ZBrush so I only used Maya – and plugins for it whenever needed – to create this gun.
I started modeling by simply tracing the reference to get some basic 2D shape out of it. The shapes define the elements in the blockout and simplify things. This process helps me to create complex parts like the handle (grip) of the gun easily. If the reference is not traceable then I move directly to the blockout stage and after getting the basic shape of the gun, I start giving it some 3D volume. After doing this, I take a good look at the model and if it seems alright and matches the reference, I symmetrize the mesh wherever necessary to complete the blockout. Before finishing the blockout, I also decide where I will use normal map details and where not, so that I can save time at the high and low poly creation stages. We can determine this just by analyzing the silhouette of the mesh.
I then move on to creating the high poly and low poly versions from the blockout. For the high poly, I used sub-d modeling in combination with smoothing groups. I learned this technique from Tim Bergholz’s High Poly Special video:
Although Tim uses smoothing groups in combination with the Chamfer and Turbosmooth modifiers in 3ds Max, I tried replicating the same process in Maya with automatic hard edge script from playcreative.io. So to create the high-poly, I simply take my blockout mesh and assign hard and smooth edges wherever needed. After that, I use automatic hard-edge selection, bevel the selected hard edges, and then use a smooth modifier on top of that. I also made good use of floaters, they can help to create unique details easily which makes the high poly look more appealing and you'll also get nice bakes.
My goal was to have fun with sub-d modeling, so I didn’t care much about topology for the high poly and only looked for distortion and artifacts in the mesh.
UVs were pretty straightforward, I also used Maya to create them. Since I was making a game-ready model, I had to be aware of the smoothing groups. I cut UV shells according to the smoothing groups otherwise it'd give me weird gradient shading in the Normal map. I simply used camera projection and broke UV shells according to the hard edges of the mesh. I also tried to keep UVs as straight as possible while laying them out for clean baking. I organized and named all my low and high poly meshes with the correct suffixes, created material IDs, and was ready to go.
Baking was done in Marmoset Toolbag. The reason why I use Toolbag is that you can paint skews and correct artifacts in real-time there which saves a lot of time. I created important maps like Normal, Ambient Occlusion, and Curvature, the rest was baked in Substance Painter.
I set up my main metal material in Substance Painter by adding a fill layer and using MatFinish rough filter on top of that. This gives your metal some normal and roughness variation. After that, it was just a matter of adding tone color variation, general dirt, grime, edge wear/highlight, and more roughness variation to finish up the material. I added these layers as I wanted to make the “Wingman” look like it has been used a lot. The creation of the metal material was the most challenging task for me because it was going to be used on almost 80% of the weapon. Once I was done with it, I looked for places where it could be reused.
For the wooden part of the handle, I used Substance's default wood material and tweaked its parameters to get the desired output. For wear and grime on the wood, I created two versions of the material, dark and normal, and then used the metal edge wear generator to get some wear and color variation. I find it easy to add height details/decals in Substance Painter.
I also used anchor points to add some edge wear/highlights in height details. Below is a good tutorial on anchor points from Substance.
The most important step is presentation, this is the stage where you can see the final look of your asset. I used Marmoset Toolbag to render the gun. This software is really great for presenting game-ready assets.
To create an appealing render, I used the lighting setup from the reference that I gathered initially. I wanted to present my gun with blue and orange-yellow tones. I set the camera field of view from 45 to 15 – this will show details of your textures pretty nicely – and started placing my lights. I usually work with spotlights and Omni lights. I started with 3-point lighting and kept on adding lights according to what I wanted to see in the output. I used some Omni lights to highlight the specific parts of the gun and enhance the asset. I also changed tone mapping from linear to ACES as it provides better contrast and tweaked curves to further refine lighting. Before taking any screenshots, I changed the render resolution from 1:1 to 1:2. This is overkill but can be good for a portfolio piece; it can also help you get some crispy details.
Finally, I move on to improving raw renders and creating portfolio-ready images. I do this in Photoshop creating the effects I don’t use in Toolbag like bloom and sharpen. Creating these in Photoshop can give you more control and flexibility. I add more effects, do some color adjustment, preview my final image and save it for the web.
Challenges and Lessons Learned
I faced some challenges during the texturing stage as it was my first time using multiple layers for one single material. It took a lot of iterations to get the desired metal and wood materials. There were also times when I felt burned-out, so to keep it together, I looked for inspiration on ArtStation, played Apex Legends, and took some breaks from working on the same thing, again and again. I think that way, you can give yourself some time, avoid burnout, and come back to the project with a fresh head.
In the end, I practiced all the things that I decided to learn at the beginning of this project. I also learned to maintain the authenticity of my own work; initially, I thought I should follow the reference strictly but then I started adding my own elements and I achieved better results.