Python script to link image to UV/Image Editor for Blender
3次元CG編集ソフト Blender はFBXファイルなどをインポートすると、テクスチャマッピングされた画像がUV/Image Editorにリンクされません。そこで、マテリアルの1スロット目に設定されたテクスチャ画像を UV/Image Editor にリンクさせるPythonスクリプトを作ってみました。
シェーダーノードを使ったマテリアルは非対応です。
環境
- Windows 10
- Blender 2.78c
このような問題を解決できる
TF3DM からフリーでダウンロードできる Plant Model (3icl82ea6itc-Plant.zip) のFBXファイルをサンプルとして説明します。http://tf3dm.com/3d-model/plant-model-352.html
インポートするとメッシュごとにテクスチャ画像が設定されています。
UV/Image Editor を開くとUVに画像がリンクされてません。
このモデルの各メッシュのUVにマテリアルの1番目のテクスチャ画像をリンクさせるまでを目標とします。
スクリプトのソース
スクリプトの使い方
どこでもいいのでビューを Python Console に切り替えます。Propertiesビューでモデルのルート (このモデルでは Plant_Model) を選択します。
Python Console に上のソースをコピー・ペーストすればメッシュごとのUVに画像がリンクされます。
スクリプトのを実行したけど画像がUVマッピングされない場合
Propertiesビューでモデルのルート (このモデルでは Plant_Model) を選択してからスクリプトをコピー・ペーストしてください。参考にしたコンテンツ
scripting - How can I set the image to use the UV Map using the python api - Blender Stack Exchangehttp://blender.stackexchange.com/questions/7855/how-can-i-set-the-image-to-use-the-uv-map-using-the-python-api
関連ブログ
MakeHumanでCLIP STUDIO用3Dキャラクターを作る方法[Blender] CLIP STUDIOにUnity3DやMMDのキャラクターを移植する方法
BlenderのモデルデータをMMDに変換する方法
[Blender] ボーンを削除したらメッシュが動かないときの直し方
[Blender] Pythonスクリプトで頂点グループをまとめて選択する方法