【MEL】テクスチャリロード

AriTextureReload
シーンに存在するテクスチャをリロードします。
「file」
「imagePlane」(イメージプレーン)
「mentalrayIblShape」(イメージベースドライティング)
ノードが対象です。
使い方
melを実行するだけです。
結果表示
右下のフィールドに結果が表示されます。

・リロードした数が表示されます。
・テクスチャリンクが切れているものはパスされ、その数が表示されます。
・リファレンスなど、アトリビュートにロックがかかっているものもパスされ、その数が表示されます。
スクリプトエディタで詳細が確認できます。

リンク切れや、ロックされているノードが調べられます。
つぶやき
全部のノードをリロードするスクリプトだと重くなりそうな気がして、選択したノードやオブジェクトに紐付いているノードだけリロードするスクリプトも書いて試してみたことがあるのですが、気のせいかロード時間は特に変わらなかったと思います。
Mayaはイメージに変更がなければリロードしても読みに行かないのか?変更したイメージをリロードするときに比べて、変更がないテクスチャであれば全くといっていいほどロード時間がかからないのです。
むしろ、ためしに書いたスクリプトはシーンが複雑なほど紐付いてるノードの探索に時間かかったりして無駄に複雑になってしまったので、今回このスクリプトはシンプルにすべてのノードに対してリロードを行うようにしました。
とりあえず、私自身が使う「file」「imagePlane」「mentalrayIblShape」ノードアトリビュートにあるイメージが対象ですが、他にもリロードをしてほしいノードあったらコメント等ください。
可能であれば拡張してみようと思います。
というかそこまでMayaを使いこなしてないので、他に思い当たるノードがないのです。
使ってみたいと思った方こちらからどうぞ
download
スポンサーリンク