Skocz do zawartości

Dziwne nazewnictwo obiektow


Juzwa

Rekomendowane odpowiedzi

Hej,

 

Od jakiegos czasu na mojej scenie wszystkie obiekty zaczely sie dziwnie nazywac. Nawet jak recznie zmienie nazwe obiektu czy nawet zrobie nowego cube'a z shelfa to wyglada cos takiego jak temp_part011:temp_part011:pCube6 albo lepiej, temp_part011:temp_part011:temp_part011:temp_part011:group3.

 

Jak to naprawic?

Odnośnik do komentarza
Udostępnij na innych stronach

  • Odpowiedzi 5
  • Created
  • Ostatniej odpowiedzi

Top Posters In This Topic

Te dwukropki to namespaces, służą m.in. do budowania tzw. długich nazw obiektów o tej samej krótkiej nazwie.

Domyślnie tworzą się gdy importujesz coś z zewnętrznego pliku - możesz ustawić sobie w opcjach importu by maya ich nie wstawiała.

A istniejące możesz edytować albo usunąć w window/generalEditors/namespaceEditor.

Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli nie chce Ci się za każdym razem odpalać Name space editor, to napisałem swego czasu proste skrypty na tę okazję. Wolałem zostawić używanie namespaces w opcjach importu, bo czasem się przydają.

Zaznacz obiekty i odpal podpięty pod skrót czy shelf skrypt:

 

// Remove namespaces from dag objects

string $allNodes[] = `ls -dagObjects`;

int $iloscWywalonych = 0;

 

for($node in $allNodes) {

string $buffer[];

tokenize $node ":" $buffer;

$namespace = $buffer[0];

if (`namespace -exists $namespace`)

{

print("Removing: " + $namespace + "\n");

$iloscWywalonych++;

catch (`namespace -mergeNamespaceWithRoot -removeNamespace $namespace`);

}

}

 

if ($iloscWywalonych == 1) print ($iloscWywalonych + " namespace removed.\n");

else print ($iloscWywalonych + " namespaces removed.\n");

// end

 

 

Jest jeszcze drugi, nie wymaga zaznaczania żadnych obiektów, ale trzeba wykonywać go dwukrotnie, nie doszedłem jeszcze czemu nie działa za pierwszym razem, coś jest nie tak z poleceniem tokenize w M2016.

 

// Remove namespaces by force

$namespacesInScene = `namespaceInfo -listNamespace`;

string $allNodes[] = `ls -dagObjects`;

int $iloscWywalonych = 0;

 

for($node in $namespacesInScene)

{

string $buffer[] = {};

catch ($numTokens = `tokenize $node ":" $buffer`);

$namespace = $buffer[0];

if (`namespace -exists $namespace`)

{

if ( ($namespace == "UI") || ($namespace == "shared") ) continue;

print("Removing: " + $namespace + "\n");

$iloscWywalonych++;

catch (`namespace -mergeNamespaceWithRoot -removeNamespace $namespace`);

}

}

 

if ($iloscWywalonych == 1) print ($iloscWywalonych + " namespace removed.\n");

else print ($iloscWywalonych + " namespaces removed.\n");

Odnośnik do komentarza
Udostępnij na innych stronach

Generalnie to pierszy skrypt nic nie robi, a drugi w w melu i pythonie wywala syntax errora w majce 2016.

 

Zbytnio nie rozumiem jaka ma byc w ogole korzysz z tego ze kazdy nowy obiekt bedzie sie nazywal Obiekt::Obiekt::Obiekt:: i tak w nieskonoczonosc.

 

W namespece editor tez zbytnio nie wiem co tam powinienem zrobic, czy to faktycznie merguje mi obiekty czy usuwa tylko te 'namespeces', cokolwiek to niby jest. Albo mi usuwa wszystkie obiekty, albo nic nie robi.

 

Narazie to najzwyklej recznie wywalam katalog prefs 2, 3 razy dziennie i wtedy jest okej. Ale tez za kazdym razem trace swoje ustawienia. Chyba ze sobie skopiuje ten katalog.

 

Troche toporne zalatwianie sprawy, tylko dlatego ze obiekty w scenie postanowily sie ponazywac na wlasne widzimisie

Odnośnik do komentarza
Udostępnij na innych stronach

Sposób1

Odpalaj te skrypty po dwa razy. Przy pierwszym uruchomieniu nie wiem czemu kaszani się funkcja tokenize, odpowiedzialna za szukanie dwukropka.

W M2014 działało wszystko doskonale, w nowej coś jest nie tak, nie doszedłem jeszcze co.

 

Sposób2

W namespace editor zaznaczasz namespaces i klikasz delete, parent to root.

 

Sposób3

Możesz też po prostu przestawić sobie opcję importu na nieużywanie namespacas.

Domyślam się, że importujesz obiekty przeciągając je do sceny.

Zaimportuj raz klasycznie, funkcją import z menu File, z opcją bez namespace, zapisz ustawienia, i od tej pory nie będziesz więcej widział tych dwukropków.

Edytowane przez ca mel
Odnośnik do komentarza
Udostępnij na innych stronach

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

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się



×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Wykorzystujemy cookies. Przeczytaj więcej Polityka prywatności