Le point fort de Houdini a toujours été sa nature procédurale. Avec quelques nœuds et un petit ensemble d'expressions, vous pouvez créer des résultats complexes et naturalistes - modèles et scènes qui prendraient pour toujours créer de manière traditionnelle.
Pendant longtemps, Houdini a été la colonne vertébrale de nombreuses productions à grande échelle dans l'industrie visuelle des effets visuels. Cependant, en raison de son approche procédurale, il est souvent prétendu être trop difficile à apprendre.
Bien que cela aurait pu être vrai quelques années, les choses ont changé. Avec des systèmes de licence plus accessibles et une réorganisation complète de l'interface de Houdini, elle continue d'ouvrir jusqu'à de petits studios, artistes et passionnés. Venir d'autres forfaits, c'est toujours une façon très différente de penser, cependant.
Dans ce tutoriel, nous donnerons un aperçu du programme. Nous allons commencer par des techniques de modélisation de base pour les feuilles et l'herbe. Nous couvrirons les volumes d'échantillonnage VDB pour distribuer la croissance des plantes et utiliser finalement utiliser le code VEX et les nœuds de chaance pour générer une géométrie à la volée.
Nous allons voir si ce que tout le monde dit à propos de Houdini est vrai: une fois que vous êtes procédural, vous ne regarderez jamais en arrière!
Téléchargez les fichiers pour ce tutoriel.
Commencez par un modèle de ruine que vous souhaitez couvrir dans le feuillage. Assurez-vous de nommer vos formes de manière significative. Cela permet un regroupement facile de la géométrie à des fins différentes plus tard. Débitez-le dans des murs, des planches, des briques, des fenêtres et du verre. Houdini Alembic Importer définira un attribut de chemin sur l'importation. Vous pouvez ensuite utiliser facilement un nœud Split ou Blast pour sélectionner les pièces que vous souhaitez.
Avec la ruine en place, il est temps de commencer à créer des feuilles individuelles à utiliser plus tard pour instantanément. Travaillez toujours avec des images de référence de la nature si vous souhaitez des résultats plus réalistes. Nous avons besoin que les feuilles soient unilatérales et du nombre de poly assez bas. Commencez par faire une courbe pour ressembler à la forme de la feuille extérieure. Utilisez un nœud RIMESH pour ajouter une certaine tessellation de surface. Avec une transformation douce, soulevez légèrement le centre à la tige. Ajoutez également un attribut de couleur avec différentes nuances de vert.
Nous avons également besoin de brins d'herbe individuels pour couvrir le sol. Encore une fois, de simples brins polygonaux unilatéraux à une largeur variable sont suffisants. De manière générale, plus de variation est toujours meilleure. Mais même avec seulement cinq formes différentes, vous obtiendrez des résultats assez réalistes. Comme notre configuration est de la procédure, plus peut facilement être ajoutée plus tard. Il est important de s'assurer que tous les mailles sont centrés à l'origine avec le pivot à leur pied. De cette façon, nous pouvons les utiliser comme des instances immédiatement.
Il existe de nombreuses façons de décider où l'herbe va pousser. Trouver une règle qui ressemble à une distribution naturelle. Nous ferons grandir de l'herbe partout sur le terrain qui n'est pas couvert par le bâtiment ou des décombres. La croissance doit être plus dense et plus longue le long des murs et des rochers. Isolez le sol de notre géométrie et utilisez un nœud de remède pour obtenir un niveau de subdivisions assez élevé.
Ajoutez une couleur blanche sur les murs et un gris au sol. Utilisez AttributeTransfer pour cartographier la couleur du mur sur le sol. Modifiez le rayon de mélange sur le nœud pour s'adapter à la base des murs. Tournez les murs en une VDB avec VDBFrompolygons. Dans un attributwrtangle, obtenez la valeur VDB à chaque point avec la fonction Volumesample. Supprimer des points avec une valeur négative.
Avant d'utiliser un timbre Copy, certains attributs ont besoin de préparation. Dans Vex, utilisez un nombre aléatoire pour entraîner une rampe d'un nombre aléatoire. Ceci est un moyen visuel de contrôler la distribution d'échelle. De la même manière, réglez la couleur sur un vert aléatoire. Pour faire valoir les brins dans des directions légèrement différentes, changez la normale en ajoutant un décalage aléatoire dans la direction X et Z. Voila, tu es grand d'herbe!
Pour les plantes d'escalade, nous devons écrire notre propre solveur à Vex pour imiter un mécanisme de croissance. Cela peut sembler intimidant, mais nous allons pas à pas à l'étape tout le chemin. N'oubliez pas d'utiliser également la référence Houdini sur Vex. Pour trouver les points racines, nous allons avec le même mécanisme que nous avons utilisé sur l'herbe. Commencez avec quelques points sur le sol, près du mur.
Nous avons trois forces au travail. Le premier nous allons appeler, soulignant le sol contre la traction gravitationnelle. La seconde est un vecteur nommé errer, pointant dans une direction aléatoire le long du mur. La troisième force s'appelle Wall, pointant vers l'obstacle le plus proche. Cela émule le désir de la plante de grimper. Nous utiliserons les trois forces sur chaque itération de la croissance.
Vient maintenant le temps pour que nous plongions à Vex à l'aide d'un point deurvers. Dans une boucle pour la boucle, nous développons les semis dans de courts segments en ajoutant à la variable POS, qui a été initialisé avec la position de départ. Pour l'instant, ne poussez que sur le vecteur up.
C'est une bonne pratique pour utiliser les fonctions CH () et CHV () pour exposer les paramètres à l'interface. Vous pouvez ensuite expérimenter facilement le résultat de l'algorithme en modifiant de manière interactive ces valeurs.
Pour un look plus naturel, ajoutez la force erronée. À chaque étape, calculez une direction aléatoire basée sur une fonction de bruit. Ce vecteur aléatoire ajoute à la direction que la graine est déplacée. Pour un meilleur équilibrage, introduisez également deux facteurs de pondération à l'interface, à la mise à l'échelle de nos forces de haut en bas. Le résultat est des vignes qui poussent avec beaucoup plus de variation, mais elles pénétrent désormais des obstacles qu'ils rencontrent. Pour éviter cela, le troisième type de force est utile, la direction du mur.
Ajoutez la dernière force à la boucle Vex en échantillonnant la valeur et le gradient VDB de la ruine. Cela vous donne la distance entre le point et le mur ainsi que la direction normale du mur. Calculez une force qui pointe vers le mur et ajoutez-la à la direction de la croissance. Échantillon Le VDB une seconde fois dans la nouvelle position pour vérifier si le point est à l'intérieur du mur. Si oui, poussez-le simplement le long de la normale.
Les vignes n'ont toujours pas l'air naturelle. C'est parce qu'ils peuvent changer de direction rapidement à chaque étape. Mélange doux entre les directions de la précédente et l'étape actuelle pour lisser cela. Vous souhaitez également cesser de croître si la position se déplace trop loin des murs. Voyez si la distance murale que vous obtenez de l'échantillon VDB dépasse un certain seuil. Il suffit de sortir de la boucle si elle le fait.
Un autre aspect des plantes d'escalade, nous devons encore ajouter - ramifiant. Mais c'est très simple à atteindre. Étiquetez chaque étape de croissance avec une certaine probabilité d'être un point de branche. Ensuite, exécutez à nouveau l'algorithme de croissance sur chacun de ces points marqués, en utilisant le point lui-même comme la racine.
C'est une bonne idée de modifier les paramètres de croissance du deuxième passage afin d'être plus errant et moins à la hausse, de remplir les zones le long des murs.
Nous avons maintenant créé des séquences de points ressemblant à la croissance des succursales. Utilisez l'attribut ID sur le point et créez un nœud Ajouter pour les transformer en courbes individuelles.
Une texture UV définie sur les lignes et les amplis; les colonnes fourniront des UVS le long de la longueur de la courbe, que vous ramassez ensuite sur leur longueur individuelle à un attribut appelé pscale. Un nœud de polywire transforme les courbes en tubes où vous utilisez $ pscale pour une épaisseur. Ajoutez une montagne et une facette après, pour finaliser les branches.
Les feuilles d'instanciation fonctionnent un peu comme les brins d'herbe plus tôt. Nous définissons un attribut de distribution le long des courbes sortant de l'algorithme de croissance. Ceci est zéro au début de chaque branche, puis 1 au bout. Utilisez une dispersion pour placer des points le long de la courbe en fonction de cet attribut. Il semble mieux de varier le pscale. Utilisez un timbre de copie pour insérer les feuilles préparées sur ces points.
Cet article est apparu à l'origine dans Monde 3D numéro 225; Achetez-le ici !
Articles Liés:
[DIX] [DIX] [DIX] [dix] (Crédit d'image: Getty Images) [DIX] BIENVENUE À NOTRE Gui..
[dix] [dix] [dix] [dix] Souvent, ce sont les effets les plus simples qui semblent le plus frappant et..
[dix] [dix] [dix] [dix] L'unité est l'un des moteurs de jeu les plus populaires au monde, responsabl..
[dix] [dix] [dix] [dix] Tu pourrais savoir Comment dessiner des gens ,..
[dix] [dix] [dix] [dix] Parfois vous avez besoin de secouer les choses avec votre des..
[dix] [dix] [dix] [dix] Il est minuit et celui-là diviser Sur votre s..
Dans un monde où les utilisateurs ont des attentes élevées de leur expérience sur le Web et le prototypage et l'évaluation de l'utilisateur sont essentiels. Il est maintenant courant de ..
Une image vaut mille mots et une vidéo vaut un million. La vidéo peut transmettre plus d'informations plus rapidement que l'imprimante ou l'imagerie statique. Il peut apporter des documents..