Primitives compressées

 Bon aperçu au début de cette masterclass à puces si vous préférez regarder plutôt que de lire 



Les prims emballés sont un moyen de représenter beaucoup de géo par un seul point. Par exemple, prenez la tête des porcs, qui est de 2800 points, emballez-la, et maintenant c’est un seul point. Vous pourriez presque le considérer comme une transformation de forme en maya, ou un nœud dans le réseau /obj de Houdini, mais vers le bas dans les sop.




Ceci est pratique pour de nombreuses raisons:


Il vous permet de manipuler des charges plus géo que vous ne le feriez autrement; Houdini ne traite qu’un point par paquet, donc tout en faisant 50 000 copies du cochon régulier ralentira considérablement Houdini, il transpire à peine lorsque vous avez 50 000 porcs emballés.

Même pour un plus petit nombre de formes, il est plus facile de manipuler 20 points dans les transformations sops vs 20 dans le contexte /obj.

Mantra traite les prims compressés comme des instances, de sorte qu’il peut rendre plus de géo en moins de temps avec moins de mémoire

Les corps rigides peuvent utiliser des prims emballés, vous permettant de pousser des quantités folles de géo

Les packs peuvent être hiérarchiques, de sorte que vous pouvez emballer une feuille, les mettre sur des branches, emballer la branche, mettre les branches sur les arbres, emballer l’arbre, disperser de nombreux arbres, vous obtenez des économies et une facilité d’édition en cours de route

Emballé peut être déballé si nécessaire (généralement mal vu, mais très bien si vous avez seulement besoin de déballer et de modifier 2 arbres spécifiques sur 4000 arbres emballés)

Les fichiers alambic hiérarchiques sont traités comme des prims emballés, donc tout est bien conforme

L’accent est de plus en plus mis sur les outils pour éditer des prims emballés sans avoir besoin de les décompresser; par exemple, vous pouvez assigner des matériaux à des sous-objets de prims emballés, et certaines autres propriétés de rendu.


Il existe plusieurs façons de créer des prims compressés :


Un pack sop

Une copie sop, sur l’onglet de tampon est le bouton bascule 'Pack Geometry Before Copying'

Le fichier sop vous permet de charger geo en tant que prim compressé via la liste déroulante 'Load'

L’objet merge sop a une option à emballer avant la fusion

Le sop alambic a plusieurs options pour le chargement en tant que packed, ou hiérarchique emballé, ou autre

Le sop d’assemblage, souvent utilisé pour lier la géométrie fracturée, a une bascule « Créer une géométrie compressée »


Le sop assemble peut être émulé en quelques étapes, agréable de savoir comment il fonctionne sous le capot. Par exemple, si vous exécutez une fracture de voronoï, voici comment convertir manuellement ces pièces en primitives compressées:


Créer un sop de connectivité en mode primitif pour identifier les îles

Ajoutez un sop prim wrangle, entrez ce code: « s@name = itoa (i@class); »

Ajoutez un pack sop, activez la bascule 'Attribut de nom'.


Le sop de connectivité crée un attribut « classe », qui sera 0 pour tous les nombres premiers dans la première île, 1 pour la suivante, 2 pour la suivante, etc. Le pack sop s’attend à ce que l’identificateur unique par pack soit une chaîne, de sorte que le vex wrangle casts l’attribut 'class' en une chaîne et le stocke dans 'name'. Enfin, le pack sop recherche « nom » pour faire l’emballage.


Alors que vous pensez que vous pourriez simplement obtenir le pack sop pour rechercher directement l’attribut 'class', il semble qu’il nécessite un attribut de chaîne, d’où l’étape du milieu pour effectuer un cast de int en chaîne.


Pourquoi une fonction int-to-string s’appelle-t-elle itoa() et non itos() ? Me bat.






0 Commentaires