📝
【Blender+Python】マテリアルのノードグループ名を取得する
この記事について
この記事はBlenderでPythonを使って、マテリアルのノードグループ(Node Group)のノード名ではなく、グループ名を取得する方法です。
取得方法
例
- アクティブなオブジェクトから取得
- マテリアルスロットの一つ目を使用
- 取得したいノードのインデックスが1である場合
bpy.context.selected_objects[0].material_slots[0].material.node_tree.nodes[1].node_tree.name
補足
ノードがノードグループ(Node Group)であるかを確認する方法
上記の例で、取得したいノードがグループノードであるかを確認する方法。
インデックス部分をループで回せば検索できる。
if bpy.context.selected_objects[0].material_slots[0].material.node_tree.nodes[1].type == 'GROUP':
考察
- ノードグループとはノードツリーを持ったノードらしい
- ノードグループノードの名前と、ノードグループの名前は別物。(今回はノードグループの名前を取得している)
- ノードグループの名前とはノードツリーの名前らしい
Discussion