Blender 2.80 release is scheduled for July

Blender 2.80 development plans from Blender Developers Blog:

  • The middle of May – the completion of the remaining features and finishing the user interface
  • The beginning of June – user documentation update
  • The middle of June – fixing of all critical errors
  • July – Blender 2.80 release
  • Blender 2.81 – 3 months after the release (patches and functional additions)

OpenGl – DirectX norma map converter node group in Blender

Normal maps are usually saved in one of the two most common formats: OpenGL or DirectX. Blender uses OpenGL specification. Trying to use normal maps saved in another format will result in the wrong visual effect. To convert normal maps to the desired format the “OpenGL – DirectX Normal Map Converter” node group from the BIS material library can be used.

The samples of use:

Continue reading “OpenGl – DirectX norma map converter node group in Blender”

Changes in add-ons registration through the API in Blender 2.8

Add-on registration and removing were made with the “Window manager” (wm) in Blender 2.7 Python API:

In Blender 2.8 API add-on operators moved to the “preferences”:

 

3D Cursor location in Blender 2.8 Python API

3D-cursor location property

in Blender 2.8 API moved to “cursor” object

When trying to get the cursor location through the “context.scene.cursor_location” Blender throws an error:

‘Scene’ object has no attribute ‘cursor_location’

Add-on preferences panel

When developing add-ons it is often necessary to give an ability to set a number of parameters that affect the whole add-on work to the user. For example, the user can specify a directory for saving/loading files, set some default variables or switch between add-on modes. Of course, the interface for setting such parameters can be placed in the add-on panel, but it is better to place it in a separate add-on preferences panel, which is located in the “Preferences” window under the add-on installation panel.

The main advantage of the add-on preferences is that they don’t reset when Blender restarts. The user does not need to configure the add-on preferences each time, it’s enough to set the necessary parameters once, personalizing the add-on for convenient work.

Let’s create an add-on and define a parameter, placing it in the add-on preferences panel.

Continue reading “Add-on preferences panel”

Matrix, vector and quaternion multiplication in Blender 2.8 Python API

In Blender 2.7 the “*” (star) operator is used in the matrix, vector, and quaternion multiplication. In Blender 2.8 it is replaced with the “@” (at) operator.

If the “*” operator is used in vector, matrix or quaternion multiplication in Blender 2.8 it throws an error:

Element-wise multiplication: not supported between ‘Matrix’ and ‘Matrix’ types

Proper use of the “@” operator:

 

Snapping elements property in Blender 2.8 Python API

The snapping elements property from Blender 2.7

changed in Blender 2.8 API to

 

Accessing the pivot point type in Blender 2.8 Python API

The “pivot_point” property from Blender 2.7

in Blender 2.8 API moved to:

 

use_drag_immediately property in Blender 2.8 Python API

The “use_drag_immediately” property from Blender 2.7

in Blender 2.8 API moved to

 

Changing the current coordinate system in Blender Python API

In Blender 2.7 the current coordinate system could be changed through the

property. In Blender 2.8 coordinate system access moved to the scene collection of “TransformOrientatiosSlots” objects. To get or set the current coordinate system the “transform_orientation_slots” collection is used.