Inleiding tot de MEL Scripting in Maya: 3D Fractals (6 / 7 stap)

Stap 6: MEL Script


We schrijven nu een recursieve functie die de bovengenoemde fractal-algoritme implementeert. Er zijn vele manieren van uitvoering van dit, maar ik ga tonen het makkelijkst te begrijpen (hoop ik)!

Eerst, verklaren de functie generateFractal, duurt het een paar invoerparameters, een vector, float en een int.

We hebben om te schrijven een controle om te zien welk recursie niveau hebben. Dit niveau van recursie verwijst hoe diep wij worden binnen het proces. Wanneer we de eerste kubus maken wij zijn niveau 0 en vervolgens de tweede set van kubussen (kinderen) worden gedaan, dan zijn wij op niveau 1, enz. Voor onze doeleinden die wij willen geven een maximale recursie diepte en decrement dat nummer totdat we -1 bereiken, zal alleen dan de functie stoppen.

De volgende regel wordt een polyCube gemaakt met een breedte, hoogte en diepte van $size, dat is een van de invoerparameters van de generateFractal-functie. We zullen zien hoe dit is ingesteld in de programmacode in een beetje.

Vervolgens hebben we de kubus in positie weten te bewegen. Je zou kunnen denken, oh wacht, we hoeft niet eerst te selecteren de kubus? Nope! Standaard geselecteerd Maya het laatste object gemaakt in de scène. Dit is handig.

Nu berekenen we dat de volgende cube(s) grootte en hoe ver het gecompenseerd zal worden uit de kubus we zojuist (aka de bovenliggende). De volgende kubus zal de helft van de bovenliggende tabel, en zal worden gecompenseerd door een kwart van de bovenliggende grootte en de helft van zijn eigen grootte. Als dat niet steek houdt, me maak niet ongerust. Zodra we beginnen met het uitvoeren van deze functie voor het genereren van fractals kunt u spelen met deze nummers en zien hoe ze van de fractal esthetische beïnvloeden.

Oke, hebben we voor het berekenen van de posities van de center voor de nieuwe kubussen we gaan maken. Wij berekend al de offset zodat de nieuwe posities zijn gelijk aan de vorige centrum, plus een verschuiving in de juiste richting.

We noemen tot slot de generateFractal functie binnen zelf! Woohoo recursie :) Merk op dat we de functie de nieuwe posities voor de centra, de grootte en recursie niveau passeren!

Tijdens het bouwen en testen van deze functie, zult u waarschijnlijk eindigen met tonnen kubussen in je scène. Maya zal dan vertragen en uiteindelijk crash. Dus voordat we onze fractal genereert, we Maya opvragen voor alle objecten met het voorvoegsel pCube en verwijdert u deze. Dit geeft ons een schone scène.

Nu gaan we Setup de initiële parameters die we aan onze generateFractal-functie passeren! We onze eerste kubus op (0,0,0) centreren en beginnen met een grootte van 100 eenheden, en gaan we diep 6 niveaus (eigenlijk 7 tellen nul).

Dan noemen we de functie! Maya zal hangen voor een tweede en verwerken wat u zojuist verteld om te doen. Maya kunnen bevriezen voor een seconde of tien. Maak je geen zorgen, dat is volkomen normaal. Ik heb ontdekt dat 6 het hoogste niveau dat ik bereiken op mijn machine is kan voordat ik Maya verwarren en om te verpletteren veroorzaken! Het aanroepen van deze functie is als "het nemen van de rode pil"... Ik hoop dat het je geest waait:

			
          

Gerelateerde Artikelen

Inleiding tot de VB-Script: een beginnersgids: deel 2: werken met bestanden

Inleiding tot de VB-Script: een beginnersgids: deel 2: werken met bestanden

goed in mijn laatste VBScript instructable, ik ging over de vraag hoe maak je een script voor dicht vandoor uw internet te spelen Xbox360. Vandaag heb ik een ander probleem. Mijn computer is al afgesloten op willekeurige tijden en ik wil elke keer da
Inleiding tot het installeren van web apps.

Inleiding tot het installeren van web apps.

Webapplicaties zijn een zegen voor uw computeromgeving bieden. Traditioneel zou u computer software applicaties lokaal op elk systeem laden.  Zelfs met geautomatiseerde software kan implementatie systemen, nog steeds worden ondersteunen intensieve. M
Inleiding tot Leatherworking

Inleiding tot Leatherworking

Leder is een geweldig product dat is gebruikt door de mens sinds echt, het begin van de mens. Het is in kleding, schoenen, tassen, riemen en holsters en echt, vrij veel alles wat die je van bedenken kunt kan worden gemaakt van leer.Werken met leer is
Configureren MKS Sbase v1.2 32-bits domeincontroller basics en inleiding tot de Smoothieware.

Configureren MKS Sbase v1.2 32-bits domeincontroller basics en inleiding tot de Smoothieware.

ProlougeIk ben echt blij om te zien hoe deze fundamentele intro in Smoothieware en de MKS Sbase 1.2 controller zoveel aandacht hebben gekregen, en hoop echt dat het gaat om het helpen van mensen aan de slag of besluiten niet te.Ik heb aanvaard in rob
How To Make Websites - Complete Inleiding tot de Webdevelopment

How To Make Websites - Complete Inleiding tot de Webdevelopment

Bekijk op YouTubeDeze video serie is het introduceren van websiteontwikkeling voor beginners die niets weet over het maken van websites. Deze eerste aflevering introduceert de software die ik gebruik in mijn workflow om websites te maken om de beste
Inleiding tot de Light Emitting Diode met behulp van Snap Circuits

Inleiding tot de Light Emitting Diode met behulp van Snap Circuits

In deze foto Instructable, leert u over de Light Emitting Diode, of LED. U zult ook leren hoe te bouwen van een eenvoudige schakeling die aantoont hoe de LED werkt met behulp van Snap Circuits.Onderdelen nodig:1 basis raster (11 "x 7.7") # 6SC B
Zomer 2014 Inleiding tot Engineering competitie

Zomer 2014 Inleiding tot Engineering competitie

Juli 3, 2014DOORGroep: Één stukBu JiaqingQian-JunqiXiang YinanYang SiyuanChen MiaomiaoVG100 INLEIDING TOT DE TECHNIEKDEPATMENT VAN INSTALLATIE-EN MACHINEBOUWUNIVERSITEIT VAN MICHIGAN – SHANGHAI JIAO TONG UNIVERSITEIT GEZAMENLIJK INSTITUUT(UM SJTU JI)
Inleiding tot vinyl plotter/snijplotters

Inleiding tot vinyl plotter/snijplotters

dit is een inleiding tot vinyl plotters en scharen.
Inleiding tot mijn Tutorial over hoe te maken uw zeer eigen Role-Playing Game, zonder enige kennis van Scripting en Pixel-Art

Inleiding tot mijn Tutorial over hoe te maken uw zeer eigen Role-Playing Game, zonder enige kennis van Scripting en Pixel-Art

Alright, je wilt om uw zeer eigen Role-Playing-project, maar u weet niet waar te beginnen... en dit leerprogramma zal in principe tonen u hoe maak je een dobbelsteen RPG spel zonder de noodzaak van een internet-browsers, een perfecte verveling killer
Inleiding tot chainmaille

Inleiding tot chainmaille

U hebben ooit begonnen breien een trui en dacht: "Ik wou dat dit betere bescherming tegen pijlen?" U kunt overwegen om onderaan uw breinaalden voor een paar tang en beginnen met het maken van sommige chainmaille.*Chainmaille is een sterke maar f
Inleiding tot de Particle Photon en IoT

Inleiding tot de Particle Photon en IoT

1. Gelieve te genieten van mijn eerste Instructable2. Ik ben slechts een nederig eerstejaars, die lid willen worden van een grote coder, dus alsjeblieft, geen hatelijke opmerkingen (ik denk niet echt dat ik moet vermelden dat de Gemeenschap hier vrij
Inleiding tot het bouwen van individuele survival kits

Inleiding tot het bouwen van individuele survival kits

Hallo Instructables Gemeenschap,Hartelijk dank voor de positieve reacties en feedback, Favorieten & abonnementen voor mijn vorige projecten. Een ding die ik gerealiseerd door middel van berichten en commentaren voor mijn vorige Pocket Survival Kit De
DIY Android bal Maze - een inleiding tot de Androïde ADK

DIY Android bal Maze - een inleiding tot de Androïde ADK

InleidingAls je dit artikel leest bent u waarschijnlijk net als ik: ik doorlopen fasen waar ik zo verdiept in een project (die de meeste anderen zouden zien als triviaal), zo gefocust op het doel dat slapen en voedsel zijn afterthoughts, heb ik mijn
Inleiding tot licht fotografie

Inleiding tot licht fotografie

welkom en dank u voor het nemen van een dichter kijken naar mijn Instructable. In de volgende 5 of 6 stappen zal ik proberen mijn best om u te begeleiden door middel van de concepten en ideeën van licht fotografie en de zogenaamde wet van "Light kuns