Introduktion till MEL Scripting i Maya: 3D Fractals (4 / 7 steg)
Steg 4: Markera objekt med MEL
Val är hur vi anger vilka objekt kommer att drivas på. Vanligtvis vi välja något genom att klicka på de objekt som vi är intresserade och sedan flytta eller rotera eller deformeras det för vår smak.
Eftersom vi ska skript, måste vi vara kan markera objekt utan att klicka på dem. Tur för oss, Maya ger alla objekt som skapas standardnamn om inga specifika namn anges. Vi kan fråga Maya för objekt som har ett visst namn eller ett prefix i deras namn.
Gå vidare och göra ett par kuber i din scen med Mayas visuella gränssnittet. Nu öppna Outliner (visas i den första bilden). Här ser du kubobjekt som du just har gjort. Alla kuber namn inleds med "pCube" och sedan ett nummer. För att välja en kub med MEL använda kommandot "Välj" som så:
Välj pCube1;
Bra, men vad händer om vi ville välja alla kuber? Detta är lite mer komplex, men genomförbart! Först måste vi på något sätt lista alla objekt i scenen och filtrera valet att endast inkludera objekt som är prefixet pCube. Vi kan använda en * (aka wildcard) tecken för att ange att vi vill markera alla objekt med vissa prefix.
Så för att lista objekt i scenen med prefixet "pCube" med kommandot ls :
sträng $cubes [] = "ls"pCube *";
En sak att notera är att vi hade omgiven av ls -l "pCube *" kommandot av tecknet ' . Detta är mycket viktigt, säger detta i grund och botten Maya att konvertera / pipe resultatet av commend i en strängmatris.
Här lagrar vi markeringen i en variabel kallas kuber! Vi kör sedan kommandot select välja alla kuber:
Välj $cubes;
Om allt när enligt plan, bör du se alla dina kuber valt (visas i den andra bilden).