Creating Ron Cobb's bulkhead door in Blender
Learning more 3D modelling
To deepen my 3D journey I started, I thought I should take on a "little" project going from Blenders default cube to a finished and game ready asset. Creating the high- and low-poly mesh, UV unwrapping, baking, texturing, rigging, animating and finally having it presentable in a game engine. I see now that calling this little was blind optimism on my end.
After spending hours over hours on my model I only finished baking the high-poly mesh onto the low-poly mesh, feeling rather intimidated by the next big step; texturing. But, I still think there is a lot to tell, so this post will focus on:
- Creating the high- and low-poly mesh
- UV unwrapping
- Baking in Marmoset
What I want to create
As an Alien fan I thought I could pick something out of the Alien universe I would like to recreate. I also wanted to learn rigging and animating, therefore whatever I pick had to have moving parts. My first thought was that I will recreate the iconic Alien spaceship, the USCSS Nostromo.
In my head already painting how I recreate the spaceship in the smallest detail, moving parts, lights, walking the interior in first person, … — even I knew this will be too much for me. It needs to be something smaller, and after some research I came across the original drawing of a bulkhead door from Ron Cobb.
His drawing differs from what was used in the movie as the movie does not have the red warn lights around the door, as well as some differences at the side barrier doors, namely form and color. What I wanted was to recreate his drawing as good as I could, as close as possible, and this is what I set out to do.
Creating the mesh
Starting to work on the high-poly mesh, I thought this step should not take too long. I was very wrong. I started over twice, third time is the charm they say. It was, even though it still took me hours and I would do so many things different if I would do it all over again, but this is what learning feels like, and I will call it a nice feeling.
After hours I got the high-poly mesh as ready as I wanted it to be. Here a look at the frame with retracted inner side barrier doors and a view of the closed bulkhead door, both with temporarily applied materials for better visibility.
As I was using the add-ons Hard Ops and BoxCutter with a non-destructive boolean workflow, making the creation of the low-poly mesh easier by removing some boolean cuts.
I really liked using those add-ons, even though I want to try a different workflow with e.g. MESHmachine and MACHIN3tools, or additive to the boolean workflow to touch up parts of the mesh after applying modifiers to get even better results. For now though I wanted to restrain myself from using too many tools.
The UV unwrapping turned out to be harder than expected. It got easier, at least after I figured out what my issues were I had on my first tries. There were two main problems I encountered that I'm sure I can avoid when I tackle my next project. The first one is that I had "flipped normals".
All the red you see? Ya, not good. It's kind of an "inside out" problem, aka. a face being in the wrong direction. After some searching I found out I can use a function called "recalculate outside".
Doing that for all my parts that had wrong normals, I finally got them the way it should be — all blue.
The second issue I had I was not able to fully fix; some vertices seemed "misplaced" when unwrapping the mesh, producing some strange result in the UV map. You still see some of those artefacts in the final result.
All in all I'm still quite happy with the result and decided to move on — for the sake of time. Besides that it did not seem to make any problems the way I had it when I tested the asset later. To avoid this type of issue in the future I would try to take better care when working on a mesh. Having a better look at the topology I'm creating, hoping that future Martin will figure that out.
With this amount of stress, and the feeling I messed up everything, I was still able to have everything properly UV unwrapped.
Baking in Marmoset
Initially, when it came to baking the high-poly mesh onto the low-poly mesh I thought I will use Blender. Even though I still plan on learning this in Blender, I decided to go with Marmoset Toolbag 4. In hindsight, I would call this "a whole new beast to tackle".
Why Marmoset and not Blender or Adobe Substance Painter? I made the decision as I saw it used not only in a bunch of tutorials, but also due to the support for Texturing, including the usage of smart materials. It also made the impression of being rather intuitive to use (I was not wrong, I actually was able to figure out a lot of things on my own). What got me as well was the pricing, it gives the option to either pay per month as subscription or, my favourite, make a one time payment and you own the program. This was the reason for me to not use Adobe Substance Painter, as I dislike the subscription-only way Adobe goes with all products now-days. Not using Blender was due to reading about poor support for baking and texturing (so far, apparently there is work being done).
Getting to the actual baking process — a particularly
convenient one thanks to the naming convention for meshes. Having
the high-poly mesh named with
_low for the low-poly mesh, exported in the same way.
This enabled me to "just hit import" in Marmoset and get my bake project set up.
After tweaking some details for smaller parts on the mesh, specifically painting skew …
… I was able to bake the project and get all the maps I needed. The tutorial I worked through to manage this can be found here: The Toolbag Baking Tutorial.
What comes next?
As mentioned, this is not the end of my journey creating the bulkhead door. Next up will be
- Texturing with Marmoset,
- Rigging, and
the door in Blender. And finally having it all in inside a game engine of my choice, with some nice lighting to showcase the project. Here a little sneak peek of my first texturing experiments in Marmoset, nothing fancy, yet.
My goal is to get a realistic door with PBR materials inspired by the movie, though I think this will still be a long way.
That will continue in part 2 of this "little" project 👋🏻.