David Oroian, Weapons & Hard Surface Artist at AMC Ro Studio, walked us through the process of making a wood material for a rifle, showed the steps of color correction, and explained how he adds personality to the textures to make the result realistic.
Hi, my name is David Oroian and I'm a 3D Artist specializing in weapons and hard surface.
My journey as a 3D Artist had a very unexpected start, as 3D was never taught to me. I was studying economics in college and while at home, I found myself watching random YouTube videos about 3D graphics. Perhaps sooner or later it was bound to happen for YouTube to start recommending me this topic since most of my YouTube feed is gaming related.
I always had a burning desire to create and learn how things work and when I found out about the existence of 3D software, it felt like the world just opened up before my eyes.
First, I wanted to understand, then I wanted to do it myself, and after that, I wanted to bring to life whatever I was most passionate about. And that's how the first months went by – looking for tutorials, stumbling my way through Blender 2.79b interface, blindly trying everything, and failing hard. Eventually, I got accustomed to the basics, but I was still far away from understanding the steps that I unknowingly took.
During the first months, I followed all sorts of tutorials and with each passing day I learned more and more – with curiosity and fascination. With this cool new toy (3D modeling), my passion for games started to give me the motivation to create things by myself. That's how I stopped following others' tutorials and started going on my own path.
Oh, games, you bring people together, and it's a beautiful thing. The fire was spreading in too many directions and the hotspot was nowhere to be seen. It was because without knowing, I was trying a bit of everything, I was slowly turning into a generalist (but oh what a mistake that is to make – to become a generalist when you haven't even mastered the basics).
Thankfully, the community that revolves around games is not made of gamers only. While feeling slightly lost, a kind gentleman replied to one of my fan arts and asked me if I could send him my model to mod it in the game. What game? Well, none other than CS:GO, the one and only game that proudly sits above all others in terms of my playtime.
And this is when I got the first taste of what it feels like to create an asset from 0 to in-game (a very bad and full of issues asset), but I have seen the full cycle. To this day, the most enjoyable thing for me is to play with my work in the games that until not so long ago seemed like a closed loop made by aliens for us mortals to enjoy.
It goes without saying, but since that moment, a hot ember started to form and I can proudly show it to you, it's out there – visible and burning HOT!
With a new focus in my career, hard surface art became my obsession. It's the brightest ember in my fire of 3D and it fuels everything.
My professional journey started with AMC Ro Studio after getting recruited based on my portfolio works and prior experience: modding CS:GO with a team where I was responsible for weapon modeling, texturing, and game integration. Right now, I am the main weapon artist at AMC and I'm happy to bring value to the team by doing what I'm best at.
I am thankful for the knowledge sharing available today and with this post, I can finally say thank you for giving back to the community!
This texture breakdown aims to bring a specialized texturing workflow to your attention and make it easy to understand for artists who are looking to improve and push their skills in texturing.
Creating wood textures is a lot more difficult than creating metal textures, and because of this, many beginners avoid it altogether. I know the feeling well because I was there, but it comes a time when artists need to push through this wall and learn how wood texturing can improve their art and elevate their portfolio.
My goal is to catch your interest in learning and, more than anything else, to make you realize that wood can be one of the most satisfying materials to create and showcase. As intimidating as it looks, it will add value to your project!
Wood Material for Weapons
You might be inclined to think that since we live in the age of procedural generation, everything should follow this trend. Procedural is a great base for many projects, it's a time saver and with the right skills, it can be tamed and shaped to fit specific needs.
For complex geometries, however, wood needs a different approach. Wood is organic at heart and to make things more difficult, wood shows unique patterns based on how it is shaped. Because of this, it is essential to observe your references and learn how the wood patterns are influenced by the shape they follow.
Procedural wood will never make sense in complex geometry because it lacks the ability to show something unique and natural, it can't take into account your geometry shape. With this in mind, we as artists need to do our research and observe the references: how real wooden objects behave and show different patterns based on how they are shaped in manufacturing.
I will make a comparison with metal texturing: even if 99% of metals are a single color at their base, we always add machining marks, dents, scratches, dust, dirt, and oil – all of those create a story for the material.
We need to do the same for the wood, even more so. Yes, the wood base color is already 10 times more complex than a gray metal. That does not mean it has a story, consider it as a starting point, just like bare metal is a starting point and machining marks will give it a manufacturing story.
When the wood shape requires a different pattern, start by adding it in. Create the manufacturing story that wood tells based on how it was shaped. That's the only way you can create a hyperrealistic wood material. Avoid using a single texture to cover all your wood elements. Procedurally or not, it's impossible to texture a complex geometry with a single texture meant to be applied on flat surfaces.
Because of the wood characteristics enumerated above, I decided to avoid procedural wood entirely. I ventured into what I like to call hyperrealism because only that can satisfy my idea of accuracy.
For this wood material, I used a custom workflow that I learned and refined during the making of a few similar projects. For this, I had to rely on photos, AI upscaling, albedo baking, and some other cool tricks to get the base materials from a photo.
The source images need to be specific for the project at hand because wood shows unique patterns based on how it is shaped. There is a difficulty factor in finding good source material without creating it yourself, so here's your early tip: be patient! (Or if you have access to your specific rifle and a good DSLR camera, make your own source materials.)
When creating the wood texture, we’ll go through the following steps:
- Mesh prep
- AI upscaling
- Applying photo-based textures
- Color correction
- Generating height and roughness from a photo
- Albedo baking
- Final touch-ups
Finding source images for a specific gun – with no distortion – is impossible. Because of this, you will always need to correct distortion. Having a perfect side projection of your model makes it a lot easier to conform the texture to your mesh.
Unwrapping the high poly: in Blender, I used the unwrapping function “project from view”, which makes the UVs follow the camera view (similar to planar projection from Substance 3D Painter).
I'm using the high poly mesh unwrap as a first step in texturing. Just like regular bakes benefit from being created from a high poly, baking the albedo from a high poly yields the same result, a cleaner texture transfer.
Here you can see a comparison between the direct application of textures on the low poly versus applying to your high poly and baking down to the low poly. I find it very useful not only for the improvement in quality but also for the direct help it provides when applying and distorting the source images in Photoshop.
The left images represent a direct projection on the low poly mesh (notice the direction change that happens on the geometry lines).
The right images are projected on a low poly mesh and then transferred on the low poly with the use of albedo baking.
Later in the breakdown, I will go more in-depth with the texture transfer procedure since it is a very useful workflow on its own.
Source Materials & AI Upscaling
When searching for source material, your goal is to find the texture that will best represent your model (and try to find interesting looks). I think it’s more important to have the right details than to have the most resolution.
AI upscaling can help a lot in adding the missing resolution but it won’t create cool patterns on its own. Try to start with a good image with details that fit your model.
The first material I created for the wood elements is the plywood cross-section. The following image is the final result.
The AI upscaler of my choice was Gigapixel AI because it offers a perpetual license for the software you can download. It’s not the best but it’s the most convenient.
Another option is using an online upscaler like Deep Image (I found it slightly more consistent in quality but you have to pay for each image.)
Applying Photo-Based Textures
I exported the UV layout and I started to overlay and distort my source images in Photoshop to match the flow of my UV (to keep the realistic and organic flow of the wood grains).
With Marmoset and Photoshop on different screens, I had to keep tweaking the image to have good coverage on my model. At this stage, it does not need to be perfect, I just needed it to be 90% there.
After applying the left and right textures in Photoshop, it was time to merge all source materials together. In Substance 3D Painter, I carefully placed where my sides go, and together with the previously made plywood tileable material, it was now a full texture (but far from usable).
Depending on how varied your source materials are, it will take some patience to blend everything and give it a natural look like you would see in a raw piece of wood.
The goal of color correction is to have a uniform color and contrast throughout the entire texture.
Color correction is an active process of matching each layer you add and creating a uniform and natural look. It's a bit hard to show what each layer does because most of the work is a sum of small tweaks.
Those tweaks are made with basic Substance 3D Painter filters like:
- HSL Perceptive (allows you to adjust the Hue, Saturation, and Lightness).
- Color Balance (exposes individual hue controls for Highlights, Midtones, and Shadows).
- Color Correct (Contrast, Saturation, and Luminosity controls for Highlights, Midtones, and Shadows).
- Contrast Luminosity (a global tweak of contrast and luminosity – it doesn't affect individual channels like Highlights/Shadows/Midtones).
Adding filters is not the end-all solution, manual mask paint is also a requirement because some textures simply can't be tweaked to the desired values, so new textures need to be overlaid on top of what we already have.
Small color touch-ups come next. Replacing and fading in a different wood texture on top of a:
- blown out highlight
- blurry part
- damage you don't want
- visible blend
- too contrasty/different hue part
Here you can see a clear example of tweaking the shadows and removing an unwanted spot from the texture.
As I said in the intro, wood is organic at heart and it's impossible to texture a complex geometry with one image. Because we had 3 main textures and many smaller textures, color correction is one of the most crucial steps because it ties all the images together.
The goal of color correction was to go from source to final:
Source VS Final
The albedo texture is finished. A round of applause, please!
Generating Height & Roughness from a Photo
One more thing you can do now that you have a solid base color is to extract a mask. Check the RGB channels and see which one looks more promising. You can now tweak the extracted mask and make something that helps you create the roughness and height needed for the material.
Having the wood textures “finished”, the next step is baking those textures on the low poly.
For transferring the textures from the textured high poly onto the game-ready low poly, Marmoset Toolbag is the tool of choice. It's without a doubt the best software for baking and rendering and it's well-known for doing a fantastic job. With the launch of Marmoset Toolbag 4, you also get texturing functionality but I won't go into detail about that, it's very similar to what you can do in Substance 3D Painter.
To show you how the transfer procedure works, I will use a generic example because it shows a common situation where texture/UV transfer is required.
A game-ready gun can have multiple UV sets and materials. When that gun is not in your hands (e.g. a player holds it 50 meters away from you), to optimize the game, alongside mesh optimization (LODs), material draw call optimization is also required (lessen the draw calls by lowering the number of texture sets).
In the example below, I will show you how to transfer 3 texture sets to a single texture set, but this transfer workflow has no limits (other than common sense) so you could in theory go from 50 texture sets down to 7.
I will use 2 cubes: a cube with 3 UV sets (3 materials) and a second cube with 1 UV set (1 material).
Start by importing the cube that has 3 UV sets (3 materials) and apply its materials inside of Marmoset Toolbag:
After that, bring the second cube that has a single UV (1 material).
The next step is the classic baking procedure but instead of using the usual high poly/low poly workflow, we will use our cubes – one with 3 texture sets (the "high poly") and the second with 1 UV set (the "low poly").
To bake albedo, you need to enable it in the Configure Maps tab as seen below.
After baking, your target cube – the "low poly" will copy the exact albedo textures that are present on the "high poly".
With the texture transfer, you went from 3 materials to a single material.
This technique is very powerful because it allows you to reduce material draw calls when they are not needed. For example, you make 20 props each with its own UV and materials: you can make a "trim sheet" and bring all 20 models on a single UV map and a single material.
I am sure this transfer procedure will help many game artists in reducing draw calls and optimizing their scenes.
This example with the cube is a lot more common for the texture/UV transfer to be needed but returning to the topic of our wood material transfer, we only needed to take the texture from our high poly and move it to our game-ready low poly. We did this because the high poly and low poly had completely different UVs.
Until this point, the making of the wood was based entirely on photos. It is time to add some personality.
The lacquer mask is one of the most important ones because it adds a whole new level of detail by using what we already built. Below I gave it some color for visibility, but in reality, it only has roughness, height, and saturation values.
I don’t think procedural patterns have a place in this mask, so that is why it is created entirely with stencils.
While creating the lacquer mask, I tried to copy the chipping paint look, the scratches, and the different thickness values.
Just like in real life, the lacquer gives the wood a deeper and more vibrant color. Where the mask is chipped, by having some grime, you can further solidify the idea of height in the lacquer.
I hope you find value in this workflow breakdown! Stay tuned because I have in mind other specialized workflows for materials that I'd like to share in the future. This workflow breakdown was made 2 years ago by yours truly, and it stayed behind closed doors until now.
Being limited to photos found online, I think this pushes the workflow close to its limits, but it can be further improved if you have access to a high-res library of photos. This improvement can be spotted in the quality of the materials, but more than anything else, in the production time.
Realistic wood textures are by far the most difficult to achieve. This was just a small example of how to create a plywood material and the steps you need to take for a believable result.
While this workflow can give you the highest visual quality, the number one challenge is finding the right source materials. I highly recommend creating your own source materials (taking the photos yourself if you have this option). It will be a fun experience going outside and diversifying your workflow, and I think it will be that much more satisfying when seeing the final work take shape.
Thanks again for your time!
You may find these articles interesting