Houdini (logiciel)
Houdini est un logiciel d'animation 3D développé par la société SideFX basée à Toronto. SideFX a adapté Houdini depuis la suite d'outils logiciels PRISMS de génération procédurale. Son attention exclusive à cette technologie le distingue des autres logiciels 3D.
Pour les articles homonymes, voir Houdini.
Développé par | SideFX |
---|---|
Première version | |
Dernière version | () |
Écrit en | C++ |
Système d'exploitation | Microsoft Windows |
Environnement | Windows, Mac OS X, Linux |
Formats lus | Houdini Apprentice Project (d), Houdini Binary LUT (linear) (d), Houdini Binary LUT (log) (d) et Houdini LUT (d) |
Formats écrits | Houdini Apprentice Project (d), Houdini Binary LUT (linear) (d), Houdini Binary LUT (log) (d) et Houdini LUT (d) |
Type | animation 3D |
Licence | Commercial |
Site web | sidefx.com |
Houdini est très utilisé pour la création d’effets visuels dans les films et les jeux vidéo. Il est utilisé par les principales sociétés d’effets spéciaux, telles que Toei Animation, Studio Ghibli, Production I.G, OLM, et Polygon Pictures.
Houdini est également utilisé par les entreprises d'animations, notamment sur les films Princesse Mononoké, Le Voyage de Chihiro et Le Château ambulant de Studio Ghibli, Ghost in the Shell 2: Innocence de Production I.G, et Hottarake no Shima: Haruka to Mahō no Kagami de Polygon Pictures.
SideFX propose également une version partiellement limitée appelée Houdini Apprentice, qui est gratuite pour une utilisation non commerciale.
Historique des versions
Version | Date de sortie | Principales nouveautés | Durée inter-version | Systèmes d’exploitation | Prix (en US$) | Observations |
---|---|---|---|---|---|---|
Houdini 1.0 | IRIX | $ 9 500 | Houdini 1.0 au SIGGRAPH 1996 | |||
Houdini 2.0 | IRIX | |||||
Houdini 2.5 | Début du portage Windows NT | IRIX, Windows NT | ||||
Houdini 3.0 | IRIX, Windows NT | |||||
Houdini 4.0 | Début du portage Linux | IRIX, Windows NT, Linux | $ 17 000 | |||
Houdini 5.0 | IRIX, Windows NT, Linux | $ 16 000 | ||||
Houdini 5.5 | IRIX, Windows NT, Linux | $ 16 000 | ||||
Houdini 6.0 | IRIX, Windows NT, Linux | |||||
Houdini 6.5 | (CIRCA) | IRIX, Windows NT, Linux | ||||
Houdini 7.0 | port IRIX abandonné | Windows NT, Linux | Silicon Graphics IRIX abandonné | |||
Houdini 8.0 | Windows NT, Linux | $ 17 000 | ||||
Houdini 9.0 | Windows NT, Linux | |||||
Houdini 9.1 | 2008 | Windows NT, Linux | ||||
Houdini 9.5 | 2008 | Nouvel UI, début du support MacOS | Windows NT, Linux, MacOS | |||
Houdini 10.0 | 331 jours | |||||
Houdini 11.0 | 467 jours | $ 6 695 | ||||
Houdini 12.0 | 583 jours | |||||
Houdini 12.1 | 159 jours | |||||
Houdini 12.5 | 219 jours | |||||
Houdini 13.0 | 231 jours | |||||
Houdini 14.0 | 441 jours | |||||
Houdini 15.0 | 273 jours | |||||
Houdini 15.5 | 217 jours | |||||
Houdini 16.0 | [1] | 278 jours | $ 6 995 | |||
Houdini 16.5 | [2] | 259 jours | $ 6 995 | |||
Houdini 17.0 | [3] | Vellum | 337 jours | |||
Houdini 17.5 | [4] | PDG (Graphique de dépendance procédurale) | 154 jours | |||
Houdini 18.0 | 27 novembre 2019[5] | USD, LOPS, Karma (GPU Render) | 253 jours | |||
Houdini 18.5 | KineFX | 331 jours |
Caractéristiques
Houdini couvre tous les principaux domaines de la production 3D, notamment :
- Modélisation - Toutes les entités de géométrie standard, y compris les polygones, NURBS/courbes de Bézier/Patches & Trims (hiérarchique), metaballs.
- Animation - Animation par clés et manipulation de canal brut (CHOP), prise en charge de la capture de mouvement.
- Particules
- Dynamique - Dynamique des corps rigides, dynamique des fluides, dynamique des fils, simulation de tissu, simulation de foule.
- Éclairage - Création de shaders par système nodal, éclairage et ré-éclairage de shaders basés sur le système nodal par rendu IPR
- Rendu - Houdini est livré avec son puissant moteur de rendu Mantra, mais la licence Houdini Indie (version d'Houdini pour les développeurs indépendants) prend en charge d’autres moteurs de rendu tiers, tels que : Renderman, Octane, Arnold, Redshift, V-Ray, Maxwell.
- Volumétrie - Avec ses outils natifs CloudFx et PyroFx, Houdini peut créer des simulations de nuages, de fumée et de flammes.
- Compositing - Compositeur complet de passes de rendu.
- Développement de plugins - Bibliothèques de développement pour l'extensibilité de l'utilisateur.
Houdini est un environnement ouvert et prend en charge diverses API de script. Python est de plus en plus le langage de script de choix du logiciel, et est destiné à remplacer son langage de script original, semblable à CShell, Hscript. Cependant, tous les principaux langages de script prenant en charge la communication par socket peuvent s’interfacer avec Houdini.
Opérateurs
La nature procédurale de Houdini se retrouve chez ses opérateurs. Les actifs numériques sont généralement construits en reliant des séquences d'opérateurs (ou OPs). Ce procéduralisme présente plusieurs avantages : il permet aux utilisateurs de construire des objets géométriques ou organiques très détaillés en relativement peu d'étapes par rapport à d’autres logiciels, il permet et encourage le développement non linéaire, et de nouveaux opérateurs peuvent être créés en termes d'opérateurs existants, une alternative flexible au script non procédural souvent utilisé dans d'autres logiciels pour la personnalisation. Houdini utilise ce paradigme procédural tout au long : pour les textures, les shaders, de particules, de « données de canal » (données utilisées pour piloter l'animation), de rendu et de compositing.
La structure d'opérateur de Houdini est divisée en plusieurs groupes principaux :
- OBJ - nœuds qui transmettent des informations de transformation (ils contiennent généralement des procédures d'exploitation normalisées).
- SOP - Opérateurs de surface - pour la modélisation procédurale.
- POPs - Opérateurs de particules - utilisés pour manipuler les particules.
- CHOPs - Opérateurs de canaux- pour l’animation procédurale et la manipulation audio.
- COPs - Opérateurs composites - utilisés pour effectuer une composition sur des séquences.
- DOPs - Opérateurs dynamiques - pour des simulations dynamiques pour les interactions de fluides, de tissus, de corps rigides, etc.
- SHOPs - Opérateurs de shaders - pour représenter une douzaine de types d’ombrage différents pour plusieurs moteurs de rendu différents.
- ROPs - Opérateurs de rendu - pour la construction de réseaux représentant différents passes de rendu et dépendances de rendu.
- VOP - Opérateurs VEX - pour la construction de système nodal de l'un des types ci-dessus en utilisant une architecture SIMD hautement optimisée.
- TOP - Opérateurs de tâches[6]
Les opérateurs sont connectés entre eux dans des réseaux. Les données circulent, manipulées par chaque opérateur. Ces données pourraient représenter de la géométrie 3D, des images binaires, des particules, des dynamics, des algorithmes de shaders, de l'animation, de l'audio, ou une combinaison de ceux-ci. Cette architecture nodale (en) est similaire à celle utilisée par d'autres logiciels non nodaux tels que Shake (en) ou Nuke.
Les réseaux complexes peuvent être regroupés dans un seul nœud méta-opérateur qui se comporte comme une définition de classe et peut être instancié dans d'autres réseaux, à l'instar de tout nœud compilé. De cette façon, les utilisateurs peuvent créer leurs propres outils sophistiqués sans avoir besoin de connaissances en programmation. Ainsi, Houdini peut être considéré comme une boîte à outils de programmation visuelle hautement interactive qui rend la programmation plus accessible aux artistes.
L'ensemble d'outils de Houdini est principalement mis en œuvre en tant qu'opérateurs. Cela conduit à un apprentissage plus rapide que d'autres logiciels comparables. C'est une chose de savoir ce que font tous les nœuds - mais la clé dans Houdini consiste à comprendre comment représenter un résultat créatif souhaité sous la forme d'un réseau de nœuds. Les utilisateurs qui réussissent sont généralement familiarisés avec un vaste répertoire de réseaux (algorithmes) qui permettent d'atteindre des résultats créatifs standard. La surcharge liée à l'acquisition de ce répertoire d'algorithmes est compensée par la flexibilité artistique et algorithmique offerte par l'accès à des blocs de construction de niveau inférieur permettant de configurer des routines de création d'éléments. Dans les grandes productions, le développement d'un réseau procédural pour résoudre un problème de création d'élément spécifique rend l'automatisation triviale. De nombreux studios qui utilisent Houdini pour les effets spéciaux à grande échelle et les projets d'animation développent des bibliothèques de procédures pouvant être utilisées pour automatiser la génération de nombreux éléments de la production sans pratiquement aucune interaction entre artistes.
Houdini se distingue également par sa gamme d'opérateurs d'entrées-sorties pour les animateurs, dont les ports MIDI, la prise en charge du format RAW ou les connexions TCP, les services audio (comme les détections de phonèmes et de hauteurs intégrées), la position du curseur de la souris, etc. Il convient de noter la capacité de Houdini à travailler avec l'audio, y compris en synthèse sonore et musicale et outils de traitement du son 3D spatial. Ces opérateurs existent dans le contexte appelé CHOPs pour lequel SideFX a remporté un Prix de l'Académie des réalisations techniques en 2002.
VEX (Vector Expression) est l'un des langages internes de Houdini, ressemblant au RenderMan Shading Language (en). En utilisant VEX, un utilisateur peut développer des SOP, des POP, des shaders, etc, personnalisés. La mise en œuvre actuelle de VEX utilise un traitement de style SIMD.
Rendu
Houdini est fourni avec un moteur de rendu natif, Mantra, qui avait beaucoup de similitudes avec RenderMan dans sa première version. Le rendu en micropolygone est pris en charge, ce qui permet des opérations de déplacement de haute qualité ainsi que les modes de balayage par ligne et les lancers de rayons traditionnels. Les shaders sont scriptables et composés dans leur langage VEX, ou en utilisant des VOP; leur interface basée sur les nœuds pour la programmation de VEX. Mantra (comme Houdini lui-même) prend également en charge les nuages de points, dont l'application peut ressembler à celle d'une carte virtuelle dans Renderman. Cela permet de produire des interactions lumineuses plus complexes, telles que la diffusion sous la surface et l'occlusion ambiante, avec un temps de calcul réduit. Mantra peut effectuer des rendus volumiques extrêmement rapides, ainsi que du PBR (rendu physique réaliste), une technique qui tente de modéliser plus précisément les interactions physiques de la lumière et des matériaux.
Notes et références
- (en) Cet article est partiellement ou en totalité issu de l’article de Wikipédia en anglais intitulé « Houdini (software) » (voir la liste des auteurs).
- (en) « SideFX Releases Houdini 16 | SideFX », sur www.sidefx.com (consulté le )
- (en) « SideFX releases Houdini 16.5 | SideFX », sur www.sidefx.com (consulté le )
- (en) « H17 Launch Presentation | SideFX », sur www.sidefx.com (consulté le )
- (en) « Houdini 17.5 Released | SideFX », sur www.sidefx.com (consulté le )
- (en) « Houdini 18 Released | SideFX », sur www.sidefx.com (consulté le )
- https://vimeo.com/322225534
Liens externes
- SideFX Software, Makers of Houdini
- Orbolt Asset store (official)
- Derivative Inc., spin-off of Side Effects Software and maker of TouchDesigner.
- odforce – a Houdini artist community site
- 3Daet, A project-based Houdini site built by its users. Seems not to be active anymore.
- - CG WIKI / Joy of Vex, great resource for VEX, one of the programming languages used in Houdini.
- Houdini community page on Facebook
- PRISMS description and screenshots
- 30 minute interview with Kim Davidson about the history of Houdini
- Portail de l’imagerie numérique
- Portail du logiciel