Christmas Chest - Breakdown
Taking part of this challenge has given me a great opportunity to try my hand at a bunch of new things, particularly hard surface modelling, PBR texturing, lighting, rendering, compositing and presenting my work.
The challenge's specifics was to simply make a borderlands style chest with one 2048 x 2048 texture in two weeks. Knowing this and actually being a huge fan of the borderlands franchise, I actually already had a few ideas in mind. Mostly being themes around Christmas and Halloween. I did have a few goal in mind for this challenge though, I wanted to do some hard surface modelling and spend extra time presenting my work.
As with any project the first step is to collect references. Below is some references I gathered from other artists on Artstation and some actual screenshots from Borderlands 3.
Block out and Experimentation:
After brainstorming a few ideas with friends and gathering reference material I blocked out a rough chest. I usually find that with fresh projects that its better to start right away and just slap stuff together, aka kit bashing but since I don't have any models on hand I just modeled some simple shapes with beveled edges.
A design that stuck in my head was a chest wrapped like a present, I thought it would be an awesome challenge to tackle the UV wrapping and cloth, it would also break up the silhouette.
With the starting point made, over the next week I continued to refine and experiment with different shapes and silhouettes building up the design of my chest.
I went through many design choices including chests themed after sleighs, Christmas sacks, stacked draws, an actual present box and a few others.
Below is all the various parts I made and experimented with. A cool idea I had was a chest with big clamps that held down the lid.
At the end of the week I had this:
Highpoly and Sculpting:
While working on the proxy/Lowpoly I was also working on high poly details. Primarily being the bow and some hard surface indents on the chest's body.
With both the Lowpoly and Highpoly models done I then unwrapped the chest, this was a back and forth process as I was limited to a single 2048 texture and the Christmas ribbon wrap was a big object, I don't want the bow to look tiled. I took the model into substance painter multiple times and tested the UVs.
This is what the final UV layout looked like:
There were multiple techniques I used to UV unwrap the chest, the most notable and useful technique was to just simple stack the UV shells, the down side to this is it you have to be extra careful with large details as it will be mirrored to the other side, making the texture look off.
If I take out of the stacked shells on the model this is what it would look like:
Thus saving lots of uv space for larger shells which means more pixels to texture with.
Another Trick I used was to flip some of the stacked UV shells to add more detail diversity. trim sheet tiling was also used. I did this with the Christmas lights cable and Christmas ribbon wrap. You can see more about this in the texturing section.
Baking the highpoly to lowpoly was super simple, Marmoset toolbag is so quick and easy to use.
Below is the lowpoly bow with a highpoly normal bake.
After baking the bow and chest I combined them in Photoshop and flipped the green channel. I flipped the green channel because when I did a test run with the normal map in substance painter the lighting looked inverted.
Here is the combined normal map:
Hard surface details:
While making and comparing my normal maps to the references I collected I noticed that there are a lot of intricate details on hard surface models, because of this I decided I would try my hand at making some of my own hard surface alphas/normals to use in substance painter.
My process was pretty simple, I just made some highpoly screws and sliders in maya, then baked them to a flat plane in Toolbag as alphas and normals. After that it I just stamped them on my model in substance painter.
Highpoly models in Maya:
Baked out alphas and normals:
Normal Map comparison:
Below is is the model without normal stamps and with normal stamps:
And a turn around: (That gif quality :| )
If there is one thing about the borderlands art style that stands out it is the inking.
So after going through his breakdown here is my shot at inking:
At this point in time the challenge has ended but I continued with the project determined to finish.
After inking I went back to normal PBR texturing, thinking about each material on my chest and its colors, if its metal or not, how rough it is, where it is located and where dirt and grunge would be. I went back and forth with some variations and got a some feedback from friends and the NMG community.
Finally settling on this: (Everyone liked the white color and the contrast it gave with the red)
Here is a buildup of each layer:
And the various texture exports:
All my rendering was done in marmoset tool bag.
Usually when I get to the rendering stage of my project I just add a light and hit render. This time I took the time and dissected how other contestants and pros on Artstation light their props. I ended up with a orange keylight and a blue backlight, in some of the renders I wanted to emphasis the metal sheen on the chest to add interest so I also position a pointlight at the right angle where that could be seen, the blue backlight also helped in this regard.
(As a reflection I could of probably increased the roughness of the black bands to increase the sheen, it was a balancing act because in most of the BL3 references have their metal dirty and not too shiny.)
A big thing I noticed in this competition is that other contestants spent the extra time to present their work, Impressed and inspired I didn't want to be out done so I put my all into it, heavily referencing the original BL3 presentation style as well as looking at other contestant's submissions.
I broke down some examples to get some leads, I didn't want to copy it exactly but I wanted it to be similar as I liked the style.
Next thing I did was gather all of the necessary materials to make the background, such as the fonts and ink splats. Luckily there was a royalty free font called Compacta Bold Font that I used for the text. As for ink splats there were various places where I gathered them, mostly from Brusheezy and 123brushes, It was super hands from these places as there were already made into Photoshop brushes.
Once I had everything and did some experimentation I just started to slap stuff together. Throughout the process I actually was rendering out the chest a lot, testing a bunch of different angles and lighting. A real strength of marmoset is that it takes seconds to render out an image opposed to other rendering software, so iterating through different angles was easy.
The final renders:
There are multiple things I would like to say here. First is that while this breakdown looks linear all the steps I took in this project were actually intertwined with each other. I was taking early concepts of the model and testing textures and uvs in substance painter, seeing what I could optimize while retaining interesting detail. While I was working on the presentation, I was still making texture changes, removing old geometry and re-rendering out new images. I think its important take your time with a project and experiment a lot. For me as I was not working off concept art and was learning about hard surface modelling a lot of this just happened naturally .I asked for lots of feedback as well which massively helped shape my design and in the end I am super pleased with the final result.
The other thing I wanted to say was a super thanks to the NMG community for hosting this challenge, providing feedback and being all round awesome. Some of the stuff people made are super cool as well here is a link to other participants submissions. I had so much fun with this challenge and learned a lot even if I didn't get to submit my prop. I There is still a long road ahead with hard surface modeling and texturing but I am nothing more than excited to continue.
You can view my final render post here there is also a 3D viewer turn around: