Creating Add-Ons For Blender

by Michel's add-ons & more in Training


Creating add-ons for Blender

Learn to write Blender add-ons with this fast paced, information dense primer. Now updated for Blender 2.93 (and works with 2.92 as well).

A practical primer

This primer on writing Blender add-ons aims to be short an sweet and pretty fast paced. This means that we cover quite a lot of concepts in a short time but I have provided links to additional information where relevant.
You also need to have some experience in writing Python programs but other than that you will find that writing Blender add-ons is surprisingly simple. Almost anything is possible due to the large amount of built-in functionality available from within Python and this huge collection of classes and functions might be a little bewildering to navigate but the basics of a Blender add-on are easy to grasp in just a few hours.

In this primer you will start with an almost trivial add-on and work your way to a full fledged add-on that manipulates meshes and is fully integrated with Blender's own graphical user interface, complete with user configurable properties and custom icons.

Multiple formats

Formatting books with program listings is always a challenge but the .zip file that you can download when purchasing this e-book contains an .epub version of the book (readable by most e-readers), a .mobi version (readable by most Kindles) and a .pdf version.

Also, the source code accompanying the book is available on GitHub.

Table of contents

  • Introduction
    • Introduction to the 2.93 edition
    • Overview
    • Notes on code
    • Troubleshooting
  • A Blender add-on: the basics
    • Example: move an object
    • The anatomy of an add-on
      • bl_info
      • An Operator class
      • The execute() function
      • Registering and adding a menu entry
    • Distributing and installing an add-on
  • A Blender add-on: more complexity
    • Example: Arranging selected objects in a circle
    • The add-on information
    • Defining an operator class
    • The poll() function
    • The execute() function
    • The register() and unregister() functions
    • Bundling an add-on with multiple files
  • Adding properties
    • Example: a configurable radius
    • Adding an property
    • Example: a configurable orientation
    • More property types
    • Working with the property values
    • Layout
    • Presets
  • Working with meshes
    • Example: Working with bmeshes
    • Creating a bmesh
    • Working with elements
    • Custom Data Layers
    • Loops - vertex colors
  • Creating meshes
    • Example: creating a ladder
    • The Ladder operator and its properties
    • Adding a mesh object to a scene
    • Creating mesh geometry
    • Removing doubles
    • Adding modifiers
    • Smooth shading
  • Parametric objects
    • Example: a parametric ladder
    • Defining object properties
    • The Ladder operator
    • A panel in the toolbar section
    • A better ladder mesh
      • Mesh elements
      • Adding the stile
      • Adding the rung
      • Bridging the components
      • Duplication
      • Skewing
    • Animating object properties
      • Application handlers
  • Additional information
    • About the author
    • Acknowledgments
    • Additional information on Blender add-ons
Sales 400+
Customer Ratings 5
Average Rating
Dev Fund Contributor
Published about 8 years ago
Blender Version 2.7x, 2.92, 2.93
License Royalty Free
Have questions before purchasing?

Contact the Creator with your questions right now.

Login to Message