アドオン開発

公式サイト:

Add-on Tutorial | Blender Manual [Official]

導入

参考:

アドオン開発の基礎を身につける | はじめての Blender アドオン開発

アドオンの作り方/構造の解説 | 忘却まとめ

Blender でアドオンの作り方/開発環境構築からサンプルの動作確認まで | TomoG のごちゃまぜ倉庫

Blender Addon を作ろう | Kageji

プラグインの作り方 – Qiita

アドオンスクリプト | MR が楽しい

Blender 2.80 で UI のスクリプトを書く | dskjal

アドオン開発 001 Hello World | めもてう

Python で Blender の Add-on 開発 | NegativeMindException

Blender の自作アドオンの作り方 その1 | ソースに絡まるエスカルゴ

Blender の自作アドオンの作り方 その2 | ソースに絡まるエスカルゴ

Blender の自作アドオンの作り方 その3 | ソースに絡まるエスカルゴ

Blender 2.8 でアドオンを作ってみる | ぬの部屋 (仮)

Create Your First Blender Add-on | Wiki.OSArch

入門

参考:

プラグインの作り方 – Qiita

はじめての Blender アドオン開発 (2.8 ~ 3.0) | COLORFUL PICO

UI を作成する

こちらのページを参照

参考:

Blender 2.80 で UI のスクリプトを書く | dskjal

Blender の UI を制御する | はじめての Blender アドオン開発

ショートカットキーを割り当てる/キーマップ (Keymap)

参考:

スクリプト内部で自作の機能にショートカットキーを割り当てる – Qiita

キーマップの登録/キーマップメニューの表示 | 忘却まとめ

Keymap for Addons – Blender Artists Community

ファイルを分割する/モジュールを使う

参考:

Blender のスクリプトを複数ファイルに分割する – Qiita

Python の自作モジュールを Blender のアドオンとしてインストールする | MR が楽しい

Python API の概要 その3 | MR が楽しい

複数ファイル構成のアドオン開発での注意点/デバッグ用の再読み込み/アドオン設定の参照など | 忘却まとめ

アドオンのソースコードを複数ファイルへ分割する | はじめての Blender アドオン開発

Module Registration | Blender Developer Wiki [Official]

リロード

単一ファイルのアドオン

__init__.py が存在せず、単一のファイルのみで構成されたアドオンをリロードするには、更新したアドオンを「ファイルからインストール」 (Install Add-on from File) で読み込んだ後、アドオンを再度有効化する。アドオンの無効化により古いファイルの unregister が実行され、有効化により新しいファイルの register が実行される。

モジュール型のアドオン

アドオンの構成に __init__.py を含んでおり、複数のソースファイルで構成されている場合、「検索」 (Search) メニュー (F3 キー) で「スクリプトを再読み込み」 (Reload Script) を検索して実行する。サブモジュールは、アドオン内で明示的に再読み込みを実行する必要がある。

参考:

Reload Scripts を利用する – Qiita

Reload button in 2.8? – Blender Developer Talk [Official]

T66924 bpy.ops.preferences.addon_enable() only checks for changes in __init__.py; Problem for multi-file add-ons | Blender Developer [Official]

unregister and remove addon in blender with python does not remove the item from menu – Stack Overflow

Is there a way to restart a modified addon? – Blender Stack Exchange

メタ情報 (bl_info)

サンプル
bl_info = {
    "name": "My Script",
    "description": "Single line explaining what this script exactly does.",
    "author": "John Doe, Jane Doe",
    "version": (1, 0),
    "blender": (2, 65, 0),
    "location": "View3D > Add > Mesh",
    "warning": "", # used for warning icon and text in addons panel
    "doc_url": "http://wiki.blender.org/index.php/Extensions:2.6/Py/"
               "Scripts/My_Script",
    "tracker_url": "https://developer.blender.org/maniphest/task/edit/form/2/",
    "support": "COMMUNITY",
    "category": "Add Mesh",
}Code language: Python (python)

(出典Blender Developer Wiki

カテゴリー (category)
  • 3D View
  • Add Mesh
  • Add Curve
  • Animation
  • Compositing
  • Development
  • Game Engine
  • Import-Export
  • Lighting
  • Material
  • Mesh
  • Node
  • Object
  • Paint
  • Physics
  • Render
  • Rigging
  • Scene
  • Sequencer
  • System
  • Text Editor
  • UV
  • User Interface

参考:

004 Hello Blender Add-on | めもてう

Script Meta Info | Blender Developer Wiki [Official]

設定パネルを作成する

参考:

プリファレンスを活用する | はじめての Blender アドオン開発

Add-on Preferences Panel | Interplanety

Storing Addon Settings Permanently – Blender Artists Community

Access Add-on preferences property in a multi-file add-on – Blender Stack Exchange

C言語/C++ でアドオンを作成する

参考:

Writing Blender Plugin in C++ | primitive: blog

テストを自動化する

参考:

GitHub と TravisCI を用いて Blender アドオンのテストを自動化する – Qiita

アップデート/バージョンアップ対応

こちらのページを参照

参考:

Blender 2.79 のスクリプトを 2.80 にアップデートする | dskjal

Blender 2.7x のアドオンを Blender 2.8 へ移植する – Qiita

2.80 Cheat Sheet for updating add-ons – Blender Artists Community

How to register bpy.types.INFO_MT_mesh_add.append(addMenu) – Blender Stack Exchange

サンプル/テンプレート

リポジトリ:

python_api/examples – GitHub

コード:

release/scripts/templates_py – GitHub

入手:

はじめての Blender アドオン開発 v3 サンプルアドオン集 | COLORFUL PICO

ライセンス

GPL についてはこちらのページを参照

動画:

Blender Addons, Open Source, and Piracy

参考:

アドオンのライセンスを決める | はじめての Blender アドオン開発

Blender アドオン、オープンソース、海賊行為 | MITSUDA Tetsuo

Chairman の Ton 氏が語る、フリーソフトウェアの Blender | Blender.jp

Commercial GPL Blender addons and the copyleft? – Blender Artists Community

リリースノート

2.93/Python API | Blender Developer Wiki [Official]

2.80/Python API/Addons | Blender Developer Wiki [Official]

ドキュメント

Addons | Blender Developer Wiki [Official]

Guidelines | Blender Developer Wiki [Official]

Tips

Build a Blender Add-on Ready to Scale | Jim O’Connor

チュートリアル

#1 Python で作る俺たちの Addon 企画 & 準備編 (Yonaoshi3D)

#2 Python で作る俺たちの Addonコア機能実装編 (Yonaoshi3D)

#3 Python で作る俺たちの Addon UI 編 (Yonaoshi3D)

#4 Python で作る俺たちの Addon Addon 化編 (Yonaoshi3D)

Python Addons in 3 Minutes! (Royal Skies)

はじめての Blender アドオン開発

公式サイト:

はじめての Blender アドオン開発 | COLORFUL PICO

入手:

はじめての Blender アドオン開発 v3 | COLORFUL PICO

はじめての Blender アドオン開発 v3 サンプルアドオン集 | COLORFUL PICO

リポジトリ:

nutti/Introduction-to-Addon-Development-in-Blender-Web: Web版 はじめての Blender アドオン開発 – GitHub

リンク:

COLORFUL PICO

ぬっち (@nutti__) | Twitter

視聴:

Nutti – YouTube

Serpens

動画:

Serpens + EasyBPY – The Easiest Way to Make Addons for Blender!

Serpens 3 Out Now

入手:

Serpens 3 – Visual Scripting Addon Creator | Gumroad

Serpens 3 – Visual Scripting Addon Creator | Blender Market

ドキュメント:

Documentation | Serpens

参考:

Update v3.1.1 | Serpens

Update v3.1 | Serpens

Reload Add-on

リポジトリ:

hextantstudios/hextant_reload_addon: Quickly Reload a Single Blender Add-on (or All Scripts) with a Key Press – GitHub

参考:

Quick Add-on Reloading in Blender | Hextant Studios

記事をシェアする:
タグ:

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

Protected by reCAPTCHA