I recently started to take deeper note about what options are available for the 3D viewport in Blender. I was accustomed to some features but I didn't know really how much choice I had and how an informative and good-looking viewport could help me make better art.
To change the viewport shading mode, find the shading modes in the top right corner of your 3D viewport. As a rule of thumb, use solid shading for modeling, material preview for materials, texturing and shading. Rendered view in turn is intended for lighting setup and rendering.
Viewport shading is the eye into your scene allowing you to get a good look at your work. But in order to use it as effectively as possible we need to put on the right goggles for the task. Let's continue to explore what settings may be useful for any given situation.
Viewport shading refers to the overall look of the 3D viewport. Since Blender version 2.80 and the introduction of Eevee we have a lot more options than we had before.
We find the settings for the viewport shading in the top right corner of the 3D viewport. These are the shading modes available from left to right:
There is also a dropdown menu with many mode dependent options.
Most of these settings are down to personal preferences. But it can be good to know what kind of information we can view directly in the 3D viewport as we work with Blender.
In this article we are focusing on shading. But the shading also go hand in hand with overlays. We cover those in this article:
Related content: How to use 3D viewport overlays in Blender 3D
I will use this scene to show some viewport examples.
This is a print screen from a Cycles rendered viewport with denoising turned on. It is a simple mailbox asset and a few primitives with a single area light above set to a red color as well as a sky texture to light the scene.
We can render the viewport from the current view by going to View→Viewport render image.
There is also the option to render animation or to render key frames for the selected object.
Before we dive into the settings for each mode, let's start to resolve some common beginner mistakes that happens because of the wrong viewport shading mode.
The most common problem is that we can't see a texture or color that we added to our shader. This is most often because we are still stuck in solid viewport mode.
To resolve it, just change from solid viewport mode to material preview mode in the top right corner of the 3D viewport.
Material viewport mode will set up a default lighting with no shadows so that you can see your materials in full. There are a few settings related to this viewport mode as well that we will cover later.
Another common problem for beginners is that during the modeling process you are not able to select a vertex located exactly behind another one.
To be able to select a vertex, edge or face behind another one we need to enable X-ray. This is the button just to the left of the viewport shading modes.
X-ray is available in solid shading view and wireframe. When we switch to wireframe, x-ray is also automatically turned on. We can toggle between wireframe and any previously selected view mode by pressing Shift+Z.
We can also switch between all viewport shading modes through a pie menu accessible with the shortcut Z.
It is a common misperception that wireframe mode is the solution to select elements behind each other. But in reality you can toggle x-ray independent of wireframe and solid shading.
Often when we start a project in Blender, modeling is the first thing we do. For this we mostly use solid viewport shading, so why not start there.
You can learn more about Blenders modeling tools in this article.
Related content: More than 30 Blender modeling tools explained
If solid viewport shading is enabled, and we expand the viewport shading menu we will see four sections.
According to the manual, solid view is based on the workbench engine. While I have not found any capability within the workbench engine that can't be accessed in Eevee or Cycles, it is still nice from an organizational perspective that we can access each part of the 3D viewport as its own render engine.
Later when we dive into material preview mode we will learn that material preview is actually using Blenders real-time render engine Eevee. It is not just based on Eevee. It is Eevee. There is a relation between render engines and view modes here.
The 30,000 feet difference between the viewport and a render we create by pressing F12 is the format. An F12 render can be saved to disk as an image file while the viewport is real-time or close to real-time read directly from RAM. But let's not get ahead of ourselves.
If we start with the lighting section we have three options. Studio, Matcap and flat.
The light we set up in solid viewport mode always follows the viewing angle. So if the light is set up to light from the left it will light from the left no matter how we move the camera.
The studio light is a basic light setup for the viewport. If we press the current sphere we can see that we have a few presets. For each preset we can change the rotation of the light setup.
This lighting system can be further customized if we press the gear icon. This takes us to the light setup where we can access up to four different lights. If you press "edit studio light" the viewport lighting for solid mode will be setup from here instead of the presets.
Here we can see the studio light section and below it, we can expand the "editor".
Each light has a few basic components. Diffuse, specular and smooth which dictate the sharpness of the shadows.
By click and dragging the spheres we can also change the direction of each light as well as saving additional presets. However, the presets we save will not be accessible from the viewport. Instead, we have to go to user preferences to enable them.
Studio light is most often used when doing traditional modeling such as polygon modeling or box modeling. More on different types of modeling can be found here.
Related content: 10 Different types of 3D modeling techniques
Matcap stands for material capture. It may seem similar to studio light at first. The big difference here is that matcaps are created from images. They are more dependent on the object than studio light, and we can use different matcaps to highlight different features of an object.
Matcaps are often used when sculpting to highlight different features and to see the shapes better. A common matcap for this is the diffuse dull red.
We can create custom matcaps as well but it is not as straight forward as going into user preferences. But we can add matcaps in the same place if we created one in another blendfile.
An interesting use of matcaps is the normal map matcap. We can use this to create normal maps based on geometry that we model. For instance, we can create details and render it using viewport rendering to get the matcap look.
The last option is flat. This essentially does not calculate any lighting. Instead, we rely on just the color information. This reduces the forms in our scene to just flat shapes and outlines.
This is what it would look like by default. But we can change the color of our objects in the next section.
This is an example with flat shading and random colors.
In the color section we can decide what source we want to use to bring in colors for our objects. This is then mixed with the light setup to create the viewport shading colors.
By default, this is set to material. If we go to the material properties tab in the properties panel and find the "viewport display" section, we have a color property. This is white for all materials by default, just like we see in the example above.
We can set a custom color here for each material in our blend file.
If we change the color setting to "object" instead, we go to the object properties and find the "viewport display" section here instead and use the color value found here.
We can find a viewport display section in these places.
We can also use the vertex paint. Vertex painting is a whole topic in itself that I won't cover here. But you can go to the top left corner of your 3D viewport and switch mode to vertex paint.
In this mode you have access to painting based on vertex. You can give each vertex a color and the "resolution" or control over how detailed you can paint depends on your objects mesh density.
On the second row we have single. This will allow us to set a custom color for all objects right here in the menu.
The last two alternatives are random which will give us random colors for each object and texture will show color based on the texture we have set up on our objects.
For the background we have three options. The default is theme. This just use whatever color or gradient is configured in our theme. To find this setting. Go to Edit→Preferences. Navigate to "3D viewport" and find "theme space" at the bottom. Then open the "Gradient colors" section. here you will find the background settings for your theme.
The "world" option will use the color found in viewport display under the world material tab in the properties panel while "viewport" will give you a color selector right in the menu. To me this seems like duplicated settings for the same thing. But maybe there is a use case I haven't thought of.
For solid view there are quite a plethora of settings. The first one in the list is Backface culling. Enabling this will hide any face that is viewed from the backside.
Any face we have has a front and a backside, and backface culling hides the back side from view. This can help us to easier see in some circumstances while modeling or it can help us indicate when we have an error with inconsistent normals.
Next is X-ray. A toggle for x-ray is exposed just next to the different shading modes as well. It is available in both wireframe mode and solid shading.
X-ray enables us to select things behind other objects. In edit mode for instance we can use x-ray to select two or more vertices that are exactly behind each other. The value slider next to the toggle changes how much objects become transparent in the viewport so that we can see what is behind.
The shadow setting allow us to test how light interact with our object in real time. This can help to show the form of our objects. This can be very useful together with the next setting which is cavity to clearly see details in our models. Many 3D sculptors use these settings together with a matcap.
We can control the strength of the shadow. A higher value gives a darker value. We can also access a few more settings by pressing the gear icon.
For instance, we can control the direction of the light as well as the properties of the terminator. The terminator is what is known as the edge between light and dark.
Cavity has a few settings of its own. The most useful settings are exposed as ridges and valleys. We can use these to dial the contrast and spread of the effect on these features on the mesh.
The gear icon exposes additional settings, including samples and distance. By now we are really dealing with details here and I think for the most part you won't gain much by changing these. Be a bit careful with samples though since a too high value can give a real performance hit.
Next we have depth of field. This is a bit limited since we need to look through a camera with depth of field setup in order to see this effect.
I discuss cameras and touch on depth of field in this article:
Related content: 5 cool camera tricks in Blender 2.80
The outline settings gives us the option to have a colored outline on our objects. Something that I have never used.
The last settings is specular light. This is turned on by default. It gives a little highlight on soft shaded edges and ridge. Until only recently I didn't think it was even possible to control the viewport at this granular level, so this is another settings I never touched.
Let's move on to material preview now.
Just like solid view is based on the workbench engine, the material preview mode is based on Eevee. It is meant as a way to quickly preview materials as we create them in the shader node editor.
I will correct myself. Material preview isn't based on Eevee. It is exactly the same as Eevee. It is essentially rendered preview mode hard-coded to use Eevee as it's render engine.
You can learn more about Eevees render settings here:
Related content: A guide to Blender Eevee render settings
In material preview mode we only have two sections. Lighting and render pass. This mode is primarily designed for texturing and shading. We control these features through our shader node setups and UV Mapping for the most part. This leaves much fewer options available for the viewport mode itself.
We can choose to enable and disable the world light and scene lights. The world light refers to the world background material and the scene light refers to all light objects, light probes and emission materials.
Turning both of these settings on really turns the material viewport mode into an Eevee exclusive viewport render mode. This can be very helpful if we want to quickly try to match a scene setup between Eevee and Cycles. We can switch to Eevee as our render engine, adjust any render specific settings and the material preview mode will adjust accordingly.
However, if we haven't set up our lighting yet, we can use some built-in lighting capabilities of this view mode. This is the main purpose of this viewport shading mode and the default setup.
There are several built-in hdri maps we can choose from to light the scene. The default selection allow us to quickly switch the lighting condition and see how our model or material looks in different lighting conditions.
We have a few options when dealing with the built-in hdri maps.
The gear icon is a shortcut to the light section in the preferences. Here we can add additional hdri maps to the default selection.
Here is a nugget for you, the only reason that we don't get shadows in the default setup of material preview mode is that the world material in Eevee can't cast shadows.
Next we have the render pass section. This enables us to single out any Eevee based render pass and view it separately along with the default combined render pass that we normally see.
A render pass is simply one element of a shot singled out and separated from the rest. This can be things like the world background, shadows or a mist pass. But it can also be different parts of the light. For instance diffuse light or specular color.
By viewing individual elements we can easier see what channel contributes to the look or final color of any pixel. This is great information to have as we develop our scene.
If some section is not properly lit or gives us some unexpected look, we can use the render passes to cycle through and see what kind of data is contributing to the current state of the scene.
An example could be the normal pass that we can use to view the normal data to spot if any normals are flipped. Or the mist pass that we can use to preview the effects of the mist pass settings found in the world material properties panel.
Keep in mind though that exactly the same settings are available in the render preview mode and it probably makes a bit more sense to use these render pass views from there. If we are working with Cycles we have access to the engine specific render passes from the render preview mode while here, we are locked in to Eevees render passes.
One last thing to make note of is that material viewport mode is not available while we are using the workbench engine.
The only difference between material preview mode and rendered preview mode is that rendered preview mode use whatever renderer is set in our render tab instead of being locked to Eevee. The mode itself does not have any settings that differ from material preview except the render passes that are render engine specific.
However, not being hard coded to a specific engine like material preview and solid viewport shading, really, is quite a significant difference. This is the important mode with all the features.
Rendered viewport mode can be changed to look any way we want. We can enable workbench engine and have it look like solid viewport shading or switch it to Eevee and have it look like material preview.
It is really a matter of preference, do you want to switch renderer as you work or do you want to switch viewport mode?
Personally I prefer to set up the viewport mode since we have easy access to those presets, while if I choose to switch render engine all the time, that uses up more of my clicks and time.
My understanding of wireframe mode is that it can't be replicated with rendered view mode and doesn't have its own render engine associated with it. Instead, it is part of the overlay system. You can read more about overlays here:
Related content: Blender 3D viewport overlays, widgets and gizmos.
If you go into the overlay menu next to the X-ray toggle you will find a slider labeled "wireframe" in the geometry section. We can slide this to set the angle an edge need to have in order to be drawn in the viewport.
For all other shading modes there is also a toggle box, allowing us to enable wireframes in any other shading mode as well as an overlay.
Wireframe it is a very important mode since it allow us to see the mesh clearly, and we can switch to it quickly through the Shift+Z shortcut. It allows us to see potential errors in our mesh. For example internal faces or irregular edge flow.
The settings in this mode are a mirrored subset from solid viewport shading so if you read that part of the article you should know these by now and I won't cover them again.
We could boil down viewport shading modes down to rendered view and wireframe view since solid view and material preview is both shortcuts to accessing the workbench engine and Eevee in the viewport.
We also looked at the settings related to each view mode and discovered that solid shading has the most tools to offer as part of the view mode.
On the other hand material preview mode has access to all settings and features of the Eevee render engine while rendered viewport mode will adapt to the currently set render engine.
Thanks for your time.