BioErrorLog Tech Blog

試行錯誤の記録

Blender Pythonで既存オブジェクトを全て削除する

Blender Pythonでシーン内の全オブジェクトを削除する方法の備忘録です。

はじめに

Blender Pythonで試行錯誤していると、シーン内のオブジェクトを全削除したくなるときがあります。

Pythonスクリプトでどうやるかの備忘録です。

# 作業バージョン
Blender 4.2.0

Blender Pythonで既存オブジェクトを全て削除する

このPythonスクリプトで、シーン内の既存オブジェクトを全削除できます。

import bpy


bpy.ops.object.mode_set(mode='OBJECT')

bpy.ops.object.select_all(action='SELECT')
bpy.ops.object.delete()

やってることは簡単で、

  1. Object Modeに切り替える
  2. オブジェクトを全て選択する
  3. 選択したオブジェクト削除する

です。

本当はBlender Python APIらしく、bpy.ops系APIではなくbpy.data系APIを使った方がより柔軟な操作ができますが、単純にシーン内のオブジェクトを全削除したいだけなら上に示したような簡単なコードで事足ります。

おわりに

以上、Blender Pythonで既存オブジェクトを全て削除する方法の簡単な備忘録でした。

手動のGUI操作は再現性がなく自動化ができませんが、Pythonスクリプトに残しておけばちょっとしたフラストレーションが解消できて嬉しいですね。

どなたかの参考になれば幸いです。

[関連記事]

www.bioerrorlog.work

参考