My name is Lorenzo. I am a self-taught artist, programmer, and Blender user living in the Netherlands. While my daily work involves mostly programming, I have been working and playing with Blender for more than 14 years. At times it was just a sporadic use, then it became a more regular, daily activity. Blender was also a gateway to study traditional drawing more in depth, as I realized that 2D skills were fundamental to good 3D art.
In recent years, I have worked with several friends and fine artists to create renders and visual effects for art installations and small movies, often on tight budgets. Recently, one of the short movies I have worked on as a supporting visual effects artist, the Splintering Sun, by RS Nisio, was shown at the Indie Lisboa International Film Festival and won the Eye Research Labs in Amsterdam in 2018. I worked also as a supporting artist on another short movie directed and written by RS Nisio, The Banquet, which again won a prize in the Eye Research Labs in 2019. The Eye Research Labs is a yearly contest among artists enrolled in the art universities in the Netherlands; it takes place every year at the Eye Film Museum in Amsterdam.
When I heard that Blender 2.8 was coming out, also due to changing circumstances in my job, I decided it was about time I focused more on cleaning up my process and on testing how things could be approached using the new tools at our disposal. While over the years I modeled hundreds of items, my process has always been quite dirty and messy, frequently also due to time constraints. For my studies, I decided to pick up some objects that would have encouraged me to keep a clean workflow and to focus on details.
I went back to the tradition of industrial design, and I modeled some classic Braun products designed by Dieter Rams and Reinhold Weiss, some items designed by Wim Rietveld, and some more recent designs by Apple. It must be noted that I am not that passionate about industrial design in general; but I admire items that are designed with functionality in mind. Designers like Rams, Weiss, or Rietveld are masters in this. Their designs are more than just an empty focus on minimalism: they are built around the person that will use them; they fuse functionality and design inextricably. Other designers, such as those behind some of Apple’s products, create visually appealing designs, but in terms of functionality their creations are occasionally unconvincing or downright hollow (think about the tragic series of Apple mice, which make some applications, including Blender, almost a nightmare to work with). Not only that. You can buy a radio made by Braun in the 1960s and you can easily repair it and make it work; good luck trying to simply open the chassis of an iMac of the latest generations.
Above are some of the renders I created before the Braun RT20. Wim Rietveld and Kramer’s “Reply” table, Apple’s Mighty Mouse, and Braun’s HL70. The HL70 render is based on a tutorial by Vaughan Ling; it is interesting to see the process of a professional artist that switched from Modo to Blender.
Creating the Braun RT20 in Blender 2.8
The Braun RT20 is probably one of Rams’ most famous designs, and not without reason. It shows his ability to design intuitive interfaces with a hierarchy that we can grasp at first glance. The simplicity in the assembly and the focus on the textural quality of materials give it an elegant, spartan look that does not promise more than what it is supposed to deliver. There is a certain beautiful, sturdy, reassuring and yet extremely elegant honesty in Rams’ designs. They are often less exotic than some of Weiss’ beautiful designs (look at the HL70 desk fan above, based on Weiss’ HL1: it could very well be a spaceship), and yet they are never dull or boring.
When I started modelling the Braun RT20 I first of all collected a lot of references. I used Google images, eBay, museums of industrial design that have a web presence, and also YouTube. I also had a chance to see the Braun RT20 live in a local antique shop, and I could thus touch and get a feel for the radio with my own eyes and hands. Interestingly enough, the radio I saw had a button and a wooden plate replaced. While the replacement of the wood with one of different texture and color was not displeasing, the button had been replaced with one of a slightly different material that felt just wrong. In an object as simple as the Braun RT20, every element, every material, every angle counts: this is why I think objects like this can be very valuable to study for 3D artists. They teach economy and care in materials, and they train the eye.
I then set up the front, side, and back reference images in Blender. The new Reference Image and Background Image objects you can select from the Add menu (Shift+A) are all you need for this. You can adjust size, transparency, and display options from the image menu or by manipulating the image rectangle directly in the viewport. Having gathered the exact dimensions of the radio, I also matched the references to Blender’s grid units, so that the final object can be inserted into any correctly proportioned scene easily.
From the beginning, I took advantage of Blender 2.8’s Collections, which basically replace layers and groups as the main organizational tool you have in Blender. You can now nest endless collections, which act like folders, and thus you can really organize your project as neatly as you want, with a possibility to fine tune display options by collection and by object. I created a collection that would have contained the objects composing the radio, all parented to an empty, and called it Braun RT20. I then created a temporary collection where I kept temporary items such as empties that I use for symmetry, meshes for boolean operations, reference images, and so on. This allowed me to turn all these things off when the time for rendering came or when they intruded with the modelling process. I then added another collection for lights, lightboxes, and cameras, with eventual subcollections to test out several lighting options. But what really makes collections really useful is that they can be instanced across scenes and across projects very easily and consistently, similarly to Unity’s prefabs. Once done with the radio, I could easily import it as a collection into a room I had created beforehand, or I could fill an entire bookshelf with color variations. Collections are probably the first feature that made it impossible for me to go back to Blender 2.7. In the past, countless times I had nightmares trying to use groups to move around objects composed of hundreds of separate items. Instancing whole streets, cities, and creating your own kitbash files is a breeze (relatively speaking) with Blender 2.8, even if you are not an extremely experienced user.
One thing that I noticed is that people new to 3D modelling tend to overcomplicate things. When you need to model a manufactured object like the Braun RT20, all you need to do is to model the single pieces that the manufacturer and the designer had to break it into in order to mass produce it. In other words, industrial design can also teach you how to break your objects into components that make sense, components that are relatively easy to model and that allow you to think modularly.
I first started with the infamous cube, and matching the reference, I moved the edges to create a box (to be removed at the end of the process) which enclosed the silhouette of the radio, ignoring details such as dials and buttons. Then, using the box as a starting point, I started modelling the wooden panels. I duplicated the faces from the original box, separated them from the box object, and placed them into a new object. I then extruded the faces to give them depth, added details such as small insets, and finally added the bevels.
There are many ways in Blender to add bevels to edges (and vertices). One method is to go edge by edge and use the bevel tool (CTRL+B); this process is destructive, so removing or adjusting the bevel once you have added it can be a pain. Another way is to use subdivision surface, and add loops at the edges of your mesh: once again, this method is destructive, and in the case of simple surfaces like these wooden panels, it adds a lot of unnecessary geometry.
The Bevel Modifier: the Non-committal Hard Surface Modeller’s Best Friend
In the end, when modelling objects that rely on the precision of their bevels, it is much more sensible to use a non-destructive process using the Bevel Modifier, which you can add from the modifiers panel. In this way, you can adjust the depth of the bevel and the number of segments until you match your reference. As in Blender 2.7, you can also selectively apply bevels only to specific edges of your mesh. This can be done in several ways. The easiest one is by angle, where you apply the modifier only between faces that have a certain angle between them. The most flexible one, and the one I used throughout this model, lets you add a bevel weight to the edges of the model you want to bevel (select the edges, then press CTRL+E, then select the bevel edge weight tool; you can fine tune the weight also by using the Mean Bevel Weight in the Edges Data, in the Item menu in the top right corner of the 3D viewport), then choose the “Weight” option in the bevel modifier.
The Bevel Modifier has been completely overhauled in Blender 2.8, and it now has many settings that modelers have been requesting for years. You can now adjust the normals of the surrounding faces directly from within the bevel modifier, which makes beveling a pleasure as you do not need to add more geometry or adjust normals with additional workflows in order to fix the shading of the faces adjacent to the bevel; you can change bevel mitering, a feature that has been available to Maya users for a while; and many other improvements that make it hard to go back to Blender 2.7 once you have played for a bit in Blender 2.8. The full thread discussing the development of the new bevel features can be found here. If you couple the improved bevel tool with the Auto Smooth feature—which you can turn on in the Object Data Menu, under the Normals section—hard surface modelling becomes much easier.
I used this technique throughout the model, but I did not add bevels to edges that are hidden or out of view in the renders, as I did not want to add useless geometry.
The front and the back panel of the radio are obviously the tricky parts to model. There are two main approaches (and endless combinations of them) you can use here. I tried them both, as the purpose of modelling the Braun RT20 was to refine and study my process when dealing with mechanical objects. So I ended up with several versions of the back and front panels.
The easiest way is to rely completely on the boolean tools. With this technique, if we take the front panel of the Braun RT20 as an example, you start with a flat plane with the right proportions, and then you create a series of meshes that will be used to cut holes through the panel, using the Boolean Modifier. You must couple this technique with the Auto Smooth option and then play with the “Harden Normals” setting of the Bevel modifier (if you need to apply bevels), because otherwise the shading of your mesh will end up being wrong. This technique has the main issue of generating “bad” topology under many circumstances. Additionally, when you need to use both the bevel and solidify modifier with your mesh, you might need to learn to tweak a lot the order and settings of the modifiers in order to make the mesh look right. I also recommend, wherever possible, to set the Solidify Modifer to “Fill Rim” and “Only Rim”: in this way you end up with less geometry and, potentially, fewer artifacts. Even if the topology generated by the Boolean Modifier is not optimal, if you are modelling your object just with a final render in mind, then the only things that matter are render times and how that final render will look. Truth be told, many professional modelers occasionally use these “dirty” meshes to create spectacular cinematic work, as Tor Frick, one of the masters of hard surface modelling, did recently.
The other way is to use traditional subsurface modelling, which, when not pressed for time, I honestly still prefer as it gives me more control. Here you can start cutting the holes in your mesh, keeping in mind that octagons have the best number of vertices to get a perfect circle when you apply the subdivision modifier. So you basically start with a flat plane and then cut the holes you need in it using a combination of control loops (CTRL+R), knife tool (K), and a bit of knowledge of subdivision surface behavior (I recommend polycount.com or some of CGCookie.com’s tutorials for any questions you might have on the topic). Of course, in the case of the Braun RT20 this process can be tedious, due to the grid in the front. This is why the front panel is a good candidate for boolean modelling. Anyhow, even in this case, just as an exercise, I created a subdivision surface version of the front panel by first creating the holes for the grid and then building the rest of the front panel around it. I started with a rounded rectangular hole, then multiplied it vertically using the Array Modifier, to cover exactly one quadrant of the front grid. I applied the Array Modifier and, in Edit Mode, I moved the curved sides of the rectangles to match the reference. Using the Mirror Modifier with an empty at the center of the grid as a center of symmetry I could then generate the rest of the grid. I applied the Mirror Modifier and then built the rest of the mesh. I did not not need to be too clean, because the surface was flat and thus subdivision surface artifacts would not appear when normals were adjusted with the Auto Smooth function. In general, I rely on the craziest combinations of Array Modifier, Mirror Modifier, and empties to model as little as possible, especially when working on mechanical objects. So, remember: there are multiple ways to model something. Always ask yourself what the purpose of your model is (just a final render, a clean mesh to be used in a game or in a VFX shot, personal study) and act accordingly. If there is an easy way to solve your problem and get the result you need fast, go for it.
The back panel was fun. It was modelled again in two versions: subdivision surface modelling and with booleans. Subdivision surface modelling generated the cleaner mesh and the easiest one to texture, so I ended up using that one in the final render. It was again very easy: I started with one octagonal hole, multiplied it using the Array Modifier, then used the Mirror Modifier, and I had a good starting point for the rest of the mesh. As I do not plan on using the mesh in real time applications, I did not spend time collapsing edges, which is something you would normally do to reduce polygon count, especially on flat surfaces, where those edges and vertices add nothing.
All the other details that you see in the model are easy, small objects that are extremely fun and relaxing to model. Nothing special about modelling any of these items: this is traditional box modelling using primitives, with a combination of beveling (CTRL+B), control loops (CTRL+R), and inset tools (I) when needed.
For the antenna cable, I created the shape of the plastic sheath starting from a plane, which I then modelled while keeping the Subdivision Surface Modifier enabled in Edit Mode. I split the plane at the end and moved the ends into the plug, and then added a Solidify Modifier. I applied the modifiers and selected two edges close to the borders of the sheath, which I then separated into another mesh. I moved the edges inside the sheath and turned them into beveled curves, thus creating the tiny inner cables in a few steps.
I finally tweaked some bevels manually to make them less perfect where needed. For example, I noticed in many of my references that around the dial window the bevel seems to show some minor defects, probably due to the manufacturing process. Instead of leaving a perfectly rounded corner, I thus applied the Bevel Modifier and then sculpted the edge a bit by moving some vertices around.
I added some elements in the interior of the radio as well, to prevent the light from hitting the inner walls but also to give some barely noticeable reflections behind the grid, where I added a simple amplifier covered by a thin plastic net.
Materials were, overall, rather easy, even though you could go crazy and use complex PBR materials for everything. In general, I use texture-based PBR materials only when really necessary.
I used Cycles for the final render (but I did experiment with EEVEE). With the PBR shader in Blender, you can get a lot of materials used in objects like the Braun RT20 just by manipulating the Base Color, Metal, Roughness, and Normal inputs. There are reference values that can help you input physically accurate values for Metal and Roughness inputs, and you can use images as maps so that parts of your model have different levels of metalness or roughness. If your purpose is to do an artistic render, you can also adjust things by eye, until they feel right to you. In this sense, Roughness is probably what has the strongest effect on the feel of a material. Additional values you can adjust easily are Subsurface Scattering, which here I used only for the black plastic components and inputs on the back. Subsurface Scattering can add that bit of realism, if used at very low values, to a lot of plastic items, but it tends to lead to significantly longer rendering times, especially on older hardware.
For texturing the parts of the model that needed text I had first of all to identify a selection of fonts that matched those used by Braun. Then I exported the UV maps from Blender and I added the text in a black and white png in Photoshop. I then used a mix node with the png texture feeding the Factor input to mix the colors. I could have fed the texture directly, but I wanted to have the option of generating several versions of the radio, in different color combinations (such as the popular black/white one). The dial was entirely recreated in Photoshop, as well.
In terms of normal maps, I used a fine grain texture for the front panel, almost imperceptible but that made the light reflecting off the surface a bit more interesting. I used a wood texture on the sides, made by CGMood, and I used some height maps to add the inset text on the red circuit panels (the 240V text you see in the image), modifying the color slightly to add a yellow tint using a mix shader. The back panel might have required a bit more work to make it clear the white part is actually a thin slice of cardboard pasted on wood; but I had already spent enough time on the model.
I first of all created a lightbox table by adding a plane, extruding a face from it and moving it up to create an incline, and then bevelling the edge between the two faces. I finally applied smooth shading to the mesh. This is all you need. Sometimes artists add subdivision surface modifiers to smooth the lightbox plane, but this adds a lot of unnecessary geometry that might slow down rendering.
I then added an HDRI environment I downloaded from HDRIhaven.com. I played a bit with the position of the HDRI map to get the sun light to come from the right, and set the strength to 0.85. I added also a sun lamp, with a strength of 2.0, which provided a single source of light with parallel shadows. I made sure to match the position of the sun in the environment map with the one of the sun in the scene, in order to avoid distracting shadow patterns. By playing with the strength of the sun lamp and of the environment map I can balance out the effect of the diffused light from the environment with the one of the direct light coming from the sun.
I added a weak emission plane with a strength of 0.3 to the left side of the camera, to lighten up the shadow on the side of the radio. You could achieve something similar also by using a simple plane, bouncing back the light coming from your main lights.
For the renders in this article I also added another blue emission plane with a gradient texture and strength of 1 over the entire scene. The plane also projects a shadow, so it adds a sort of natural vignetting to the entire scene while also adding a perceptible blue tint, more noticeable into the shadow.
For color and exposure adjustments I just used Camera Raw in Photoshop, but you could use Blender’s built-in compositor. To get the best results, make sure to export in PNG or TIFF and 16 bits color depth.
Goodbye, for Now!
I hope this Behind the Scenes was useful to the readers of Blender Nation, in particular to new users of Blender. I know it was not a subject as exciting as other great tutorials on Blender Nation, but modelling objects that are apparently simple can teach people new to 3D art a lot, and it can help veterans revise and streamline their process.
I would also like to remind all people using Blender for work, art, or just for fun to give something back to the Blender Development Fund. Blender has changed the world of 3D art in the best possible way, and become a gateway to a world that was being guarded by hefty license prices. Whether you are a professional or a kid just starting out with 3D art, give Blender a try. With the improvements introduced in Blender 2.8 there is really no reason not to make this beautiful software backed by an amazing community an integral part of your workflow.
I would also like to thank BlenderNation for asking me to write this article and I would encourage all those who follow this website to check their Patreon page.
About the Artist