Render.ru

как инвертнуть значение атрибута weightList ?

volodyaRenderberg

Активный участник
Рейтинг
14
#1
есть задача перераспределять веса между врапом и кластером, я хочу для этого подать на атрибут weightList кластера инвертированное значение такого же атрибута от врап деформера, есть ли штатные возможности чтобы такое совершить? оч. пож....!!!
 

volodyaRenderberg

Активный участник
Рейтинг
14
#3
неа ... инверсная матрица - это не то... немного... я могу соединить weightList одного с weightList другого ... и кластер будет раскрашен так же как и врап, но мне надо инвертировать эту раскраску...
 

volodyaRenderberg

Активный участник
Рейтинг
14
#5
спасибо, но карту надо сохранять, а хотелось бы иметь интерактивную связь. скриптом я пробовал соединять подАтрибуты(по точечные веса) но при этом майка вылетает каждый раз ... в инверс матикс weightList просто не коннектится ... пока не вижу варианта кроме как писать ноду ... но надеюсь на более простое решение ..
 

Владимир Забелин

Активный участник
Рейтинг
17
#7
хотел былочи написать, что у майа нет инструментария интерактивной обработки атрибутов-массивов (ну за исключением эррэймаппера), но ведь действительно, весов как таковых у рэп деформера нет.... лоханулся...
 

SLONIK_ZX

Активный участник
Рейтинг
14
#12
Inverse deformer weights:

1ый вариант на меле. Копирую с softMod1 на softMod2 "инвертнутые"веса. Без интерактива.

{
int $i;
for ($i = 0; $i < 5000; $i++)
{
//print ("i=" + $i + "\n");
$ee = (1 - `getAttr softMod1.weightList[0].weights[$i]`);
setAttr softMod2.weightList[0].weights[$i] $ee;
}
}

2ой вариант на меле, интерактивный. Создаю инверс ноды (для каждого вертекса):
{
int $i;
for ($i = 0; $i < 121; $i++) // 121 - number of vertexes in geometry (default pPlane)
{
createNode reverse -n ("reverse" + $i);
connectAttr softMod1.weightList[0].weights[$i] ("reverse"+$i+".input.inputX");
connectAttr ("reverse"+$i+".outputX") softMod2.weightList[0].weights[$i];
}
}

3й вариант на супе (SOuP). Интерактивный:

softMod1(weightList) -> multiToArray -> remapArray -> arrayToMulti -> softMod2
INVERSE.jpg
 
Симпатии: _T
Сверху