本日はBlenderPython枠です。
〇環境
・Blender4.1
・Windows11PC
〇現在のシーンにあるオブジェクト数を取得する
現在のコードを取得するには次のコードを使用します。
import bpy # 全てのオブジェクト数を取得 total_objects = len(bpy.data.objects) print("全オブジェクト数: ", total_objects)
このコードではdataモジュールを使用してオブジェクトの数を出力しています。
これを実行するとコンソールに現在のシーンに存在するオブジェクト数が表示されます。
bpy.data.objects
はBlenderのシーン内の全てのオブジェクトを表します。これによってすべてのオブジェクトを表示できました。
〇非表示オブジェクトの取得
Blenderでは非表示オブジェクトも存在します。
今度はこちらを取得していきましょう。
hidden_objects = sum(obj.hide_viewport for obj in bpy.data.objects)
このコードでは全オブジェクトの中でobj.hide_vieportの数を足し算しています。
obj.hide_viewport
は、現在のオブジェクト(obj)が非表示であるかどうかを表すブール値(TrueまたはFalse)です。
オブジェクトが非表示である場合、obj.hide_viewport
はTrueを返し、表示されている場合はFalseを返します
これによって非表示のオブジェクト数を検知していました。
このあたりのTipsを使えば全オブジェクトに対して○○、非表示オブジェクトの数に応じてといった処理ができそうです。
本日は以上です。