08 February 2021

AKS-74U – Weapon Modelling and Lighting – Adrian Moreno


Hello everyone!

My name is Adrian Moreno Brotons, I am 26 years old and I am currently working as a Regular Prop and Environmentartist at Elite3D (Valencia).

Currently, I am dedicated to making props but I would like to be able to work also making weapons, that’s why I made this AKS-74U, to practice the workflow of the hard surface more.

In this article, I will try to give you a step by step (to the best of my ability) the process that I did to create this weapon. As I said before, I am learning new things to incorporate them into the workflow, so many things that I have done in this project could be done differently.

The points that I will talk about will be:


2.Creation of the Low poly model ready to go to high poly (3Ds max)

3.Creation of the high poly (trying different techniques) (3Ds max and Zbrush)

4.Unwrap learning a new program (RizomUV)

5.Baking ( Marmoset Toolbag 4)

6.Texturing (Substance Painter)

7.Rendering and Lighting (Marmoset Toolbag 4)

8.PostProcess (Photoshop)


My main goal in this project was to create a weapon that is as faithful to reality as possible to practice the hard surface workflow and the idea came to me when I was playing the Code MW and using the AKS-74U.

The first thing I did was look for as many references of said weapon to know exactly how it was everywhere and that no detail escaped me. For this type of more realistic thing, it is always better to take real references than to look at a 3D model. This always comes in handy to see certain areas of the weapon that maybe with the photos you do not know how, but always, your main reference has to be the real photos.


Creating the Low Poly

This phase would really be done after doing the high poly, but as I said before, this is my usual workflow and I’m trying to adapt to the hard surface style. I always, with any prop, start by doing the low, but it is low that will almost have the geometry that I will use at the end of the modeling stage.

The first thing I always do before modeling is to use one of the background references to the model above, this is to keep the measurements of each piece well controlled, never do it by eye.


Once we have our background image on, we freeze it so that it does not move out of position and now we can begin modeling. I always try to see each piece as simple as possible, for example, the barrel would be a cylinder and then I would add geometry in the areas that I need to give it the shape. Always start with simple shapes, go from less geometry to more, because vice versa is more complicated.


Maybe you see geometry that could be simplified, but as I said before, I don’t worry too much about geo because then I have to do the high, and for this, a geometry in quads is much better than in triangles to avoid pinching.

High Poly Creation

Like I said previously, making the high poly in my opinion is better to do before making the Low poly. It is about making the basic shapes in the program you use (3Ds max in my case) together with the shapes of the Boolean that you have, then take everything into Zbrush and use the Live Boolean there to make the holes you need.

I am not going to delve much into this process since i used a combination of processes rather than just this one. I only did this in certain pieces to learn the workflow a little better. After creating the High Poly, the first thing I did once I had the Low poly, is to make sure that all the smoothings groups were correctly added since this is what will help us to get our containment geometry where we want it.

Once we have the smoothing groups in place, we will add the Chamfer modifier piece by piece (to control the geometry well in each case). With the modifier applied and configured to our liking, we can now put the TurboSmooth modifier on top (I always set it to 2).

This is the way I made almost the entire weapon, but as I said before, I also tried using Zbrush in my workflow in the way I mentioned at the beginning.

The pieces are more geometric, but this is a way to avoid the imperfections you may get in the mesh. Also, another one of the things that I usually do a lot on the high is adding floats, these will just be projected on the low when making the bake, but they could also be done directly in Substance, however I always recommend doing everything you can in the high because when making the bakes it will be much better.


Unwrapping UVs

For this step I used a program that I am learning, however, it is quite simple and I highly recommend using it, it’s called RizomUv. Before I learned this program, I was moving towards UVs in 3Ds max, but it is much faster and easier in Rizom.


The only parameters that I take into account when packing are those marked above, which are to determine the Padding (Spacing), the size of the map, which in my case I wanted everything at 4K, and finally the quality of the packing of the Uvs, that I put in Gold so that I can optimize it to the maximum and they are the best possible.

It seems like a program with many buttons, but I assure you that it is quite simple, in my case I did not want to do anything with symmetry, although it is quite common when making props, weapons and whatever, but since this was going to be a piece for my Portfolio I wanted everything to be unique.



In this process, organisation is very important so that everything is faster, more comfortable and goes well the first time.

What do I mean by this? The first thing to keep in mind before making the bake is how many textures sets we are going to want. In my case, I used 3 because I wanted the weapon to look pretty good and because being a portfolio piece I can afford this type of case, if it were for video games everything would have to go in 1 texture set.

The moseran, one for the barrel and wood area, another for the body and the last one for the areas of the stock, magazine, grip and other things. When doing this you have to take into account the Texel Density so that in all sets they are practically the same. As you can see in the previous image, in my case the texel is practically the same in all of them, maybe you can notice a little difference between the body set and the barrel set, but it is somewhat slight and it will not be noticed when texturing so I did not worry much about it.

Once we have set the texture sets that we are going to want, we have to rename everything perfectly both in the low and in the high so that when it comes to putting it in Marmoset it will automatically put everything in folders. This will avoid us having to make an explode of our piece since by having everything ordered by folders in Marmoset, it respects the bake between each one and does not overlap the cage of each one on the other, since this would cause us to bake things from one piece to another, and we don’t want that.


The most important thing about this step is to name both Low and High exactly the same but each one with its respective final nomenclature.

Example: Peephole_Small1_Low Peephole_Small1_High so on and so-forth, if you have many pieces, be patient and keep at it little by little so that it turns out well the first time round.

If you’ve done everything correctly, this is how Marmoset will see your models when you import your Low and High. And yes, all these folders and subfolders are done automatically by the program.

In the image on the right, I show you the configuration that I always put when making the bake. In the QuickLoaders area where we put our Low and High, Marmoset will organize everything for us.

In Output, we tell it where we want to save the maps that we are going to make and also input Samples Formats, I always leave them at 16 both because I think that quality and performance works out quite well, but if you have a powerful computer and want to test everything to the fullest, feel free to change it. I always set the Resolution to double what I will export my final textures, that is, if I am going to get all the textures at 4k, I will bake it at 8k. In this case, you see that it is at 4k but I really want them out at 8K.

And finally, I always take out the Normals, Curvature and AO maps. In my case, I don’t take out the IDs map, but it is also advisable to do so so that when it comes to texturing certain areas, it will be easier for us.


When we have all the bakes done and we have verified that they are all perfect and very beautiful, we return to the program in which we have modeled (in my case 3Ds max) and we attach all the meshes of each texture set together.

That is, in my case I will only have 3 meshes and for each one I will put a different material so that Substance Painter knows that there are 3 independent meshes because when exporting we are going to export everything as a single FBX.


Once we have everything renamed, attached, with the materials and everything is ready, it is time to go into Substance Painter.

We import our fbx with all the maps that we have made during the baking process, that will be 3 for each piece, that is, 9 maps, 3 Normal Map , 3 AO and 3 Curvature Maps we will be adding them in their respective sets.


I also take advantage of this moment to see if there are any bake failures that I have not seen in Marmoset since I am still in time to do it again because I have not started texturing.

Before starting to paint make sure that everything is fine because if you have to fix something and re-import the mesh once the texturing is well advanced, the Substance may not respect things and it may bother you.


I did this project in Specular Gloss because you have more control over the metals and I think that when it comes to lighting the reflections look way better. Whenever I start texturing, the first thing I do is create a Fill layer and put the AO map in it. Diff in multiply mode and remove the other channels of Specular, Gloss … With this, the AO is further intensified, since the base one is very subtle and once I put the materials in, I play with the opacity of the layer in case.


To texturize what I do is, I use the Materials and SmartMaterials that are already in Substance as a base because there are some that are very good and why not use them, but as I said, they are base, then on top I add many more layers.


When texturing it is very important to take into account the first point of all, the references, since these are the ones that will help you see how things really influence the weapon, such as where the scratches are most concentrated, how the dirt, the different shades of color that metal can have, reflections… etc


I also highly recommend creating a Marmoset scene with more or less decent lighting (it does not have to be the final one) so that from time to time you can export and import the textures to see how it really looks since the Substance and Marmoset viewers are a bit different and maybe there are things that in Substance look good but when applying the textures in Marmoset you see them in another way and you have to trust more of that since you will take the renders there and that is where everything really has to look good.

Render and Lights

For me, this phase is the one that usually costs me the most since the lighting issue is SUPER important because with bad lighting, no matter how well you have your textures, it can be seen quite bad.

On this occasion, I did a little research online to see types of lighting because I used to do the basics, 3 lights, a rear to highlight the shape of the object, a front that illuminated everything well and a more lateral to highlight some detail. But when I did that in this project I was not convinced by it, so I found a tutorial on the Marmoset page of how to create weapon lighting.


The truth is that since I followed this tutorial and understood what they wanted to achieve with it, I use this lighting for all my props. I’m going to show you how I did it in particular with my scene, but it is very similar to the one in the tutorial that I told you before. The first thing I always do is adjust the camera and leave the settings. This is something that I do the same in almost all my projects.


Once I have configured my Main Camera and then imported the mesh with their respective materials, what I did was create a black image and put it as a background so that it did not illuminate anything.


When I have that done, I turn up the brightness so that all the lights that start a matter illuminate, otherwise they would not do anything.

I put the lights directly from the Skylight. By clicking on the black image you will create a light which you will then select to rotate and give the intensity that you need, as well as how I create all my lights as you can see in the image. I always create 5 lights that are the base and then if I want to intensify some areas I create more. The base lights would be Key, Bot, Top, Rim and Fill.


Once we have all the lights we want, it’s time to put a Skylight that provides us with some more information since the black image does not give us anything.

To do this, the first thing we have to do is transfer all the lights that we have created to a folder because otherwise when we insert a new Skylight, those lights will change in intensity and tone.

When we have the lights in their folder we will be able to return to the Skylight and put the one we like the most, with this, we will ensure that the blacks are not as pure as they were seen before and we will obtain better reflections in the brighter areas such as the peephole in my case.


And now what would remain would be to adjust all the lights until we have the result that we like the most.

Finally, for the creation of the Beauty Shot, what I did was look for references (as always) and once I was clear which one I liked, I got down to work. For this type of thing, I always go into Quixel to see what I can find there that can be of use to me and in my case, I found everything in the scene.


As you can see, the lighting in this scene is super simple, it is only the Skylight and one more light with blue tones.

I left it like that because I wanted it to be natural light so I think that using only the Skylight I would achieve it since if I put more lights in it it would look more artificial because they would create highlights and shadows from different areas and the natural sunlight only comes from one direction.

I did not worry too much about the tile on the wall since with the camera shot that I was going to have, it would not be true and all that remained was to adjust the camera shot, adjust parameters and that’s it.

Post Process

In this phase, I always do the same whatever the object is. The first thing is to adjust the parameters in Marmoset as much as possible to get the Render as if it were the one you are going to upload to Artstation or whatever platform.

I always put the settings that you have seen before by touching the contrast curves and everything but having in mind if I will take the final renders to Photoshop to give them the last retouch there. One thing that I also recommend is not to taking the render from Marmoset with the vignette active because at the moment that the quality of the render is high and the vignette is visible fatal, cuts are seen.

In Photoshop, all I do is put the renders in different tabs and I’m only going to retouch one of them and copy the settings in all the others since the renders have to be practically the same in terms of lighting and everything and thus you save time.

If you see that some Render suddenly shines much brighter than another or is very dark because then you have to adjust them, but normally they should all look the same. First of all, right-click on the fall and turn it into a smart object.

Why? Because this way, when we apply the effects to it, they will stay in such a way that it will allow us to access them again at any time or deactivate it if we don’t like it. It is a way of working without being destructive.


Once this is done we will go to the tab above Filter -Raw Camera Filter (Shift + Ctrl + A).

This filter allows us to retouch the image as if we were professional photographers, it lets us change many parameters. Of course, let’s not go crazy because as I said before, it is assumed that you have already taken the “final” render in Marmoset.

The only thing that I modify here are the parameters of the first tab, in a subtle way, the tone curve in RGB, but also very subtle (almost the same as the Marmoset curve) and the fourth tab to play with the tones and saturations.


Final Renders