15 changes that you need to know when migrating from Blender 2.79 to Blender 2.80

  1. Object selection

2.79: selecting with the right mouse button
2.80: left-click selection

  1. T-panel

2.79: called by pressing the “t” key
2.80: it’s gone, functions moved to the main menu and to the context right-click menu

  1. Deselection

2.79: “a” – select all and deselect all
2.80: “a” – select all, “a – a” or “alt+a” – deselect all

Continue reading “15 changes that you need to know when migrating from Blender 2.79 to Blender 2.80”

How to make a pattern from the single element of the BIS library

A single procedural element from the BIS library can be easily transformed into a repeating pattern.

Let’s get a single circular elemetn from the library and place it in the center of the plane.

Continue reading “How to make a pattern from the single element of the BIS library”

Fake-bpy-module

Code autocomplete greatly simplifies writing scripts or developing add-ons for Blender. One of the best autocomplete modules for today is developed by Nutti. Last updated 20190718.

The project is hosted on the author’s GitHub: https://github.com/nutti/fake-bpy-module

The modules are distributed via pip or as a pre-generated-modules. Author also provides a module generator with which you can assemble autocomplete modules yourself.

Node displacement in Blender 2.8

In Blender 2.8, the displacement node in Cycles render-engine was changed from scalar to vector. If you simply connect a black and white height map to the Displace input of the material output node, like in Blender 2.7, it will not give the desired result.

To make the correct node displacement in Blender 2.8 add “CombineXYZ” and “VectorDisplacement” nodes to the material node tree. Connect the height map to the “Y” input of the “CombineXYZ” node and its “Vector” output to the “Vector” input of the “VectorDisplacement” node. After that, connect the “Displacement” output of the “VectorDisplacement” node to the “Displacement” input of the material output node.

Continue reading “Node displacement in Blender 2.8”

Decorators for node tree updation delay

When we create a field on the add-on interface panel, the value of which changes something in the node tree, each time the user changes the field value the node tree recompiles. If the user changes the value in that field by holding and moving the mouse, too frequent node tree recompilation will cause Blender to hangs.

This problem can be solved using decorators for deferred updating of the node tree.

Code by Skarn.

Continue reading “Decorators for node tree updation delay”

Class for creating nodes by type

Class for quick node creation by their type.

Code by Skarn.

Continue reading “Class for creating nodes by type”

Texture pixelization

The simplest way to pixelate texture, procedural or not – get the color from the single pixel and fill the region with required width and height (resolution) with this color.

Here is the gradient texture with red – green – blue colors:

To pixelate it with the first step of resolution we can make some vectors manipulations.

Continue reading “Texture pixelization”

Quick Instance Add-on: grouping-like workflow

This add-on for Blender 2.8 creates a grouping workflow using Blender 2.7 group style. Add-on doesn’t “brokes” the scene, so you can properly work with groups made with this add-on having no add-on installation.

By Michael Soluyanov.

  • ctrl+g – group selected objects
  • f9 – manage the group name and origin
  • tab – enter/exit group edit mode in separate space

Video with an add-on demonstration:

You can get this add-on at:

Blender Market: https://blendermarket.com/products/quick-instance

Gumroad: https://gumroad.com/l/qinstance

How to protect your add-on from downloading through aggregators

With the Blender popularity growing, the number of add-ons created for it by third-party developers is growing too. A lot of high-quality professional add-ons are written for Blender now. Over time, the number of add-ons is becoming more and more. And on this wave aggregators appeared – programs and services independently searching for add-ons and allowing Blender users to install add-ons quickly, many at once, and bypassing add-on distribution channels selected by their authors. What caused a negative reaction of add-on developers.

Continue reading “How to protect your add-on from downloading through aggregators”

How to detect if Local View is on in 3D View window

The following command returns the 3D View areas list with enabled Local View mode:

 

Where are the icons for managing objects visibility in the Outliner window in Blender 2.8

In the latest Blender 2.80 builds, the visibility control icons are disappeared from the Outliner window.

They were not removed, they are just hidden from the interface by default. To return them to their usual place click the button with the funnel image and mark the icons you need to display.

After closing the dialog box, the icons will appear in their places.

Changing objects visibility in the viewport and while rendering

The easiest way to hide and show rendering objects is to assign animation keys to them. To do this, move the cursor over the eye icon (visibility in the viewport) or camera (visibility when rendering) in the Outliner window, press the “i” key and then manage the created condition in the Graph Editor like the ordinary animation keys.

But this method is not always available. For example, we cannot assign visibility animation keys for collections, Blender will generate errors like:

“hide_viewport” property cannot be animated

or

“hide_render” property can not be animated

However, using the Blender Python API, we can control the visibility of such objects.

Continue reading “Changing objects visibility in the viewport and while rendering”