Ever since I was a kid, I have been a big fan of Star Wars. Ask my friends, my wife, my kids and you will see that I really love this universe. I always wanted to have some costume that I could wear even if I’m not that much into cosplay, but most of the SW helmets are just poor quality or overly expensive. Now that I have multiple 3D printers and was looking for some kind of project for my ZBrushLive streams I thought the time was ripe to start building my own helmet and props.
You can now watch the whole making-of process in video form on the dedicated YouTube playlist. Meanwhile, I’m also sharing it in document form for those who like to read.
The first difficulty was finding good references. Using the movie itself was almost out of the question as Kylo Ren is always in the dark or moving, so finding a good point of view in decent resolution was impossible. Searching Google Image only turned up the cheap helmets (again) and 4 images of a high-quality helmet prototype.
Below are two examples. On the left, a very poor quality helmet and on the right, what looks to be a very good one. I ended up using only these 4 images from the same product, as they were actually based on the movie prop.
For your information, I'm using PureRef to display my references imagines when I'm working. It's a donateware and it's worth the few bucks.
One of the main constraints for such a project is working at the proper scale. Contrary to what many people think, ZBrush can work with ease using accurate distances and scales. This is done with TransPose Units or plugins like Scale Master.
Additionally, I needed to be sure that the helmet would fit my own head. It would have been a shame to put that much effort into a helmet that wound up being too small.
A 3D scan was the best solution to avoid size and proportion issues. I asked my wife to do a 360° shot of me with my DSLR. I then processed everything in PhotoScan from Agisoft.
Below is the result of the scan with its associated texture. To be honest, it's not a good scan as it lacks precision and is very noisy, but it worked fine for my purposes because I was only going to be looking at the proportions and sizes/scales.
After bringing the scan into ZBrush, I did some quick cleaning (mainly for the hair), recentered and oriented it in the scene and then redid the symmetry. To establish scale, I measured the distance between the outer corners of my eyes and between the root of my nose and lips. I then reported the values in ZBrush, using TransPose to rescale my scan.
I need to specify that I have been working at 1/100th scale in ZBrush. This means that a 10cm distance between the corners of my eyes would become 100mm for 3D printing and also serve as 1 "unit" in ZBrush. I did this because ZBrush works best when your models are in a range of 0.5 to about 10-20 "units." For exporting the finished files using the 3D Print Hub (included with ZBrush 4R8), I would only need to multiply by 100. An alternative would have been working with the great Scale Master plugin from Joseph Drust.
Before starting modeling of the helmet, I had to build a quick template shape. The idea was to check that my scan was at the proper size and ensure that I didn't make any mistakes in my measurements. I quickly built the shape below with ZModeler and did an FDM print with my Ultimaker 2+ Extended.
Note: The screenshot below is the first iteration of this template. I made some tweaks before printing in order to make it fit closer to my head.
Finally (after 12 hours of printing!), I did the assembly and tried it on. As you can see below, it fitted my head perfectly. This meant that nothing was preventing me from moving forward on this project.
A side comment: Notice that how much your hair can mislead you for the scan volume. It can make your head look much bigger than it is, resulting in a helmet that would need extra padding added inside in order to compensate.
The model was mainly built with the polygonal modeling features of ZBrush and only a few sculpting brushes. The Topology Brush was used for some specific parts, ZModeler for the main shapes and all topology refinement, PanelLoops for a consistent thickness of each part, retopology of other parts using the ZSphere retopology tools, etc.
The first step was setting up the shape itself. By this I mean establishing the correct proportions within a shape that is both close to the original model and fitting the 3D scan. This is a crucial step because if you build the wrong foundations, your final print will be wrong as well. This step was therefore not a quick one but it was very important. Another benefit of working with a low polygon topology is the ability to manipulate only a few points with the Move brush to make shape refinements with ease.
Below is the beginning of the helmet shape which was started from a QuickCube mesh that I modified with the ZModeler brush. Notice the main reference image to one side, loaded onto the side Grid using the settings found in the Draw palette.
This first modeling stage was focused on getting me close to the original shape rather than building what would become the final parts of the model. That step would be done at a later stage.
The ZModeler Brush and its QMesh Action was what I used the most to build the shape. For the bottom-back part of the helmet, I only had to select a row of polygons with ALT, then use the CTRL key to extract a strip of polygons before extruding and tweaking them with the Move brush as shown in the animation below. Using the CTRL key lets you separate parts without leaving the brush.
After more and more such extrusions and point modifications, you can start to recognize the helmet -- but only if you know the movie very well. At this stage, it would have been a mistake to start building details when the base shape was not yet well defined.
Refining the shapes
There is one criteria that is important to keep in mind through the entire creation process: the final 3D printing process. You must never forget to ask yourself key questions: "How I will print this part?" or "Will it fit the 3D printer’s building volume?" This means that you must work with multiple parts from the start rather than from one block which would need to be split into multiple parts at the end of the creation process.
Before thinking of a final split, I decided to go with each visual part of the helmet. For Kylo Ren’s helmet this was fortunately very well defined with side, top and back plates, a front grid and also front shapes for the mouth area, etc. Thanks to its design, it would be easy to hide the splits between parts such as what I did for the shape behind the chrome grid.
One last thing that I had to consider: How would I bring this helmet on a trip from France to Los Angeles? There would be no way to have such a helmet in the airplane cabin and it would also be rather big to fit in my luggage. I decided to build it in two parts: One for the front part of the helmet (the face) and a second section for everything else. I then planned to use strong magnets to fasten the two parts together.
As you can see in the screenshot below, building all these parts wasn’t very complicated. It was always the same process except to add some extra edge loops in order to control the boundaries and ensure nice connections between all of them.
I built each part separately using mainly the Topology brush. Then it was only a matter of copying the shape on top of the foundation that I’d built with ZModeler earlier. Below you can see the creation of the front part of the helmet, where I used the Topology Brush to do the loops and polygons. It’s quick to do and because the output is 3D printing, I have way fewer constraints than animation or real-time models when it comes to topology flow.
As you may know, the Brush Size radius will set the thickness of the model generated from the Topology brush. For this project, I generated surfaces without any thickness by setting my brush size to its minimum. This letsme modify only a few points to adjust the shape without trying to deal with the thickness or deforming the front and back parts of the surface.
Once all the surfaces were generated with the Topology brush and tweaked with the Move brush, I then proceeded to generate thickness for the shapes.
This stage was very easy and can actually be done in multiple ways in ZBrush. I wanted to use a process which would let me have a uniform thickness throughout. Panel Loops (found in Tool >> Geometry >> Edge Loops) lets you do that by adjusting only a few settings like no Loops, no Polish and negative Elevation. This resulted in the same thickness for all the panels as shown below.
Again, I did some verification with an eye for 3D printing, always thinking about the helmet’s size how it would fit my head.
Thanks to the Live Boolean feature, I could simply use a cube set in negative mode (on the right, below) and move it up/down to visually slice my model and see if I had any intersecting surfaces. I could then refine the model as needed and in real-time.
To build the chrome grid on the front of the helmet, I once again did retopology. This time, however, I used ZSpheres. It may be an “old” way of building but I’m from the old school of polygonal modeling, having been an edge modeler for years. Working with ZSpheres gives me very good control over my topology.
Once the topology was done and generated as an Adaptive Skin, I applied a Panel Loop.
It was then time to start refining the shape and more importantly, build the parts closer to what they would be at the end.
Below is an example of the grid. With the help of Live Boolean, this was used as a negative mesh on the support of the front part of the helmet. By adding a positive copy of the grid, I now had both parts.
Regarding the negative part used with the Live Boolean, I applied a small Tool >> Deformations >> Inflate to create a minor gap between the negative and positive parts of the mesh. Such a gap is necessary in order to ensure that assembly would be flawless after having the model printed. If the positive mesh (the grid) was too thick, it would be impossible to insert into its support or would require a lot of sanding and other post work. 3D printing can take a lot of time and (depending on the material used) can be quite expensive. It is therefore always important to do one’s best to anticipate and eliminate potential issues.
For the eye grid shape it was actually a lot easier than I had expected, thanks to multiple ZBrush 4R8 additions:
First, I built a series of cylinders as using an ArrayMesh composed of three stages. The first stage created a row. The second stage copied the first stage’s result, but with an offset on the X axis so that they wouldn’t be aligned. The third stage duplicated both results multiple times. I really love the ArrayMesh because it is fully parametric.
I then used this ArrayMesh result as a negative mesh on a rectangular volume to create the grid shape itself.
The last step was to bend it as a kind of half circle. For this the Bend Arc deformer found in the Gizmo 3D was perfect. As an alternative, Bend Curve could have done the job. Some refinements with the Move brush (and a large Draw Size) finished the job.
Creating the details
It was finally the time to work on the details. That meant no more topology tools -- only sculpting brushes. It was important to give the helmet an appearance of having been used.
You can see below the resulting mesh and details added after all the boolean steps. Unlike that of his grandfather, Kylo Ren’s helmet has a lot of minor/medium damage. I decided to apply all these scratches as geometry because it's faster to do it in ZBrush than to try and create them on the final print. It's easier for me as well!
To accomplish all of this damage and wear, I used several brushes from Orb and ZBrushGuide , in addition to some of the default ones from ZBrush (Slash, Dam Standard, etc.). Please note the large scratch on the front part of the helmet, at the grid location. This is where I split the grid support, since it was too large for the printer’s building volume. That's why it's important to begin consideration of your 3D printing constraints as soon as possible your design process.
These are the different parts of the helmet. In this screenshot you can see some connectors and magnet supports. Just adding them increased the production time by quite a lot as I had to make several adjustments and take into account that many more items necessary for the final production.
For such a project, preparing the model for 3D printing can take almost as long as the original creative process. This is because of factors like creating parts, optimization, preparation in the 3D printing software, etc.
Below is a quick render of the helmet done in ZBrush. For this, I simply applied basic materials without painting the scratches or adding any weathering effects. But it good fine enough to give a decent preview of the final model.
3D Printing test
At the beginning of this project, I was thinking of doing almost everything with my FDM printer, an Ultimaker 2+ Extended. It can build a very large model, is quite stable, the quality is pretty good for this printing technology and material costs are low.
Below is a test print of the outer part of the helmet’s front grid. This is a large, rounded part. Even with the help of multiple supports, the starting areas of the print had a hard time sticking. As a result, the print can't get a good start and just fails. I tried three times to print the same model with different settings and always ended up with the same result. It’s not a problem of printer as I have done many successful prints with the Ultimaker2+. The problem lies more in the shape itself.
Trying different orientations was helpful and I was ultimately able to successfully print the model. But it made me understand that there would be many more complications in trying to print the whole helmet with an FDM printer. All the parts are quite big and thin, with no real flat areas from which to start the print. It would have meant a lot of potential failures. (This in turn would mean wasted time and money.) On top of that, the FDM printing process is slow compared to SLA and time was already a big concern for me.
Below is the part printed after quite a few tests. Unfortunately, the printing time was long, a lot of supports would have been needed and the surface finish would require a lot of post process.
With all of this in mind, it was time to switch to the Form 2 SLA 3D Printer from Formlabs.
Preparing the model for the Form 2 - SLA printing
I have to say that I really love this printer. SLA is more expensive than FDM, but the needs for surface finishing, post-processing and support management are way ahead.
Below are some screenshots from the PreForm software, which manages the Form2 printer. You can see two bounding boxes: one blue and one gray. The gray one is the maximum building volume and for many of the helmet’s parts I was nearly at the max limit as shown by the blue box. This meant that I had to try multiple orientations and play with the settings to make it fit this maximum size.
Another point to consider was the amount of support needed. For some pieces like the front grid, I had twice as much support material as material for the part itself! When printed, those support materials are basically going to waste as they can’t be recycled for reuse.
Support management is a key item as they are not only used to allow printing of overhangs, they also give the model sufficient strength to support the stress of the peeling process when the freshly printed layer is detached from the resin tank.
Cleaning the 3D print
All my 3D prints have been done with a setting of 100 microns per layer and the Gray V3 resin. Even though the resolution was at the lowest setting, the result was perfect and it allowed me to print everything within the time frame that was available to me. At 100 microns resolution, there is honestly no comparison between SLA and FDM. Printing at 50 microns would, of course, have reduced post work somewhat, but I was limited in time.
In the photo below, you can see a large part, taking the entire diagonal space of the build platform. This piece was technically too big to fit within the print volume size but changing the orientation allowed me to barely fit it within the printer.
Below is the front grid which takes the maximum volume size. As you can see, it's too big to fit the cleaning kit. That meant I had to use double the IPA alcohol. In fact, I had to remove the support during cleaning rather after, in order to make this process easier.
It was now time to do my first assembly tests. There is always a lot of mental stress at this stage but fortunately, everything fit perfectly. At the top of the grid support (which is in two parts), you can see a weird extrusion with a hole. This is the magnet holder, placed so that both large parts of the assembled helmet could snap together.
This is the part of the process which stresses me even more. The more printed parts there are, the more that has the potential to fail during assembly.
I started to glue some of the parts together, adding putty, sanding, etc. At this stage of the process, I was only 24 hours from when I’d be boarding my plane to the U.S. for the 2017 ZBrush Summit. If something went wrong, it would have been a big mess: Even the smallest parts required 10 hours to print and some others actually took 16-18 hours!
To glue everything, I used the well known Crazy Glue/Super Glue. To fill the holes and gaps, Tamiya putty. In fact, I only sanded these connected parts. There wasn’t time to sand everything else. I also added some very strong double sided tape inside the helmet, to which I affixed some black fabric. Obviously, I didn't sand the inside except where the support spots were too prominent and would have scratched my head.
Below is the top part of the helmet, printed in three parts which were then glued before applying some putty.
This is the front part of the helmet, which then became the support for the grid and the mouth mask section. As I explained before, I had to split it into two parts to make it fit the printer volume size. I used the scratched/slashed area to do this split and only the part around this grid (except below the eyes) would be visible. A little bit of putty and sanding was needed to make it look nice.
This is a great example of anticipating the constraints of 3D printing to inform the design of the model.
And here it is!
The final stress! It was at this stage that I was worried that despite all my efforts, both parts wouldn't fit my head, wouldn’t snap together, or even might not fit in my luggage! Luckily, everything was fine and in fact was close to being perfect. I was able to wear the helmet; the size was good and stayed in place around my head without problems. To be honest, I have to admit that I was laughing in jubilation in front of the mirror the first time I wore it.
There was only one place where there was a slight offset of ~2-3mm due to a lack of support which then caused the part to deform just a little bit during the 3D printing process.
Once the helmet was assembled, I started the long process of painting. This is not where my skills are the best. I used only Tamiya paint cans in two colors: a half shiny black and a silver grey. I wanted a real chrome but nothing was in stock at my usual supplier and my plane was taking off only 12 hours later.
I did some weathering effects and scratches using a dry brush technique with the black color. I used a chrome paint with a small brush for the inside of the scratches and on some shapes’ corners.
This is the final helmet on my head. In the photo on the right, you can see that the assembly is not perfect on the right side of the front grid. Magnets were missing, creating this gap.
And here is the helmet at our ZBrush Summit, resting on part of a Kylo Ren costume I bought on Amazon.
Me and my helmet below. Well, it's quite hot with that on your head in the heat of a Los Angeles summer, especially with the scarf and the neck lock. Despite the recent assembly, the smell of the paint and glue was not that strong but was certainly present! The use of magnets was a good idea, but only as a temporary solution. They are too strong for the Super Glue to hold them!
The helmet on the ZBrush Summit table during the EA Motive Star Wars Battle Front 2 presentation. I was very proud ;p
Is it worth doing your own helmet? Yes and no. It really depends on your 3D skills and 3D printing knowledge. It's dozens and dozens of hours of work, including experiments. It is not really a project for a beginner in this field, but definitely a fantastic project to do.
As for the the cost it added up fast. (Note that prices have been converted from EUR to USD and include French taxes.)
- 1.4L of resin Grey V3: 266 USD
- 1 resin tank: 77 USD
- 10L of IPA Alcohol: 40 USD
- Sanding tools (Japanese): 7 USD
- Paint: 40 USD
- Glue / double sided tape: 29 USD
- Misc (paper, masking paint, paintbrush, etc.): 15 USD
Total cost of the materials: 474 USD
This cost doesn't include the price of the printer itself (3500 USD + taxes) or electricity to run it. Of course, I didn't include some of the tools I already had like the sanding sponges, papers, etc. I could have saved on resin by reducing the global thickness a little bit… but too late! This means that we could evaluate the final price to be 500 USD without considering human labor.
The project took a total of 4 days, 11 hours and 30 min to print everything.
Now if we look at the commercial Kylo Ren helmet, you have a choice of crappy and cheap ones or very good but very expensive ones. The only one I found in the latter category is this Anovos one at 699 USD. In that case, yes -- if you are a huge fan with the skills and technical tools/knowledge, it's worth doing. Otherwise it's actually more cost effective to buy a the Anovos helmet. And if I will say that if I had to sell mine the price would be at least twice my material cost for a minimum of around 900-1000 USD.
Conclusion about the Helmet
It has been a fantastic project for me and I have to admit that I love mixing both the virtual and real worlds to achieve an end product that I can have in my hands. (Well, on my head.) I learned quite a lot along the way, which is for me what I love. Of course, I learned from my mistakes as well. I hope to one day do a Darth Vader helmet and I'm sure that with my experiences on the Kylo Ren project it will be easier.
I’m also certain that with a couple of extra days to work on this project, I could have improved it -- especially with a better finish due to more sanding and better painting. What made me the most proud is that during the ZBrush Summit some people thought that we had purchased this helmet. They were pleasantly surprised when we told them it had been built in ZBrush and 3D printed.
Now it's time to build the lightsaber!
Here is most of the creation process of the helmet in 3D, during my ZBrushLive sessions. Unfortunately it doesn't cover the last part with all the post process after the 3D print. And sorry for my "French accent"!