Introduction à la LME Scripting dans Maya : fractales 3D (6 / 7 étapes)

Étape 6: MEL Script

Maintenant, nous allons écrire une fonction récursive qui implémente l’algorithme de fractale susmentionné. Il y a plusieurs façons d’appliquer cela, mais je vais vous montrer les plus faciles à comprendre (j’espère) !

Tout d’abord, déclarez la fonction generateFractal, elle prend deux paramètres d’entrée, un vecteur, float et un int.

Nous avons à écrire une vérification pour voir quel niveau de récursivité nous courent. Ce niveau de récursivité réfère à quelle profondeur nous sommes dans le processus. Lorsque nous créons le premier cube nous sommes niveau 0, et puis lorsque le deuxième jeu de cubes (enfants) sont faites, alors nous sommes au niveau 1, etc.. Pour nos besoins que nous voulons spécifier une profondeur maximale de récursivité et decrement, ce nombre jusqu'à arriver à -1, alors seulement arrêtera la fonction.

La ligne suivante va créer un polyCube avec une hauteur, largeur et profondeur de $size, qui est l’un des paramètres d’entrée de la fonction generateFractal. Nous allons voir comment ceci est défini dans le code un peu.

Ensuite, nous entrons le cube dans la position. Vous pourriez penser, oh, attends, n’avons-nous pas tout d’abord sélectionner le cube ? Nope ! Par défaut, Maya sélectionné le dernier objet créé dans la scène. C’est pratique.

Maintenant, nous calculons que la prochaine cube(s) taille et dans quelle mesure compensée il sera dans le cube nous juste faites (aka son parent). Le cube suivant sera la moitié de sa société mère et sera compensée par un quart de taille de son parent et la moitié de sa propre taille. Si cela ne fait pas de sens, ne vous inquiétez pas. Une fois que nous avons commencer à exécuter cette fonction pour générer des fractales, vous pouvez jouer avec ces chiffres et voir comment ils affectent l’esthétique de la fractale.

Bon, il faut calculer les positions centrales, pour les nouveaux cubes, nous allons créer. Nous avons déjà calculé le décalage pour les nouveaux postes sont égales au centre précédent, avec un décalage dans la direction appropriée.

Enfin, nous appelons la fonction generateFractal en lui-même ! Woohoo récursivité:) Notez que nous transmettons à la fonction les nouvelles positions pour les centres, la taille et niveau de récursivité !

Tout en construisant et tester cette fonction, vous allez probablement finir par avec des tonnes de cubes dans votre scène. Puis Maya ralentit et finit par se bloquer. Donc avant que nous générons nos fractale, nous allons interroger Maya pour tous les objets avec le préfixe pCube et supprimez-les. Cela nous donnera une scène propre.

Nous allons maintenant configurer les paramètres initiaux que nous passerons à notre fonction generateFractal ! Nous allons centrer notre premier cube à (0,0,0) et commencer avec une taille de 100 unités, et nous irons 6 niveaux (en réalité 7 comptage zéro) profondément.

Puis nous allons l’appeler la fonction ! Maya va traîner pendant une seconde et processus de ce que vous avez dit juste qu’il fasse. Maya pourrait geler pendant une seconde ou dix. Ne vous inquiétez pas, c’est tout à fait normal. J’ai trouvé que 6 est le plus haut niveau, que je peux réaliser sur ma machine avant de confondre Maya et provoquer un accident ! L’appel de cette fonction est comme « prendre la pilule rouge »... J’espère que ce souffle de votre esprit :

			
          

Articles Liés

Getting started dans LSL scripting dans Second Life

Getting started dans LSL scripting dans Second Life

Bonjour et Bienvenue sur la « Mise en route dans le script LSL ». LSL signifie « Linden Scripting Language » et est utilisé pour décrire les objets que vous rencontrez et gagner dans Second Life.QUI CE TUTORIEL EST POUR :Ce tutoriel est destiné à ceu
Création d’objets récursif dans Maya à l’aide de MEL et impression 3D

Création d’objets récursif dans Maya à l’aide de MEL et impression 3D

Cette instructable vous montrera comment créer un objet récursive dans Maya en utilisant le langage de script de MEL (langage Embedded Maya). En outre, il couvrira comment 3D imprimer ces objets à l'aide d'un Objet Eden 260V.Matériaux, que vous aurez
Mise à jour : Comment faire pour utiliser des fichiers de Mocap dans Maya, BVH ou FBX

Mise à jour : Comment faire pour utiliser des fichiers de Mocap dans Maya, BVH ou FBX

Pour ceux qui ont un fichier FBX, passez à l'étape suivante.Ce tutoriel est fait pour Maya 2013, mais je crois que cela devrait fonctionner en 2010-2015.Bonne ressource pour les données mocap opensource : Fichiers d'origineconverti à BVHÉtant donné q
Comment faire pour modifier des scripts dans le nuage parti

Comment faire pour modifier des scripts dans le nuage parti

cette instructable couvrira les rudiments de savoir comment rendre un objet et insérer un script existant.Étape 1: Base des capacités Cloud partie scripts sont écrits en Javascript et sont actuellement placés dans n'importe quel objet que vous créez
3D Jack o ' Lantern dans MAYA avec effet de feu

3D Jack o ' Lantern dans MAYA avec effet de feu

Halloween ce concevoir votre propre 3D Jack o ' Lantern et juste ne pas concevoir il lui donner le feu assumera dans maya.Permet donc commencer!!Étape 1: Création d'organisme citrouille Undeads are coming . . . Ramassez vos forces et se préparer à la
L’Occlusion ambiante rendu dans Maya

L’Occlusion ambiante rendu dans Maya

L'occlusion ambiante (aka AO) est un algorithme / technique utilisée en infographie 3D pour calculer comment exposés chaque objet (dans une scène) à la lumière ambiante de l'environnement.En d'autres termes, AO tente de simuler la lumière ambiante co
Introduction aux Textures UV dans Blender

Introduction aux Textures UV dans Blender

Déballer les UV est une méthode courante de mappage des textures sur un objet 3D. Cela montre comment déballer un cube à l'aide de Blender et programme de modélisation 3D open source.Étape 1: Configurer la mise en page Créez un nouveau projet et ensu
Comment faire pour ajouter des scripts dans RSBot

Comment faire pour ajouter des scripts dans RSBot

Bonjour,aujourd'hui j'ai va vous montrer comment ajouter un script à RSBot.C'est très simple et ne prendra pas aussi longtemps.Étape 1:1) rassembler les éléments nécessaires Vous aurez besoin des choses suivantes :1) Java Development Kit - DL -
Comment écrire un Script dans Celtx

Comment écrire un Script dans Celtx

cela vous montrera comment faire un script pour un film / film dans le programme Celtx.Étape 1: Téléchargez le programme Télécharger Celtx à, https://www.celtx.com et faire un compte gratuit.Étape 2: Commencez à écrire Il s'agit d'un programme très s
Recompiler les scripts dans les objets

Recompiler les scripts dans les objets

si vous êtes nouveau à SL ou juste l'ont jamais fait avant, voici deux turorials plus âgés dans les photos que j'ai fait. L'un est pour une porte (seule prim) est une cheminée (multiples prim) mais ils peuvent être appliqués à la plupart des objets q
Comprendre & apprentissage Interface de Maya

Comprendre & apprentissage Interface de Maya

Maya est l'un des outils plus puissants pour faire la modélisation 3D, animation, rendu, éclairage, dynamique, scripts et plus encore. La plupart des gens prennent des années pour découvrir la puissance et les capacités de Maya. Je me sers de Maya de
À l’aide de Maya pour créer un rendu professionnel produit rapidement pour Shapeways

À l’aide de Maya pour créer un rendu professionnel produit rapidement pour Shapeways

Lorsque vous vendez un modèle sur les sites d'impression 3D Shapeways, je crois qu'il est important de créer les deux une impression première belle et professionnelle pour un client lorsqu'ils atterrissent sur votre page de produit.Dans cette leçon,
Branching Fractal Shapes

Branching Fractal Shapes

Un maya python script qui vous permet de jouer avec des formes ramifiées. Un objet de base est copié à plusieurs reprises, et les copies ont un certain rapport avec leurs « parents » pour que lorsqu'une des première génération-copies est traduite, pi
Vous avez du courrier ! Obtient le dernier courriel et affiche dans un écran LCD

Vous avez du courrier ! Obtient le dernier courriel et affiche dans un écran LCD

IntroductionCe projet fait un travail relativement simple et a été maintenu volontairement de cette façon à encourager l'expérimentation. À l'aide de ByPic, l'utilisateur ne peut modifier le code simplement en modifiant l'existant et ne téléchargemen