マテリアル一掃失敗blenderのマテリアル管理は、「マテリアルからのリンクをすべて消さない限り、マテリアルが消えない」という仕様ゆえ、結構適当になりがちで、気づいたら使ってないはずのマテリアルがリストに入ってるのではないでしょうか?自分は気づいたら、一番最初にBlenderはじめたころのマテリアルが、現在作ってるモデルに入ってたので苦労して消しました。これをスクリプトで一掃できるようになったら便利だなー。いうことで調べ始めたのですが、予想通り(?)ダメでした。現在のスクリプト仕様では、Nodeにアクセスできないので、Nodeのリンクがどうしても消せないのです。発想を転換して、直接.blendファイルから一掃すればいいんじゃないか?ということでBlenderのソースコードを初☆漁り。ファイルフォーマット周辺見てみたんですが、かなり複雑で(あたりまえか)、再帰繰り返して読み込みがんばってる感じでした。有名なオープンソースのプロジェクトだけあって、コードがきれい。俺は、C言語の1000行以上のコードは、友人の研究の手伝いで扱った、ゴミみたいな、うねりプログラム@先輩が残して行ったものしか見たことないので、あまりの違いようで、軽く感動。漁っていると、pythonのファイル群の中に「Node.c/h」を発見。おっ!と思って見てみたら、全体がifdef-endifで括ってあって、パッチ当てないと動かないよ、と書いてあった。さんのコメント...>MaterialSortおぉ、そんなものが!でも、目指してるのはちょっと違うかもです。これだとメッシュに適用中のマテリアルは消えてくれるんですが、マテリアルにノードとかFaceUserとか追加して、自分でメッシュからDeleteした後の(メッシュに適用されてない)マテアリアルが消せない。>無駄なキーフレームを一掃してくるスクリプトあったら便利ですね~!後でがんばってみます。openvdb待ち中。思い出し次第増えたり減ったり。