Skocz do zawartości

Featured Replies

Napisano

Hej

Tak jak w tytule, czy da się jakoś z mel-a szybko połączyć 2dplacement node do file node tak jak robiąc to ręcznie wybiera się default i tworzy się z 10 połączeń?

czy trzeba ręcznie wszystkie połączenie wstukiwać?

Edytowane przez Destroyer

  • Odpowiedzi 12
  • Wyświetleń 1,3k
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Napisano

{
$plugs = {".coverage", ".translateFrame", ".rotateFrame", ".mirrorU", ".mirrorV", ".stagger", ".wrapU", ".wrapV", ".repeatUV", ".offset", ".rotateUV", ".noiseUV", ".vertexUvOne", ".vertexUvTwo", ".vertexUvThree", ".vertexCameraOne", ".outUV", ".outUvFilterSize"};

$sel = `ls -sl`;

if (size($sel) != 2){
error("select 2 nodes");
} else {
for ($p in $plugs){
	if ($p == ".outUV"){
		connectAttr -f ($sel[0] + $p) ($sel[1] + ".uvCoord");
	} else if ($p == ".outUvFilterSize"){
		connectAttr -f ($sel[0] + $p) ($sel[1] + ".uvFilterSize");
	} else {
		connectAttr -f ($sel[0] + $p) ($sel[1] + $p);
	}
}
}

}

 

Prosie.

 

zaznaczasz 2dtexturecośtam i potem file node i odpalasz skrypta

Napisano
  • Autor

aa to taka pętla :)

jutro sprawdzę w boju jak to będzie działać

generalnie to w założeniu ma to być automatyczne tworzenie nodów i łączenie ich więc ich zaznaczanie nie wchodzi w grę :) ale to już sam rozpracuję jak to zrobić :)

 

dzięki za pomoc! :)

Napisano

zamiast $sel = `ls -sl`;

napisz:

 

string $sel[];
$sel[0] = `createNode 2dTexturePlacement`;
$sel[1] = `createNode fileNode`;

 

i też powinno zadziałać chociaż piszę "z bani" więc mogły mi się pomylić nazwy nodów. Jest też możliwosć że jak tworzysz fileNode to on automatycznie tworzy 2dTexturePlacement. Good luck trying :)

Napisano
  • Autor

w ogóle nie użyłem $sel i nawet warunku if po prostu zmieniłem skryptem nazwy utworzonych nodów i odwołałem się do nazw :)

wszystko działa jak trzeba :)

thx again :)

Napisano
  • Autor

wiem, że Twój sposób jest dużo bardziej elegancki ale moj jest dla mnie bardziej zrozumiały :D wcześniej na samym początku i tak miałem wszystko napisane w taki sposób :)

 

connectAttr -force uvTextureMap2dPlacement.coverage uvTextureMap.coverage;

connectAttr -force uvTextureMap2dPlacement.outUvFilterSize uvTextureMap.uvFilterSize;

connectAttr -force uvTextureMap2dPlacement.outUV uvTextureMap.uvCoord;

connectAttr -force uvTextureMap2dPlacement.vertexCameraOne uvTextureMap.vertexCameraOne;

connectAttr -force uvTextureMap2dPlacement.vertexUvThree uvTextureMap.vertexUvThree;

connectAttr -force uvTextureMap2dPlacement.vertexUvTwo uvTextureMap.vertexUvTwo;

connectAttr -force uvTextureMap2dPlacement.vertexUvOne uvTextureMap.vertexUvOne;

connectAttr -force uvTextureMap2dPlacement.noiseUV uvTextureMap.noiseUV;

connectAttr -force uvTextureMap2dPlacement.rotateUV uvTextureMap.rotateUV;

connectAttr -force uvTextureMap2dPlacement.offset uvTextureMap.offset;

connectAttr -force uvTextureMap2dPlacement.repeatUV uvTextureMap.repeatUV;

connectAttr -force uvTextureMap2dPlacement.wrapV uvTextureMap.wrapV;

connectAttr -force uvTextureMap2dPlacement.wrapU uvTextureMap.wrapU;

connectAttr -force uvTextureMap2dPlacement.stagger uvTextureMap.stagger;

connectAttr -force uvTextureMap2dPlacement.mirrorV uvTextureMap.mirrorV;

connectAttr -force uvTextureMap2dPlacement.mirrorU uvTextureMap.mirrorU;

 

:D

 

a do tego do czego go uzyłem jest more than enought :)

 

choć Twoja wersja nie jest dla mnie taka "trudna" i pewnie przyda mi się na zaś :)

Napisano

az milo sie patrzy na kod jaki zaprezentowal na tym prostym przykladzie kroopson :) miooodzio, po prostu wielki szacun za dbalosc o efektywne wykorzystanie zasobow i skalowalność projektu!

Napisano

My Ciebie też nie, zwlaszcza ze jakbys byl w piatek to moze bym sie pojawil na szczelaniu bo ktos by troche wzial roboty z mych delikatnych plecoof :P

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności