2015年5月24日日曜日

psdテクスチャーのオートリロード

Maya2013でテクスチャーオートリロードがないので作りました。
といってもスクリプトジョブで頻繁にリロードを実行しているのでちょっと重いかもしれないです。
リロード間隔は1秒から60秒をスライダーで調整します。
デフォルト10秒です。
ツールを起動したままフォトショップで保存、更新するとMayaがバックグラウンドでもリロードしてました。

global proc yjp_psdUpdateTexturesReload()
{
global float $psdUpdateTexturesReloadTime;

float $fElapsed = `timerX -startTime $psdUpdateTexturesReloadTime`;
float $time = `intSliderGrp -q -value yjp_TexturesReloadtime`;

if($fElapsed  > $time)
{
psdUpdateTextures;
$psdUpdateTexturesReloadTime = `timerX`;
}
return ;
}

global proc yjp_psdUpdateTexturesAuto()
{
if(`window -q -ex yjp_psdUpdateTexturesReloadwindow`) deleteUI yjp_psdUpdateTexturesReloadwindow;

window -s 1 -t "psdUpdateTexturesAuto 1" -rtf true yjp_psdUpdateTexturesReloadwindow;

global float $psdUpdateTexturesReloadTime;

$psdUpdateTexturesReloadTime = `timerX`;

columnLayout -adjustableColumn true;
rowColumnLayout -w 300 -nc 2 -cw 1 240 -cw 2 50 ;

intSliderGrp -label "sec" -field true
-cw3 40 40 210
-min 2 -max 60
-value 10
-step 1 yjp_TexturesReloadtime;

button -w 40 -l "close" -c ("deleteUI yjp_psdUpdateTexturesReloadwindow ");
setParent ..;

window -e -wh 300 30 yjp_psdUpdateTexturesReloadwindow;
showWindow yjp_psdUpdateTexturesReloadwindow;

scriptJob -parent yjp_psdUpdateTexturesReloadwindow -event idle yjp_psdUpdateTexturesReload;
}

0 件のコメント:

コメントを投稿