Thursday, June 20, 2024

Research Project

Realistic Hard Surface Props

Intro:

Hi, my name is Kirsten Futch and I’m a 3D artist specializing in realistic hard-surface models. I’ve been learning 3D art for about 6-ish years now (as of writing this) and have really improved since entering FIEA.

I will now show as much of my process as possible to (hopefully) help or give advice to anyone seeking it.

This is a tutorial on how I make realistic 3D hard-surface models.

*Disclaimer*: This is my current workflow, and that will probably change and improve over time, if you know a better technique, please take my process with a grain of salt. But I do hope this tutorial will help at least 1 person in the future :)

 

Goal:

In this tutorial, I will be making a toy cash register. One that resembles a toy from my childhood (from the early 2000s, I know, old right?). It’s part of a series I am creating for my portfolio dealing with nostalgia. Meaningful and evokes emotion.

 














Pipeline Summary:

If you’re creating a model for a portfolio, generally pick something meaningful or evokes emotion (or if not, at least make sure it looks badass).

Once I know what model to make, here’s my general pipeline:

 - Pureref for reference gathering (Pureref is a free application you can download that makes a reference board so easy and convenient, I highly recommend using this for every project you do.)

- Maya for blocking out, proxy, game rez, high rez, retopo, and UV unwrapping models

- Substance Painter for baking and texturing (and some rendering)

- Unreal Engine 5 for rendering scenes and artistic lighting shots

I sometimes use ZBrush for high-poly detailing, but I’m still working on being proficient in that program for my workflow.

 

References:

Step 1 is ALWAYS look for references. I feel I’m only ever as good as my reference. If I don’t have most angles – I take way longer to make up what I don’t see very well.

[Google Images, Artstation, Pinterest, and even eBay are all good image sources to pull from.]

So, I recommend having a good and organized Pureref board like this:

 














Scale and Perspective matching:

Next is making sure the scale of your object is correct. It’s important to get this correct early on, or you will run into proportion issues later, especially if this is a game object.

I ensure the scale is correct by taking and exporting the UE5 default Manny FBX and importing it into a new Maya scene. Manny is about 6ft tall (or 2 Meters) humanoid and should help with most scaling references.

Once Manny is in the new Maya scene, place all angles of references in image planes to their respective orthographic views. (Ex. Front-facing image placed in the front-facing orthographic view etc.)

If you only have some version of a 3-quarter view as your best reference pic, you can also lock a new camera and perspective match it in Maya.

I made the mistake of "eyeballing it" at first, " but I eventually used the perspective match technique, and there's a BIG difference. Please don't skip this step. I will show you the difference it made:

These were the wrong proportions I made.


And here's after I fixed the proportion matching. (Some elements, like the cord, don't match up exactly - that was a creative decision to lay some things differently)


This looks about right (Manny is tall)













Blockout / Proxy:

Blockout is the stage where basic shapes are used to represent the overall proportions of a model. This step should be relatively quick and move almost directly into the proxy stage.

A proxy is where you start to create a low-poly silhouette of your model.

Tip: Make sure to create copies of each step and even save different Maya scenes for big milestones. This will help you in case you mess up and need to go back a few steps.















Low Poly:

This in-between step in hard surface is making precise extrusions, divisions, lots of Booleans with redirecting topology, and only necessary bevels.

Low poly modeling is the part where you plan out what indents and divots will be done with mesh (Usually large or deep extrusions) or what you can get away with later in texturing using height maps (Usually small or shallow extrusions).

This is my low-rez
 
This is my low-rez with smooth mesh preview on (Hot Key : "3")














- Tip: Not everything has to be one mesh. In real-life, objects aren’t usually made in one piece, so neither should your model. It’s a good practice to model objects in pieces the way they would be separate in the real world. UNLESS it would save polygons and/or be unnoticeable. That is up for the artist to decide.

- PLEASE SAVE every stage of your model. Duplicate, group, and hide in the outliner or use the layers system in Maya. This could help if you mess up a piece of the mesh, you always have a previous stage to work with.

- Do not bevel everything just yet! Only larger bevels on very rounded pieces at this stage. Smaller bevels are part of the high-rez workflow. It’s very important to get all the necessary shapes and edge-flow in first before beveling.

 

High Poly:

Okay, now you can bevel. Remember to duplicate your low poly before you up rez your model. I personally prefer to do my high-rez in Maya because I’m most comfortable with the tools and control I have. But you are welcome to prepare the model and transfer it to Zbrush (or your preferred program) for smoothing and sculpting details.

I usually bevel to hold edges so that I can convert the smooth mesh preview to polygons. Be sure that the bevels are clean and mostly quad topology – it helps reduce any “pinching” effect on the shading (which happens to me A LOT).

Holding edges in the Mid-Rez

After converting the smooth-mesh preview to polygons

























**Note: Here are some tutorial videos I followed to create the spiral cord in this model; Spiral Cord & Cord **













Retopo / Game Rez:

So, this stage has many different routes you can take, sometimes it’s a combination of techniques.

If you planned ahead and saved every stage of your model in Maya, then a lot of the work for the Game rez has been done for you (as long as the proportions and silhouette didn’t change in the process too much). You can usually grab an earlier stage of your model and adjust it to become the game rez in which you will UV and bake onto.

Sometimes I will work the other way. Grab the high poly I made in Maya, and reduce the polys to get the game rez. I usually use a mix between the multi-cut tool and the target weld to reduce ploys. Although I’ve heard the quad draw can be very useful as well.

Which ever way is quicker to get the best results. Sometimes I have to use a combination of the two. Usually for me, it depends on how curved or round a piece of an object is. Don’t be cheap with your curved edge loops, it will become very obvious if you don’t have enough – you will have facetting.



High-Rez





Mid-Rez




















Can you see the difference?

High-Rez Wireframe
Mid-Rez Wireframe
























[In this case, my object is very round and has lots of bevels. So, it’s a little bit high for a Game Rez.]

 

UVs:

UVs are some people’s nightmare. It used to be my least favorite process. But over time and learning more tools in the process, it’s not so bad (mostly).

I have found that in hard surface, there are patterns to the UVs you look out for.

The main buttons I use in the UV editor are:

- Unfold

- Cut / Sew

- Orientate

- Straighten UVs

- Layout













I mostly start with using Maya’s automatic UV unwrap. This is at least a starting point for the correct planes to be projected.

Next, I isolate (hot key: Ctrl + 1) one piece/section at a time to UV unwrap.

In edge mode, I create the “seams” of my UV shells that would make sense for the piece. You want to try and make your seams as hidden as possible. Try and choose the edge loops that go along the backside, bottom, or inner part of your model. Sometimes it can’t be helped where you need to “cut” the object, but it works as a general rule.

Make sure to hit “unfold” to flatten the UV shells correctly. You will see if you missed any cuts to the UV shell in this stage.

Cutting the UV seams














I also try and make every UV shell into squares as much as possible. This is possible with the “straighten UVs” tool in the UV editor. It works mostly on shapes that are already roughly rectangular, but I try it on most shapes to see if I can save textile space. It doesn’t always work perfect, so use it where you can.

Once every piece of the model is unwrapped, I select the whole model together and select all of the UV shells together to hit “layout”. This tool will proportionally and evenly layout the shells into the 1x1 UV map.

PACK those UVs




















 

Baking:

Once you are happy with the high poly, game rez, and UV’s – make sure you select everything (for both the high-poly and game rez) - delete history, freeze transformations, and center pivot. This will prep your models for exporting. NOTE: Don’t forget to change the material on your model in Maya to something other than Lambert1 or whatever the default is.

After exporting everything as an FBX, you can now open up Substance Painter (or your preferred texturing program) and start the baking process!

Baking has a lot of settings and the numbers might be different for every model you make. This has to do with how complex with details and/or divots and extrusions your model has.

Hold on... let him cook
 
Bake looks good!
















Texturing:

Now for my personal favorite, texturing :D

My texturing workflow starts off by making folders with black masks and blocking out the separate base colors / materials. In this case, my object is mostly plastic, so it mostly had to do with color matching and roughness.

Since this research project is based on realistic props, texturing can make or break that illusion. Texturing does a lot of the heavy lifting in believing something looks real (your lighting will be the next big part).

When I texture real props, I need to have the reference(s) next to the Substance Painter window. It helps keep the color matching accurate, materials, the roughness and the details as close to the real thing as possible.

This is where the trained eye needs to pay attention to the smallest detail. Try and have reference with a high-quality image to zoom in and see how light reacts to the surface as well as seeing any small textures on any given surface.

These steps may seem excessive to some, but this is what pushes models to that realism level.

Step 1: Color Block

Step 2: Base details - In this, I faked the dark line that separates the shapes at the base.

Details [Continued] : Here, I added fake depth for the buttons using masks and height map.

Details [Continued] : Here I added any numbers, words, and symbols using masks and fonts / alphas.

Step 3: Dirt / scuffs - Yeah, adds history to your models

Step 4: Tiniest details - This is what can take your work to the next level of realism. Here I have roughness variation scuffs on the conveyor belt.






































































Rendering UE5:

Now, normally you would push your proxy / low rez model to Unreal Engine 5 and create a base lighting scenario early on. But, if you haven’t, then this is definitely the time to do so.

To set up product shots, first you need an infinity wall. There are a few ways to go about that, but I made an infinity wall in Maya and then just carry that FBX to every UE5 render I make.


To make an infinity wall:

- Create a square plane in Maya – in the attribute editor, make all the divisions to 1. So that it’s a plain square.

- Size it up really big – you need enough room for the illusion it’s an infinity wall.

- Select all the edges. Hit extrude and move the extrusion up – it should look almost like a complete cube with no top.

- Select all the edges, except for the very top edges. Then hit bevel – I normally do a .5 with 6 divisions.

















Lighting:

For lighting, it’s a good rule of thumb to have a 3-point lighting set up to start. You can always add more and get creative with showing off your models. You basically need a main light that will mostly light up your model and create the floor shadows (usually) and two supporting lights that usually angle around the model. I like to give the supporting lights a little bit of color temperature to them – usually a warm light and a cool light – this is my favorite contrast lighting.

But of course, you can start getting more creative with lighting up your shots. I recommend that the first lighting setup is your product shot which only shows off your model in nice, even lighting.

Also, I use the default environment processing tools that UE5 gives. It gives you control over height fog and skybox, etc.

Camera:

I usually use the cine camera actor to get my render shots. There’s a lot of control over the camera settings to get the shot that works for you. I make my aspect ratio 1920x1080.

UE5 Final Renders:

















Resources:

https://zwickchristianfiea.blogspot.com/search/label/Research

https://80.lv/articles/modeling-and-texturing-a-barrett-military-radio/


No comments:

Post a Comment