Maya Script Pymel イメージの読み込み
うーん、オブジェクティブ、難しいなぁ、、
使うのは簡単だが、自分で作るとなると難しい、まだ理解が足りない。
先日記事を書いていて、選択範囲を記憶しておくことは、クラスを使えば案外簡単にできそうだ、
と、やってはいるのですが、中々うまく行かない。自分の不理解が原因だ。
それはそうと、タイトル通りに、イメージの読み込みについて書きます。
Mayaではウィンドウズ上からハイパーシェードにドラッグアンドドロップでイメージを追加できます。
その時実行されるmelの関数が、「importImageFile()」です。
引数を見ると、イメージのパス、その他ブーリアンのフラグがあるようです。
で、それで画像を読み込むと画像のノード名が、「画像のファイル名」+「_1」といった感じになります。
以前は面倒だったので、スクリプトの途中で、この関数を使って画像を読み込み、名前を変更する。
という手段をとっておりました。
改めて、関数の中を覗いてやっている処理を大雑把に見てみました。
で、結局
import pymel.core as pm imagepath = r"C:\Users\a\Pictures\test.tga" fileNode = pm.shadingNode("file",at=1) fileNode.ftn.set(imagepath) fileNode.rename(imagepath.rsplit("/",1)[1].split(".")[0])
と、なりました。
大雑把に見ただけなので、色々と見落としている部分があるかと思いますが、
一応使えているので、よしとします。
で、以前画像のリロードについて書いたかと思いますが、それをpymelでやると、
import pymel.core as pm [y.ftn.set(y.ftn.get()) for y in pm.ls(typ="file",type="mentalrayTexture")]
となるようです。
またもや見やすい上にわかりやすい。
もっと理解を深めたい。
コメントする
トラックバックする
トラックバック用URL: