自动平滑
global proc KTL_smoothKey() { float $preVal[],$curVal[],$nextVal[],$average,$keys[],$dupCUV[]; int $sizeOfKeys; string $dupCurve[]; string $cuvs[] = `keyframe -q -name`; for ($cuv in $cuvs) { $keys = `keyframe -q -sl $cuv`; $sizeOfKeys = `size $keys`; if ($sizeOfKeys < 3) continue; $dupCurve = `duplicate $cuv`; for ($i = 1; $i < $sizeOfKeys-1; $i++) { $preVal = `keyframe -t $keys[$i-1] -q -vc $cuv`; $curVal = `keyframe -t $keys[$i] -q -vc $cuv`; $nextVal = `keyframe -t $keys[$i+1] -q -vc $cuv`; $average = ($preVal[0] + $curVal[0] + $nextVal[0]) / 3; keyframe -t $keys[$i] -a -vc $average $dupCurve[0]; } for ($i = 1; $i < $sizeOfKeys-1; $i++) { $dupCUV = `keyframe -t $keys[$i] -q -vc $dupCurve[0]`; keyframe -t $keys[$i] -a -vc $dupCUV[0] $cuv; } delete $dupCurve[0]; } } global proc zidongpinghuagongju() { if (`window -exists zdpggj_MB`) deleteUI zdpggj_MB; window -t "自动平滑帧工具" -s 0 -h 100 zdpggj_MB; rowColumnLayout -nc 1 -cw 1 200 -cw 1 200; button -label "自动平滑帧" -c KTL_smoothKey; separator -bgc 0 0.5 0.8;separator -bgc 0 0.5 0.8; separator -bgc 1 1 0;separator -bgc 1 1 0; showWindow zdpggj_MB; window -e -w 200 -h 40 zdpggj_MB; } zidongpinghuagongju; |
谢谢你的赞噢~