青い三角形部屋

「この異端者よ!」

【Blenderアドオン開発】WorkSpaceTool のアイコンを自作するメモ

WorkSpaceTool のアイコンとは

blender custom iconとかで検索したら、出てくるのがほとんどボタンとかで使うアイコンの話です。*1

ここで自作したいのが WorkSpaceTool の アイコンです。 というのは 3Dview の左側に並んでるツールたちのアイコンです。今回適当に作ったのが下になります。

f:id:NikuKikai:20210317020710p:plain

作り方

作り方自体は 公式 wiki に書かれてますが、シンプル過ぎてわかりにくいので、もう少し明確にまとめておきます。

アイコン編集用の.blendファイルでアイコンを作ろう

まず wiki に載ってある リンク から、icon_geom.blend を入手して開きます。

このファイルの内蔵 readme にアイコンの追加に関する説明が書かれて、それに沿って、新しく作るのもできますが、Exportコレクションに入れるとか面倒臭いんで、既存のアイコンを Edit Mode で改造するやり方を取ります。

なんのアイコンを改造したかを覚えときます。(例えば、ops.transform.rotate

アイコン生成スクリプトを入手

blenderGithubから このスクリプト を入手します。(ダウンロードより、コピペが早いっすね)

仮に C:/blender_icons_geom.py とします。

コマンドでアイコン生成

絶対パスで表したコマンドが以下になります。(Windowsの場合)

{blenderのルートディレクトリ}/blender.exe {icon_geom.blendのディレクトリ}/icon_geom.blend --background --python C:/blender_icons_geom.py -- --output-dir={適当なところ}

注意:wiki では、出力フォルダをblender のツールアイコン保管してるフォルダに指定してますので、上書きしちゃいます…今回は既存アイコンを改造したので、必ず別の所にします。

アイコンを使う

出力フォルダに、改造したアイコンファイル(例は ops.transform.rotate.dat )を探し出し、名前を変更します。(例 myaddon.sampletool.dat

手動で{blenderのルートディレクトリ}\datafiles\icons\ に入れます。

例えば、C:\Program Files\Blender Foundation\Blender 2.90\2.90\datafiles\icons

アドオンインストール時に自動で入れさせる方法は、公式APIには用意されてなくて、Pythonでファイルのコピペをするしかないらしいです。(権限で拒否されたらお手上げ)※参考

Python では、WorkSpaceTool の bl_icon というクラス変数に名前入れれば、ロードされます。

class Tool(WorkSpaceTool):
    bl_icon = "myaddon.sampletool"
    ...

以上です

*1:一応その「アイコン」の自作に関するリンクも貼っておきます→ Link