Polys dépliants

 


Vu qu’il est venu assez de fois sur odforce, senti comme il valait la peine d’avoir un aller. Il y a un tutoriel très complet sur vimeo pour obtenir un effet similaire, était curieux de voir si je pouvais le faire sans tricher et en regardant cette méthode.


Cette configuration prend un peu de géo, génère un point au centre de chaque prim et les connecte dans un nouveau filaire. Le sop findshortestpath est utilisé pour générer des chemins d’accès d’un point vers tous les autres points et créer des attributs utiles. @prevpt est l’id du point précédent sur le chemin d’accès, et @cost est une mesure du nombre d’étapes nécessaires pour se rendre du point de départ au point actuel. Les points proches du départ ont un faible coût, les points éloignés ont un coût élevé.


Avec ces attributs transférés vers les prims d’origine, vous pouvez faire l’affaire de déploiement. Utilisez @cost comme minuterie, supprimez tous les nombres premiers pour commencer et restaurez-les séquentiellement au fil du temps en fonction de @cost.


Une fois déhidé, recherchez la position prim, la position @prevpt, utilisez-la pour travailler sur l’axe de rotation sur le bord partagé et le milieu à utiliser comme pivot. Peut ensuite l’utiliser pour faire pivoter le prim avec une méthode similaire à l’exemple précédent. Je soupçonne que cela peut être fait sans les étapes de > de matrice de rotation, > par exemple, matrice->out, mais chaque fois que j’ai essayé, les rotations seraient toujours alignées sur les axes x / y / z de l’espace mondial; très bien pour un avion, mais est devenu laid avec d’autres géométries.


Ce fichier branché utilise une querelle vex pour faire tout le gros du travail, mais j’ai fait beaucoup de prototypage et de débogage dans un point vop avant de le déplacer partout dans vex.


Fonctionne assez bien pour les quelques cas que j’ai testés, mais étrangement pas pour un tore, je ne sais pas pourquoi. Changer de géo nécessite un certain ajustement au sop « connecter les pièces adjacentes », principalement pour s’assurer que tous les points ont suffisamment de géo pour calculer un chemin vers le point de départ.






0 Commentaires