single scripting

UTILITY: Scripting Your First Blender Add-on

Instructor:
Spencer Magnusson

Demystifying the Deep Magic of Scripting

Do you have a killer Blender add-on idea? Is your 3D workflow stifled by manual tasks that could be automated? Are you interested in contributing to Blender's development?

If you can answer "yes" to any of these, you're in the right place!

This course is designed to ease the learning curve of scripting custom tools for Blender. 3D artists often develop ideas for improving their tools as they work but rarely make them a reality. Programming lines of code into functional tooling is like a deep magic within our favorite 3D app. It's an under-utilized skillset that can lead to lucrative income on the Blender Market, a job at the Blender Foundation, or a position at Animation Studios abroad.

It's a skill worth trying!

Get Caught Up

Are you brand new to Blender?

These courses should help you get up to speed in no time.

What you will learn

  • Blender's Scripting workspace
  • How to navigate Blender's Python API
  • Formatting UI Layout
  • Collecting built-in tools into a custom Panel
  • Automation with custom operators
  • Bespoke functionality with custom operators
  • Packaging your add-on as an extension

The best part about scripting is the custom functionality you can develop! While you can follow the steps demonstrated in each video, we highly encourage you to apply what you learn in unique ways. In other words, make it your own!

Chapter 1

Understanding Scripting in Blender

Blender's Text Editor and Python Console can be pretty intimidating if you're new to scripting. Developing a familiarity with these as well as Blender's Python API documentation are crucial.

Chapter 2

Curate a Panel of Your Favorite Settings

Learn to navigate user interface formatting by compiling a custom panel. Blender is full of built-in operators and parameters that we can collect into our own panel design.

Chapter 3

Automate Workflows with Operators

Custom operators is where the real magic happens. We can string together existing operators to create a type of macro. Or we can go deeper and develop truly bespoke functionality.

Chapter 4

Packaging an Add-on Extension

Extensions are the new standard for distributing addons. Learn the process for properly packaging, including license information, and sharing your add-on extension.

ABOUT THE INSTRUCTOR

Spencer Magnusson

Hello there! My many passions and interests are all driven by a love of self-driven problem solving and storytelling. Be it engineering 3D pipelines at DreamWorks, animating my own digital art, or coding Blender add-ons. I've seen the processes and hard work that comes from telling stories firsthand.


Get to know Spencer from this interview:

Are you brand new to Python?

This 6 hr video is a great jumpstart to general python programming:

We also recommend these resources:

Get this course and 274 others by joining CG Cookie

Awarded upon completion:
100xp +
Course Curriculum
2 Reviews
  • β˜†β˜†β˜†β˜†β˜†
    Koala ·

    My only background in "programming" before starting this course was writing a bunch of scripts in javascript for a software at work, but still, i managed to finish the course and create the little add-on i always dreamed of.

    So if you are interested in creating your own tools, do not be afraid by the "coding" part, even if you know little, or nothing about coding.Β 

    It's all logic, and it is very well explained by Spencer. The course contains a lot of tips, such as reviewing existing code for buttons, panels, etc. which makes it easier to understand "how it's done".



  • β˜†β˜†β˜†β˜†β˜†
    Nathi Tappan(nathitappan) ·

    Spencer has a knack for making complex topics easy to understand. What I loved most was how he walked us through his thought process and troubleshooting the inevitable errors, rather than just presenting a line-by-line scripted (pun intended πŸ˜…) tutorial.Β Β 

    Instead of simply following steps, we learned how to find the information we needβ€”kind of like the "teach a person to fish" approach. I really appreciate this style of teaching.Β Β 

    After following along, I feel I learned enough to bring some of my add-on ideas to life. I know it will be a bumpy road (Python is a new language to me), but I also know I can turn to the CG Cookie community whenever I hit a roadblock.