ゲーム作りが大好きな人のブログ

ゲームを作るのが大好きな人のブログ。UE4とBlender、MAYA(LT)、3DCoatを使用しています!

【Blender】【Python】Blender2.80以降のスクリプトからのオブジェクト選択

Blenderのバージョンは2.81aで検証しています

ハマったので覚書デス。
2.80以前ではpython

import bpy

for obj in bpy.data.objects:
    print(obj.name)
    obj.select = True

上ので全選択できたんですが
obj.selectを使うとエラーが出るようになったので、その解決方法です。

結論

obj.select = True

obj.select_set(True)

に変えればOKです。
2.80から直接プロパティの編集ができなくなったようで
上の書き方をしないといけません。
まぁ自分も直接プロパティ編集が好きではないので良い修正かと思いますが
日本語のサンプルが無さすぎて焦りました。

というわけで、全選択するには

import bpy

for obj in bpy.data.objects:
    print(obj.name)
    obj.select_set(True)

という書き方が正しい模様。

参考文献

blender.stackexchange.com

※後日調べたら日本語文献もあったので追加
dskjal.com