Hey there digital upholsterers! It took some time, but part 2 of the Chair series is finally here! This tutorial was written by Guilherme Henrique.
As my desktop was possessed by a demon, I’m having troubles to record a video without strange stuff suddenly appearing, so this second part will be a text one! yeea đ
(What?!, you didnât see the first part? :O Check it out here!)
Without further ado, letâs take a look at what we’ll be doing today:
-> Ingest some caffeine, and here we go!
The model we have so far is already quite good for a render, but what if I told you that we can improve it even further? Even getting a pleasing result with subdivision modeling, we are somewhat limited in terms of what can be achieved in a reasonable amount of time without getting crazy, wrinkles and that kind of stuff would be very hard to model in a convincing way by just pushing some polygons by hand. With a powerful enough computer we can push our models further by using some sculpting tools and techniques, so you can put the technical stuff aside for a bit and focus entirely on art.
In order to work in Blender efficiently with a high amount of polygons (needed for sculpting), we need to tweak it a bit, so lets set it for optimal performance:
1. Go to File > User Preferences (Ctrl+Alt+U)
2. In the System tab, enable VBOâs
What this does is Enable Vertex Buffer Objects, changing the way OpenGL deals with geometry to a newer approach, so instead of the GPU making a call for every face you want to draw, with this youâll upload all the geometry at once as a buffer, and draw everything in a single call. Very neat, if possible, save it on as default, worth it.
Ok so weâre done, letâs sculpt!
1. Take off the Subsurf, instead weâll use Multires Modifier!
(The Multiresolution modifier gives the ability to subdivide a mesh to different levels depending on whether you are viewing it from the 3D Viewport, Sculpt Mode or at render time.)
2. Enter in Sculpt Mode and subdivide the mesh four times in the Multiresolution modifier tab, now we have enough polygon density to add finer details!
3. Itâs always good to have some reference when doing art, so lets gather some pics of leather folds, etc:
4. Open the Tool Shelf (T), we have here the brush settings. Now we have two main options:
5. In this case, Iâll be mirroring both X and Y axes in the sculpting process, this way Iâll only need to sculpt Âź of the model, you can sculpt everything unmirrored as well too for an object with more personality and less repeated features, but youâll spend a good extra amount of time at the expense of uniqueness.
To mirror brushwork in a certain axis, go to the Symmetry tab (In the Tool Shelf âTâ inside Sculpt Mode):
6. Now comes the fun part: Setting the brush and sculpting!
Some guidelines on this subject:
? Under the curve tab, you can set the falloff of your brush to any curve you desire:
If you have no idea what this is about and need some examples?
? Control the Brush Size using (F) and the Strength using (Shift + F), these controls are also available in the Tool Shelf (T)
* More Sculpting Hotkeys here: http://wiki.blender.org/index.php/Doc:KO/2.6/Manual/Modeling/Meshes/Editing/Sculpt_Mode
7. Now just start sculpting, trying to replicate some leather foldings. Start near the buttons if you are new to sculpting overall:
(Its highly recommended to do it using a tablet, but you can do it with a mouse too, just donât expect it to be just as fun)
8. If you are experiencing any slowdowns, you can toggle on Optimal Display, under Multires modifier tab to skip some edge drawings, or buy a couple of GTX Titans and Teslas đ
9. If you hold shift while in Sculpt Mode, you can smooth the mesh with your current brush, use this to smooth a little the ends of foldings in order to have a nice fade. – But donât smooth everything that much, stuff still need to be sharp for the awesome factor!
10. Try to experiment with new brushes and curves, find what fits best for what youâre doing
Sculpting takes time, itâs a kind of trial and error approach. Donât be afraid to stop, delete everything and start from scratch, what you need is persistence, be it doing a cube or a dragon, skill takes time to be built (like muscles!), donât worry about that đ
(Hey! remember that we have the cushions instantiated? If you add a Multires modifier to the other instance and set the subdivision level, all your sculpting done in one mesh will be transferred to the other!)
Ok, so now we have a pretty neat mesh, but we still need some colors and shading to make it really pop up. We have a bunch of ways to do it, we could bake our sculpted details to a low poly mesh, and use it in real time applications (like games) for example (âbake, what?â Youâre unsure about what this is? Lucky you, we have a very comprehensive article about game assets & pipeline, right here!), or you can project some textures on the high poly, be it with UV or generated coordinates. As our focus here is on a final Product Viz render, weâll be doing a quick UV Unwrap and using the high res model for our final render, so lets do it!
1. Start by entering in Edit Mode and selecting these edge loops/edges:
2. Mark these edges as seams by pressing Ctrl + E > Mark Seam
Before we proceed, letâs quickly understand the logic behind this:
? When you mark a group of edges with a seam, this means that the marked area will be cut in that location, so in this case weâll be separating the top > middle part > bottom, this way weâll have three separated parts (in the UV Editor)
? The whole point in this is to transform our 3D mesh into something that we can put some 2D textures into it, so we need to have all the geometry open in a plane (2D space)
? This is why weâve added another cut in one of the middle-part edges! so it ceases to be a cubic/cylindrical form to be a plane! đ
3. Unwrap it by pressing U > Unwrap:
Note that the buttons on top had their UV coordinates totally squeezed, this happened because we havenât cut enough our geometry to get the algorithm to unfold well all the geometry into a planar space.
*you can create a checker grid texture to check stretch issues
Now that you know what a seam is, how about to cut our buttons from the cushion, so theyâll have their own UV islands?
4. So lets select the same edge loops in all buttons! (remember how? Shift+G to open Select Similar, then choose similar normals!)
Apply a seam to them and unwrap everything again, now you should have a way better unstretched UV!
(take note that our UV layout here is far from perfect, we just need something good and fast enough to allow us to achieve our goal -a render- )
You can spend a good amount of time tweaking your UVs to perfection (read more about it in the UV section of this post), but in some cases you may just want something that will hold your textures in place and look good enough on camera, each case needs a different approach, but lets stay in the basics with these đ
Ok, so we have our UVâs and everything is looking fine, we just need to craft some nice looking shaders for our furniture right now!
I could simply put a leather texture to use as a base, but weâll go a bit farther and create our very own leather pattern, and then mix it with a tiled leather texture to add a bit more detail, and some shading goodness to take it to another level.
First weâll be making a bump map for the leather pattern using procedural textures, the bump map in this kind of material is the texture that contributes the most to the final result, so instead of using a photo as a base, we can do better by creating it procedurally, this way weâll get a crisper and cleaner bump map to work on, resulting in a pleasing render đ
The procedural leather pattern was heavily based on the work of Eduardo Maldonado, this guy creates very nice procedural shaders, totally worth a check: http://elbrujodelatribu.blogspot.com/
*Note that the Scale values will vary according to the overall scale of your model, so donât be afraid to change it in case it gets too big or small*
? Leather Pattern:
1. The first thing weâll be doing here is to add a wave texture, this will be the base for our pattern:
2. Then weâll add a Math node (Power) to raise the contrast between black and white areas, creating a nice mask for us:
3. Letâs use a Color ramp to control the range of blacks and whites, for our pattern we need a thin black line for the bump map:
4. The leather pattern consists of small squared shapes, like a checkerboard, and this is what we´re trying to achieve, for this, lets duplicate all that we´ve done until now, but with a 90 degree rotation using the Mapping node and setting the texture coordinates to UV (procedural textures can be used without UV coordinates, but this time weâll be using them, in case you donât want to use UVâs, you can set the coordinates to object instead):
5. Now, weâve to merge the two groups together to have our base texture. Iâll be using MixRGB node, blending in Darken mode and using the first group as the mask to preserve a bit more color information:
6. Lets soften a bit these values using the Invert node:
7. Our main pattern is done! Now we just need to create a bunch of variations to blend in this main pattern in order to have a better organic feel, for this lets duplicate the whole node tree we have so far, but this time using different rotation and scale values:
8. And one more time:
9. Now itâs just a matter of merging everything together using the MixRGB nodes in Darken mode, as we did before:
10. And one more time to blend the bottom one as well:
11. And last, lets use a Gamma node to tweak a bit the color intensity, and low down these highs:
And this is how everythingâs looking so far:
? Base Shader:
1. And the magic starts to happen, from here Itâs easier to just look at the images and understand the changes, the leather pattern we just did goes into the height input of the bump node:
2. For a sexy shiny leather we need to add some glossy reflections to it:
3. To control the roughness we can do some tricks:
Here Iâm using the inverted leather bump map texture with some gamma adjustments to have some areas smoother than others, quite a subtle change but can add a bit of realism to the whole thing later:
4. Surfaces like leather tend to be glossier at grazing angles, to simulate that, weâll be using a fresnel node to control the mix between the two nodes plugged into mix shader:
? Secondary Leather Layer:
1. Iâll be using a tiled leather texture from CGTextures here to add a bit more depth and detail to the whole material, and also tint it a bit with a brownish color:
2. And then also use it as a bump map, the idea here is to use this texture as a detail map for the leather, as it will be merged with our main texture later, adding a bit more detail and texture:
3. Before merging everything together, letâs use the new pointiness output from geometry node to add a bit of variation to the leather around the edges:
4. And lets increase a bit the contrast to highlight more the edges:
5. Now weâll use it as a mask to highlight the edges of our leather texture:
6. Before we proceed, we can tweak these values a bit and add a little more variation by using the procedural pattern we did before and overlaying it with our edge mask, this relies a bit in being quite an experimentalist:
7. Ok, so letâs put everything together:
? Final Shader:
1. We can start by merging everything together using a mix node, Iâm using basically the procedural shader as our main shader, and just a bit of the photo-sourced one to add some subtle details:
2. Weâre almost done! lets just tweak a bit more by adding a second âcoat of varnishâ, this is totally up to you, the look Iâm pursuing for my chair is a hard polished leather:
*Iâm using the bump map from the procedural leather in the glossy node here too
3. This time weâre gonna use a Layer Weight instead of the fresnel node to do a blend based on angle, fresnel and facing work a bit different each other, test both!
*This time Iâm using the bump from the photosourced image as the normal of the layer weight node, this will add a bit more texture and detail to the overall shader:
4. And weâre done! lets take a look in the whole node tree:
The goal here was to show how we can combine several elements together to create something unique, dont be afraid to test new things, connect some unknown sockets to see what happens, remember: just by doing that we can really learn it!
Tip: You can get some different results by adding a noise texture straight into the Displacement socket of the Material output to simulate some leather foldings, and use a ColorMix node to control the amount of strength of the displacement:
We have our main piece ready, but we still have some chair parts left, so lets do it!
For the metal parts, we’ll be using a photosourced texture as a base, this way we can have some interesting bumps, glossiness and shapes, contributing to the believability of the piece, for the straps, I’ll be using the same leather shader we did before.
? Leather Straps
1.For the straps weâll do a quick unwrap and reuse the leather shader as itâs a piece that will be barely seen in the final render, so letâs start by doing a Smart UV Projection by pressing U in the Edit Mode while selecting all the geometry (press A for that)
Be sure to have all transformations applied to your mesh before performing the unwrap, you can do this by pressing CTRL + A > Rotation & Scale. This will reset all the transformations you did before and unwrap your mesh correctly.
2. Now apply the leather shader to it, if the leather pattern gets too small or large, you can adjust it by scaling your UV map accordingly.
? Metal Base
1. Lets start the same way we did before with the straps, doing a Smart UV Projection, this way we can add our photosourced details.
2. Iâve searched for a metal texture, CGTextures is a great place for this, the purpose of it is to add a bit of variation by adding scratches and so on.
3. Dont worry that much about it, this will mainly be for the glossy shader, so youâll be fine with a not so awesome metal texture, just make sure it has some cool color information that can be translated to a bump map/roughness đ
This is my shader setup for it:
The concept behind it is similar to the leather shader, a base texture being used as a source for our bump and roughness. I just used the image as it is for the bump node, while for Roughness I decided to invert it to catch some cool nuances, and then used a Gamma node to tweak a bit of the roughness intensity. Youâll always need to play a bit with your values until you find something that fits your ideas, so donât worry to test crazy stuff!
We also have two glossy shaders into play here, the top one is the main, responsible for the most part of detailing, due to the roughness map, the bottom one is intended to add increased reflectiveness, and also a bluer tint (from the texture) to the edges, as weâre blending it using the Layer Weight node đ
Hereâs the metal shader:
A bit dull because it has nothing to reflect đ
Ok, so the hard work is done, now comes the fun part: Lighting!
First weâll see how to create the infinite backdrop, used vastly by photographers to shoot products, and people. (not literally, generally)
Then weâll setup a bunch of light planes to light our scene, you can go crazy on this step and research lighting schemes used by studios and try recreating them inside blender, weâll go for a functional/artistic approach here:
? Creating an infinite backdrop:
1. The first step here is to add a cube that will serve as a base for our backdrop:
2. Delete the sides that you wonât need, here Iâm deleting everything but the floor plane and two sides of the cube, that will be our âwallsâ:
3. Apply a subsurf modifier to it and flip the normals by entering in the Specials Menu (W), in Edit Mode:
4. Now, set it smooth and add an edge loop (CTRL+R) into each each axis to support the floor plane, and start to shape the backdrop by scaling the edges to make it softer:
There are several ways to do it, so dont hesitate to try out different approaches.
? Setup of the Lighting Scheme:
Nothing super fancy here, what I did was just to add some light planes in strategic positions that give me certain highlights and shadows, there are some guidelines and strategies about lighting that you can research about, start by searching about the traditional âthree point lightâ setup, should be a good start đ
This lighting setup is not meant to be copied indeed, experiment your own lights and see how every change affects the object silhouette and form, understanding the concepts is better than just knowing how to apply them;
The Main Light was my starting point, I wanted to simulate something close to a studio setup with some strong cold light like a led one, for this I used the Blackbody node plugged into the color socket of the Emission Shader, there you can set specific color temperatures for your light sources
Hereâs a nice reference chart from http://lowel.tiffen.com/
This is the actual simple node setup for the majority of light planes:
With the Fill Light, I wanted to create contrast by using complementary colors:
Color wheel by http://designwashere.com/
I think you got it, they are the primary or secondary colors that appears opposed to each other in this chart, and can be a great element to improve your compositions! Another way of finding a complementary color, that is less intuitive but more mathematic, is by increasing or decreasing its Hue by 180°.
Then with the Rim light I wanted to highlight a bit the silhouette by positioning the light source opposed to the camera in a way that picks up some borders of the object on focus.
The background light was to light our infinite backdrop, softening a bit the shadows and creating a nice gradient from left to right.
With the Sun Lamp, I wanted to add some highlights from the top to pop a bit of the shapes of the chair, and also soften a bit the shadows by using a high value for the size of the lamp. This comes by experimentation, some things like this come by testing and testing stuff to see what works better for you.
? Color Management
A good practice to do even before the lighting setup is to add some film emulation to your render, if you want to obtain a specific look to your renders, I highly recommend this because it can totally change a mediocre render to somewhat almost awesome! But in some cases you may want the render to be raw, like if youâll want to make some fancy post-processing outside blender and need all the color information, otherwise, itâs awesome!
The color management tab is under the Scene panel, there you can apply some film emulations and perform Exposure and Gamma corrections, very important if youâre using film emulations, in order to compensate the limited color gamut:
Thereâs also a look category with various film emulation profiles, it would be very cool to test them out and start the grading of your render there!
Down the street, we just have some buttons left needing to be pressed before weâre done!
We just need to tweak some stuff before to get optimal results:
? Adjusting a Camera
Weâre not going into greater detail about this, just some guidelines:
Focal Length:
Typical uses:
Less than 21mm: Architecture
21-35mm: Landscape
35-70mm: Street & Documentary
70-135mm: Portraiture
135-300+mm: Sports, Wildlife, Product shot.
Thatâs it. more info?
http://www.nikonusa.com/en/Learn-And-Explore/Article/g3cu6o2o/understanding-focal-length.html
http://www.cambridgeincolour.com/tutorials/camera-lenses.htm
Just donât limit yourself to use just what is provided to you. (the defaults)
? Render specs:
The right sample amount will depend on the resolution youâre aiming for, the type and amount of lights, scene occlusions and the list goes on, so the best way to find out is by TESTING.
Generally you can get a fairly decent result with low samples, something around 200 (but in a FullHD render at least), unless you decide to use Full Global Illumination, then youâll need a good amount of samples for a good ânoise freeâ render.
In general for glossy materials youâll need a higher amount of samples, due to the way unbiased rendering works, so hereâs the optimal render specs I generally use:
(Although some times my nerd side speaks louder and I just want to use everything maxed out with a very high sample count. This is especially true when I have sufficient free rendering time for these perks.)
? Post Processing:
We can always improve our renders even more by adding some real world glitches to it, an easy thing to do inside Blender is to add some camera artifacts to our render:
Note that these settings are VERY dependant on the type of image youâre manipulating, the Threshold value especially, so try it for your own and see what works for you đ
Here, the Glare nodes, the first is to add some glow to the brighter areas, as its name suggests: âFog Glowâ. The second one is to simulate the light streaks, artifacts from camera lens, as well as the Lens Distortion node, with the well-known chromatic aberration effect (use it wisely!).
? Further Post-Processing:
You can yet go beyond that, in a specific image treatment software like Photoshop or Gimp, where you can do some heavy color correction work, paintover and all kinds of grading and editing, I wonât be entering into the matter, thatâs a subject for a whole new article or maybe even a book!
And this is the final image processed as it would be for an advertising medium:
A quick layer overview:
Just some adjustment Layers with masks, I use these masks to apply the effect just to some parts of the image, like: in the second adjustment layer, I had used the Exposure to highlight some parts of the image in a similar way to the âFog Glowâ node in blender, but in a artistic way, so I used the gradient tool set to radial to add little spots of âglowâ, highlighting those parts. (and yes, I inverted it, its not a crazy filter)
Well, I hope you all enjoyed this quite long tutorial (sorry for that!) and learned a thing or two meanwhile.
Just some notes that need to be taken:
Hey, this whole tutorial series is not intended to be a âHow-Toâ guide to build a specific object, thatâs why we are doing it based on the barcelona chair instead of just copying it, if you want to really learn something, you need to work yourself on the informations you got and figure out how to apply them to your personal goals, THIS is learning! And youâll only start to learn properly when you get to stop just following a tutorial and start applying its concepts to what you want to do. Thatâs why Iâll never do something very specific that would be just a matter of copy and paste, I donât want that you to copy what was given to you, I want you to take that knowledge and make something even better, thatâs the goal!
Did you get it? SO YEAH, WEâRE DONE! see you next time! đ