3d artist Jeremy M. Brown gave a step by step description of the workflow used to build a stunning DOOM-inspired fan art.
3d artist Jeremy M. Brown gave a step by step description of the workflow used tobuild a stunning DOOM-inspired fan art.
I’m a self-taught 3D artist and live in Ludington, Michigan, USA. I started programming text-based video games and graphics in the early 80’s (not professionally but just for fun). I’ve always been into video games, with a particular interest in the RPG and FPS genres. About four and a half years ago, I renewed my interest in the visual arts when I started looking at photoshop for graphic design. Since then, it’s been an exciting visual exploration from 3D tracking and compositing to 3D modeling and texturing.
Initially, I wanted to work in film. However, about two years ago, my focus turned to the video game industry.I’m diligently working on my portfolio and will be actively seeking employment opportunities in the coming months as I continue to pursue my career as a 3D artist.
At the moment, I’m designing my own weapon that I plan to integrate into a sci-fi corridor setting with a weapon rack or charging station of some sort.
I’ve always loved the Doom franchise. And the Grenade Launcher stands out as one of my favorite weapons from the series. In my pursuit of hard surface refinement, I saw the weapon not only as an opportunity to work on subject matter near to my heart but also as a definite challenge with enough complexity and material breakup to further hone my skills.
First, I create a 2D plane and drag/drop my reference photo onto to it in 3ds Max. I’ll use this to get my proportion as close to the original as possible. But, since the original photo is not orthographic, I have to work with a bit of lens distortion.”
Then, I begin modeling using the graphite modeling toolset. At this point, I’m focused on the low poly.
When adding symmetry, I set the threshold to .001 cm. This ensures that only the verts along the seam are welded.
Compound Objects>ProBoolean>Union.
Using this technique, I combine five cylinders to form the silhouette of the revolver-like object.
Again, I use ProBoolean to cut into the object to form the inner chambers. Afterwards, a bit of topology cleanup is necessary.
Building the high poly becomes fairly easy after we’ve completed the low-poly mesh. First, I duplicate the low-poly parts and rename them accordingly.
This will aid us in the baking process as we can avoid “explode” baking and bake by mesh name. Or, we can simply drop these models into Marmoset 3 and it will automatically separate all of the meshes into their corresponding folders.
During the baking process, we’ll also be able to get an ID pass that we can use to mask objects and speed up the texturing process.
Now, we want to get rid of those razor sharp edges on the high poly by way of smoothing groups and modifiers from 3ds Max.
I use a third party script, Quad Chamfer, that works similarly to the chamfer modifier in 3ds Max but operates with a few perks.
Applying Quad Chamfer adds topology at the edges where our smoothing groups meet.
Then, I add TurboSmooth that gives it a nice edge that catches light. The trick is to overdo the chamfer a bit, resulting in a better bake.
Baking
From there I bake out my normal map using Marmoset 3’s new baker. This is an awesome baker that gives me the best results.”
I use a quick loader to import my high and low meshes.
As you can see, Marmoset respects my naming conventions and puts all the meshes into their respective folders.
Next, I hide the high poly from the viewport.
Pressing the preview lets us see a real-time preview of our bake.
With the preview enabled, I’m able to adjust the cage of each mesh. And as we adjust the cage, Marmoset will give us real-time visual updates of these changes.
Texturing
Moving into Substance Painter, I add a layer and make use of alphas to apply details directly to the normal map.”
I turn off all the material channels except “height.” Later, when we export the textures, Substance Painter will transfer these details to the normal map. After, I select an alpha from my list and away we go!
During the texturing phase, I find that adding dirt provides a necessary element of realism to the look.
Although Substance Painter recently added smart masks, I chose to use generators for this project that made use of the MG Edge Damage, MG Paint Wear, and more. Adding the Sharpen Finishing Filter makes the details really pop.
It’s subtle but I add a global dirt layer to the project using MG Dirt.
Rendering
In Marmoset, I frequently use Sky Lights (pin drops) to adjust the overall feel of my render.
These can be added by simply left-clicking on the HDRI thumbnail. Then, you can move them around to catch different highlights which vary depending on the HDRI. I adjust the individual brightness of each light until I get my desired result.
First, I selected some images of smoke from a simple internet search and made sure each had a black background.
Next, I switch their blending modes to Lighten and Screen. This gets rid of the black background and helps blend the smoke on top of the weapon.
I add a mask and a low opacity to my brush to paint away the smoke around the barrel. This creates the illusion that the smoke is coming out of and being occluded by the barrel of the weapon. I use Warp to move the smoke into place.
I use a fair amount of masking to cut the smoke away (less is more).”
This adds depth to the smoke and helps it to sit better with the weapon. I use hue and saturation adjustment layers to correct the smoke’s color as well. Lastly, I adjust the global opacity of each layer.