WERKEN MET SCULPT 3D deel """"""""""""""""""""""""" HIERARCHIE VAN DE OBJEKTEN """""""""""""""""""""""""" Een Hierarchie is een struktuur waarin elk lid een wel bepaald niveau krijgt. Met uitzondering van het bovenste niveau van de Hierarchie, is elk lid ondergeschikt aan een hoger lid. Anderzijds kan elk lid een of meerdere leden van het volgende lagere niveau controleren. We kunnen dit ons het best voorstellen als de rang in het leger of als een familieboom. Zodanig dat we het in SA over "ouder" en "nakomelingen"-termen hebben. De objektstruktuur van SA is opgelegd door namen aan groepen vertices te geven. Deze namen vormen een Hierarchie. Eerst even theoretisch. Veronderstel dat we modellen van mensen gemaakt hebben bv van Fries, Jan en Klaas. Het zou gemakkelijk zijn indien we in staat zouden zijn het model van elke persoon als een enkel geheel te behandelen, zelfs indien elkeen opgebouwd werd uit verschillende niet verbonden elementen. Het ware alsof we met het bevel 'Selecteer Jan' alle vertices van het model Jan selecteren. Voor de meeste gevallen is dit voldoende. Maar zoals zijn naam doet vermoeden is SA vooral animatie. Jan is dan, meer nog dan een menselijke figuur, iets dat beweegt. Indien de Hierarchie enkel een naam geven, zou zijn, dan zou Jan enkel een manequin zijn zonder bewegende delen. We kunnen echter ook zijn delen verdelen in een reeks niveau's, waarbij het totaal de naam Jan krijgt. Deze manier maakt het mogelijk om enkele delen van Jan afzonderlijk te kiezen of om Jan volledig te selekteren. Veronderstel dat we enkel Jan's linkerarm willen selekteren. Het volstaat niet om alleen die vertices als linkerarm te benamen, omdat ze niet langer geselekteerd zouden blijven als we dan Jan selekteren. We hebben dus een manier nodig om de vertices "Jan's linkerarm" te noemen. In het taalgebruik van SA kun je dit bekomen door de vertices "Jan + linkerarm te noemen. Veronderstellend dat we alle vertices hebben gedeselekteerd, zal het bevel "SELECT JAN + LINKERARM" alle vertices van Jan's linkerarm selekteren. Door de pointer op Jan's linkerschouder te plaatsen, kunnen we de rotatiegadgets gebruiken om Jan's hand omhoog te brengen, als eerste stap in een animatiegroet. Dit verondersteldt dat we Jan kunnen opdelen in verschillende elementen zoals : Jan + linkerarm Jan + rechterarm Jan + hoofd Jan + linkerbeen Elk element kan op zijn beurt verder verdeeld worden zoals Jan + linkerarm + opperarm Jan + linkerarm + bovenarm Jan + linkerarm + hand Zo kunnen we nog verder detaileren zoals Jan + linkerarm + hand + vinger1 Jan + linkerarm + hand + vinger2 Jan + linkerarm + hand + vinger3 Jan + linkerarm + hand + vinger4 Jan + linkerarm + hand + duim Het is mogelijk om kombinaties te gebruiken zoals beide duimen of alle tenen. Deze zijn echter niet bereikbaar met 1 enkel bevel. Daarom is het belangrijk op voorhand te weten wat je juist wenst te bereiken, zodat je je hierarchie hieraan aanpast. Een andere belangrijke faktor in het uittekenen van een hierarchie is beweging. Dit wordt in een volgend hoofdstuk uitgelegd. EEN HIERARCHIE OPBOUWEN """"""""""""""""""""""" Zoals je waarschijnlijk reeds geraden hebt, bezit SA een mogelijheid om een hierarchie van namen te maken. Hiervoor moet je EDIT/NAME/SELECTED VERTICES selekteren. Alhoewel dit kommando gemaakt is om een naam aan een groep vertices te geven, laat het eveneens een hierarchie van namen maken. Het requester dat verschijnt, heeft een kolom met daatin 9 kaders. Deze stellen de 'huidige generatie' van de hierarchie voor. Omdat we nog geen namen ingegeven hebben, zijn deze kaders nog leeg. Links van de huidige generatie is er een lang horizontaal kader (Parentage genaamd) dat eveneens ledig is. De cursor staat momenteel in het kader 'ADD NAME'. Hierin kun je de eerste naam van de huidige generatie typen. Om te beginnen, typ je 'JAN'. Druk daarna op RETURN => de naam Jan komt in het centrale kader te staan. Typ nu Klaas, Fries, enz... in. Je merkt dat hoe meer namen je intikt, deze namen alfabetisch gerangschikt worden en de laatst ingetypte naam staat steeds in het centrale kader. Je vraagt je waarschijnlijk af wat je juist een naam aan het geven bent. Wel tot nu toe nog niets. Je typt enkel namen in een hierarchie. Deze namen kun je ineens intypen en daarna aan vertices toewijzen. Wens je met een bepaalde naam te werken, klik gewoon met de linkermuis op zijn naam in het kader => deze naam komt nu in het centrale kader te staan. Indien je nu op OK klikt, zullen alle geselekteerde vertices de naam krijgen van de naam in het centrale kader. Laat ons nu een nieuwe generatie maken. Om te starten, klik je op Jan. Klik daarna rechts van Jan op het kader 'OFFSPRING'. Er gebeuren 2 dingen : 1. de kolom met de 9 gadgets wordt gewist 2. de naam Jan verschijnt in het PARENTAGE kader. In het ADD NAME kader, tikken we achtereenvolgens, linkerarm, rechterarm, hoofd, linkerbeen, enz... Klik nu op 'Linkerarm' en daarna op 'OFFSPRING'. Zo zijn we reeds aan de derde generatie toe. Zo kun je steeds verder specifieren. Indien je naar een vorige generatie wil terugkeren, klik je op het PARENTAGE kader. Op die manier hebben we onze hierarchie samengesteld. Indien je zelf hierarchieen samenstelt, moet je je houden aan de volgende beperkingen : 1. de namen mogen niet langer zijn dan 10 letters 2. je kunt hoofdletters en kleine letters gebruiken, ze worden toch als hoofdletter beschouwd 3. dezelfde naam kan slechts eenmaal gebruikt worden als Offspring van dezelfde ouder 4. laat je naam steeds met een letter beginnen en niet met een cijfer 5. gebruik alleen letters 6. de hierarchie kan tot 16 generaties diep gaan 7. een naam kan tot 255 Offsprings hebben 8. vermijd de namen LOCATION en TARGET te gebruiken Alhoewel dezelfde naam geen twee keer kan verschijnen in hetzelfde niveau met dezelfde Parentage, kan dezelfde naam toch gebruikt worden op verschillende niveau's van dezelfde Parentage. Het is eveneens mogelijk om een naam toe te wijzen aan vertices die rreds een naam hebben. Als dit gebeurt, zal de oude naam niet langer meer invloed uitoefenen op de hernoemde vertices, omdat een vertex slechts 1 enkele naam kan hebben. Indien je een objekt gemaakt hebt waarvan zijn delen niet verbonden zijn door edges, is het gemakkelijker het objekt met de cursor aan te wijzen die je wenst een naam te geven en dan EDIT/NAME/CONNECTED VERTICES te selekteren.