Render.ru

Несколько глупых вопросов

GDragon

Активный участник
Рейтинг
11
#1
Я до этого работал в MAX и теперь, когда решил пересесть на Maya, у меня есесьно, возникли несколько вопросов, людям посвященным могущие показаться дурацкими:
1. Как удалять событие из History?
2. Как изменять весовые коэффициенты управляющих вершин в NURBS-ах?
3. Когда работаю со включенным Hulls-ом, то при выборе управляющей вершины выбираются все вершины по U и V, на пересечении которых она находится. Как мне подцепить одну единственную конкретную вершину без отключение Hulls?
Заранее благодарю за ответ.
 
#2
Вопросы на удивление сформированные и создают впечатление, что человек знает, что хочет.
Нельзя ли после сформировать как следует свою пытливость и по поиску в хелпе, опираясь на контрольные слова, найти ответы? Право, бывает невероятно полезно.

:о)
 
#3
1. Есть такая штука - Hypergraph называется. Там находятся все узлы истории построения и модификации, если конечно ты не отключал construction history. Выделяешь нужный узел и backspace'ом его, родимого.
2. А хрен его знает, обычно подобные вещи доводятся Sculpt Surface'ом, а вершинами моделируется только заготовка.
3. Hull - это каркас, он на то и нужен, чтобы работать с рядами точек, одна точка выбирается в режиме Contorl vertex.
 
#4
Привет, GDragon

Вес меняется только вручную...
Я написал микроскрипт - можешь его просто на полку перетащить средней кнопкой из скрипт эдитора....

// NURBS CV Weights Changer v. 1.0 a
// by Alexey Goussev
// algous@render.ru
// usage:
// source this script
// select NURBS CV,
// type CVweight()
global proc float setCVweight(int $getWt,float $wValue)
{
string $sel[]=`ls -sl`;
string $shp[]=`ls -sl -o`;
string $tkns[];
if ((`tokenize $sel[0] "[]" $tkns`)==3)
{
int $nums[]=eval("getAttr "+$shp[0]+".spansUV");
int $sel_u=$tkns[1];
int $sel_v=$tkns[2];
int $frmU=eval("getAttr "+$shp[0]+".formU");
int $frmV=eval("getAttr "+$shp[0]+".formV");
int $foundNum=($nums[1]+3)*($sel_u)+$sel_v;
//print ("found value="+$foundNum+"\n");
if ($getWt==1)
return eval("getAttr "+$shp[0]+".weights["+$foundNum+"] ");
eval("setAttr "+$shp[0]+".weights["+$foundNum+"] "+$wValue);
}
return $wValue;
}

global proc refreshW()
{
float $slValue=setCVweight(1,$slValue);
floatSliderGrp -e -label "weight" -field true -minValue 0 -maxValue 100 -fieldMinValue 0 -fieldMaxValue 99999 -value $slValue -cc ("setCVweight(0,`floatSliderGrp -q -v sliderW`)") sliderW;
}
global proc CVweight()
{
if (!(`window -ex MyWC`))
{
window -widthHeight 220 30 -title "Nurbs CV Weight" -iconName "Tune weight" MyWC;
columnLayout;
floatSliderGrp -label "weight" -field true -minValue 0 -maxValue 100 -fieldMinValue 0 -fieldMaxValue 99999 -value 1 sliderW;
}
scriptJob -p "MyWC" -e "SelectionChanged" refreshW;
refreshW;
showWindow MyWC;
}
CVweight();

// End of script

Удачи
Алексей Гусев
 
#5
Как думаешь, почему изменение весовых коэффициентов не вынесено в виде кнопки?...Правильно, потому что не надо их менять...Не все будет корректно работает с кривыми с измененными весами.
 
Сверху