Art Spotlight: Electro-Motive Diesel SD40-2 Locomotive

Back to overview

In Art Spotlight, we invite Sketchfab artists to talk about one of their designs.

Hey there!

I’m Jonathan, Quixel’s Community Manager. I handle a lot of the day-to-day interactions with Quixel’s amazing community of artists. A big part of my job involves helping our art community with the tools we create. My work is my life’s passion. I’ve been a 3D artist for many years, but I’ve only been a professional 3D artist for the past five years. I’d like to say that it’s incredible being part of this community – not just Quixel’s, but the SketchFab community as well! There’s so much talent everywhere I look, and so many new things to learn and teach. It really helps fulfill a big part of one of my core philosophies: if I’m not learning something new, I’m probably doing something wrong. There’s always something new to learn – and there’s always someone you can learn from!

I’ve been a huge fan of railroading since I was a young boy. There’s something magical about the sheer power of a miles-long American freight train rolling through the countryside. I started this project in late 2011 after graduating from college. I had built perhaps 25% of the main chassis of the locomotive before life got in the way and I had to focus on other projects. I picked it up again in 2013 and put in a bit more work on it, then gave up again. I thought 2014 would be the year that this project would be done – but I was wrong! It was only after the release of Quixel SUITE 2 in late 2015 that I realized I had a perfect model to showcase the immense power of our texturing tools.

With this goal in mind, I brute-forced my way through the geometry, laid out UVs, created normals in NDO, and painted the model in DDO.NDO and DDO are two core components of Quixel’s flagship software Quixel SUITE. NDO is used to create normal maps in directly in Photoshop – with or without a source model. DDO is used to create textures using a wide variety of workflows, from current-gen PBR, to last-gen, and even diffuse-only pre-lit textures!

This locomotive was a huge undertaking for me – I was filled with doubt that I’d ever finish it. There’s a lot of love in this project and I’m quite thrilled that I was able to overcome my doubts and push toward the finish line – so I’d like to go over how I built this, in the hopes that you can learn from my mistakes, or perhaps pick up some new techniques in workflow!

Building the Geometry

Proper reference is essential. I use a tool called PureRef to collect and organize my reference images. I also add notes to my images as I work to point out specific areas of interest or things that I need to do. I use a triple monitor setup on my home machine, so 3DS Max sits directly in the center, while PureRef takes the left monitor, and Photoshop takes the right. It’s a very efficient way to work for me – it keeps my work visible at all times and makes it significantly easier to switch between programs.

image05

An example of my PureRef file. This is only about 2% of the images I collected, some of which I took myself.

This project started off as a simple box in 3DS Max. I frequently box-model objects to block out rough shapes and create the form and definition needed to bring an object to life. Once the shapes are blocked out, I refine the forms with various bevels and chamfers until I’m happy with the result. You may be reading this and wondering why I’m not SubD modeling – I actively avoided creating a high-to-low bake with this project as I anticipated using MightyBake’s rounded corners baking method to create softened normals on my mid-poly model at the end.

Once the model’s shape was built, I spent a lot of time adding in the details that bring this model to a representation of an actual EMD SD40-2. I created railings, support pylons, brake assemblies, etc. There’s a lot of details that aren’t immediately apparent. A close inspection of the reference material is always required.

A shaded screengrab of the finished model inside of the 3DS Max viewport.

A shaded screengrab of the finished model inside of the 3DS Max viewport.

Once the model was completed, I performed a QC (Quality Control) check over it to make sure I didn’t forget anything. The notes I added to my reference images in PureRef were essential to this step. I had forgotten some minor details that added a lot in the final image, like the pneumatic hoses on both ends of the locomotive, and the large Multiple-Unit Train Control cable directly underneath the ditch lights in the front of the vehicle. Once satisfied with my QC pass, I went in and created UVs for the model. This process was extensively documented on the Quixel Tools Group via Facebook. Each time I worked on UVs, I joined the Quixel Hangout to screen-share my process with the Quixel community. The Quixel Hangout is essentially a Google Hangout that we use as our community chatroom – users frequent the Hangout to share the work they’re doing in real-time, to learn from other artists in the Quixel community, or simply to laugh at my terrible Swedish accent. 😉

Creating UV Sets and Preparing for Texturing

The UV process was smooth sailing. My go-to UV tool is 3D Studio Max, coupled with PolyUnwrapper 4. It’s a fantastic plugin that really makes Max UV layouts easy and fun. I utilized a lot of stacked UVs on the chassis to improve overall texture resolution for the model. UV stacking is still required even at 8k – a model this large can have very low texel density without stacking UVs, making for a blurry end-result. I use a checker map set to 8k for the chassis and checked it against a 4k checker map on the wheels, and a 2k on the windows, to ensure that the texel density between all of the components of this vehicle would be close enough. The wheel assemblies (known as trucks in US railroading parlance) required a 4k map to hold up against the 8k chassis, and the windows and lights were simple enough at 2k to hold up very well against the other two UV sets.

My UV sets side by side. 8k, 4k, 2k respectively.

My UV sets side by side. 8k, 4k, 2k respectively.

Once the UVs were laid out, I used a tool called UV Packer IPackThat to pack my UVs for me based on my tolerance settings and required bleed between UV shells. The packing time was pretty quick, about one hour for the main chassis, and 30 minutes for the wheel assemblies. The windows were hand-packed and took almost no time to lay out. Once my layouts were completed and packed, I moved on to the next step: Quixel NDO.

Texturing with Quixel SUITE

A sampling of the normal map created entirely in NDO.

A sampling of the normal map created entirely in NDO.

Detailing in NDO is such a time-saver, and it’s easily one of my favorite parts of the SUITE workflow. NDO is Quixel’s normal map creation toolkit. It works directly with Photoshop to turn paths, selections, and raster data directly into fully-editable normals. This entire project used handmade normals with NDO – no baking was done for any details, other than the rounded corners! With NDO, I can quickly iterate details without needing to create a high-poly model to bake normals from. I utilize a variety of different tools, like converting height maps to normals, creating panels, etc. Almost anything in Photoshop can be coupled with NDO to create normal maps.

I try to avoid building in damage to my models unless it’s a highly-specific detail. I prefer not having my damaged normals locked in to the source files. Anything I build in NDO will propagate to DDO, so I do all of my weathering and damage inside of DDO as I have much finer control over where those details appear and how strong they’ll be in the end product.

The NDO process itself was lengthy. I spent about a month working a couple of hours each day on building out the normals just for the locomotive’s 8k UV set. The nature of my work allows me to create personal projects, but the primary focus of my job is to assist Quixel customers with support, so the majority of my workday is spent with that goal in mind – but I still find time to make things like this in the downtime when support isn’t as heavy!

I recorded some of the NDO process on the Quixel Twitch channel, where I went over some of the basics of NDO, made some corny jokes, and tried to show how to optimize NDO and Photoshop to work well in an 8k painting environment. The system requirements for fluidly working in 8k are pretty high. I use an Intel i7-6700k, Nvidia GTX 970, and 32GB of DDR4. Every bit of power is necessary to work in this resolution, but the end result is totally worth it.

Preparing Textures for DDO

I have a pretty specific workflow for my input maps in DDO. I’m very meticulous about how my input maps are processed – there’s no compression applied to them when I save them from Photoshop, and I ensure that every detail I need is in the maps before I import them into DDO. A quick example:

I use xNormal to bake out an ambient occlusion pass on my model. I then take the normal map from NDO and use the Map Converter to create an ambient occlusion pass from my normal details. I then combine both textures into one using Photoshop and a multiply blend. The micro-surface details generated by the normal map’s AO really allow for convincing crevice/edge-based masking using DDO.

The same area of the normal map but displayed as a color ID map. Each color functions as a mask in DDO.

The same area of the normal map but displayed as a color ID map. Each color functions as a mask in DDO.

Once the AO map is processed, I save out the normals as a *.PNG, and use Quixel Colors (our material ID plugin for 3D software) to bake out a quick ID base map containing the masks I’d like to use for each segment of my model. The ID map is then taken into Photoshop where I overlay it on top of my normal map’s layer stack and use my NDO layers as selections that I fill with colors above the new ID layer. Each color on the ID map correlates to a mask and a material for my purposes, so I try to have as many color selections laid out on the IDs as I have unique materials on the model itself.

The albedo map of the locomotive’s chassis in DDO.

The albedo map of the locomotive’s chassis in DDO.

When the input textures are finished, I move to DDO and import them into the program. The final aspects of texturing involve using DDO to create physically-accurate materials which react to light much like an object in reality would. I study the colors and subtle reflections on the materials in my PureRef scene and emulate the appearance of the locomotive as much as I can within the constraints of the PBR system. I used a lot of references for CSX Transportation’s paint scheme, including the rough value of the RGB colors used to paint the locomotive, the type of paint (matte/semi-gloss/gloss), and the surface properties of a locomotive that’s been used in the field for several years.

An example of a custom DynaMask setup I built using textures that exist in DDO’s material browser.

An example of a custom DynaMask setup I built using textures that exist in DDO’s material browser.

The DDO process is always the fastest aspect of my workflow. It takes me the least amount of time to work within DDO because I’ve provided the framework for my textures with my NDO normal map, AO map, and 3DO-generated curvature/object-space normals/gradient maps. These maps drive the procedural scan-based nature of DDO texturing and make it very simple to get realistic results in a relatively short amount of time. Utilising a variety of DynaMask adjustments, hand-painted masks in 3DO painter and Photoshop, and traditional grunge mapping, I painted this entire locomotive in the span of about three days.

Closing Up

I’ve said repeatedly that I’m just an artist like every other digital artist in the field. I do work for Quixel, which is an amazing experience – but beyond that, anything I’ve done is anything anyone can do. The best results come from the passion you have for the work you do, and the ability to learn from your mistakes and push yourself to achieve the results that you desire. I mentioned before in the beginning of this article that there was a point that I felt I would never finish this project. The biggest enemy to any artist is self-doubt. Art is a skill like any other, and your skill only comes from the time you’ve invested into the work you’re doing. The more you work, the better you’ll get. Art itself is a unique profession now, too. We’re in touch with many thousands of artists across the world who are all willing and eager to share knowledge and experience with you. There’s nothing like the sense of accomplishment that comes from building something that only you could have created, but with the help of those who came before you.

Thanks, Sketchfab!

Sketchfab is really awesome. There’s no 3D viewer out there like it. Once I posted my work on ArtStation, I quickly realised that I needed to get a 3D view of it up there – and I immediately went to Sketchfab to see if I could load a project that’s close to 1GB of uncompressed textures into it. To my complete amazement, it not only works, but it works beautifully. Sketchfab renders my work in a way that approaches the realism of Unreal 4, yet fully within a web browser. It’s absolutely astonishing – it even runs on my phone!

Being able to link people to my work on SketchFab is a truly unique experience. People can see the work I’ve done and judge its merits for themselves without my artistic interpretation of the viewpoints I’ve presented. They can look at it the way they want to, rather than how I’d like to curate it. This alone really brings 3D to the masses in a way that I don’t think we’ve ever seen before.

Thank you!

Thank you so much for taking the time to read a little piece of how I think. I really appreciate the opportunity. Please feel free to reach out and contact me if you’d ever like to talk about working with Quixel’s tools, or just want to have a chat sometime!

Thanks Jonathan!

Yon can see more of Jonathan’s work here on Sketchfab and on his personal portfolio. He works for Quixel – you can follow them on Twitter @quixeltools.

 

About the author

Bart Veldhuizen

Head of Community at Sketchfab. 3D Scanning enthusiast and Blenderhead. Running BlenderNation in my spare time.


Leave a Reply

Your email address will not be published. Required fields are marked *

Related articles