OpenVDB : structure de données volumétriques creuses pour production cinématographique
OpenVDB - Structure et outils de données de volumes clairsemés. Il a été développé par DreamWorks Animation pour être utilisé dans les applications volumétriques généralement rencontrées dans la production de longs métrages.
En bref
- De quoi s’agit-il ?
- Bibliothèque C++ open-source issue de DreamWorks Animation pour le stockage et la manipulation efficaces de données volumétriques creuses sur grilles 3D.
- À qui s’adresse-t-il ?
- OpenVDB est une bibliothèque C++ Apache 2.0 conçue pour le stockage de volumes creux. Le dépôt est la branche trunk de développement, contenant les dernières fonctionnalités mais moins testée que les versions de production.
- Puis-je l’utiliser commercialement ?
- Oui. Apache-2.0 est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
- Est-il encore maintenu ?
- Oui. Les derniers commits datent d’il y a 5 jours.
- En quel langage est-il écrit ?
- Principalement C++, d’après les statistiques de langage de GitHub.
Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.
ANALYSE OPEN SOURCE APPROFONDIE
Bibliothèque C++ pour données volumétriques creuses en film d'animation
OpenVDB est une bibliothèque C++ open-source comprenant une structure de données hiérarchique novel et une suite complète d'outils pour le stockage et la manipulation efficaces de données volumétriques creuses discrétisées sur des grilles tridimensionnelles. Le README indique qu'elle a été développée par DreamWorks Animation pour une utilisation dans des applications volumétriques généralement rencontrées dans la production de films de long métrage. Selon les métadonnées du dépôt, le projet compte 3 390 étoiles, 770 forks et 237 issues ouvertes. La langue principale est C++, et la licence est Apache 2.0. Le site officiel se trouve à openvdb.org.
Dépôt trunk développement vs versions production testées
Le README déclare que le dépôt GitHub héberge la branche trunk (master) du développement OpenVDB. Cela implique que c'est la version publique la plus récente avec les dernières fonctionnalités et corrections de bugs. Le README ajoute cependant que cela signifie aussi qu'elle n'a pas subi beaucoup de tests et est généralement moins stable que les versions de production. Les utilisateurs qui cherchent une stabilité accrue doivent consulter les versions officielles sur GitHub Releases. La branche master est utilisée pour le développement actif, tandis que les versions numérotées (tags) représentent des points de stabilité documentés. Les trois dernières versions listées sont 13.0.0 (novembre 2025), 12.1.1 (septembre 2025) et 12.1.0 (août 2025).
Dépendances principales et installation Linux/macOS
Pour compiler OpenVDB, le README documente les dépendances obligatoires. Sous Linux, utilisez apt-get pour installer libboost-iostreams-dev, libtbb-dev et libblosc-dev. Sous macOS, utilisez Homebrew pour installer boost, tbb et c-blosc. Le processus de compilation consiste à cloner le dépôt, créer un répertoire build, exécuter cmake .. (cmake sans drapeaux), puis make -j4 && make install. Le README note que si votre distribution n'a pas les versions requises, envisagez d'utiliser apt pinning. Aucune instruction de test post-installation n'est fournie dans l'extrait du README.
Installation Windows avec vcpkg et Visual Studio
Sous Windows, le README recommande 64 bits et exige Visual Studio (pour la chaîne d'outils MSVC C++), CMake et optionnellement vcpkg. Avant de compiler, utilisez vcpkg pour installer les dépendances : vcpkg install zlib:x64-windows, vcpkg install blosc:x64-windows, vcpkg install tbb:x64-windows, vcpkg install boost-iostreams:x64-windows et vcpkg install boost-interprocess:x64-windows. La compilation utilise cmake avec le fichier toolchain vcpkg, puis cmake --build pour la construction. Le README avertit que les commandes n'ont été testées que pour les systèmes 64 bits et recommande de définir VCPKG_DEFAULT_TRIPLET=x64-windows pour utiliser les bibliothèques 64 bits par défaut.
Composants supplémentaires : OpenVDB AX et NanoVDB
Au-delà de la bibliothèque principale, OpenVDB offre des composants supplémentaires. OpenVDB AX dépend de la bibliothèque OpenVDB principale et fournit un langage de script pour les opérations volumétriques. NanoVDB peut être construit avec ou sans support OpenVDB et offre une version optimisée GPU. Le README documente les variables CMake pour activer ces composants : OPENVDB_BUILD_AX pour OpenVDB AX, OPENVDB_BUILD_NANOVDB pour NanoVDB, et NANOVDB_USE_OPENVDB pour utiliser OpenVDB dans NanoVDB. Le README note que NanoVDB possède ses propres instructions de compilation ; les utilisateurs doivent consulter la documentation NanoVDB_HowToBuild.html pour les détails.
Licence Apache 2.0 et migration depuis Mozilla Public License
OpenVDB est publié sous licence Apache License, Version 2.0, une licence open-source libre développée et maintenue par l'Apache Software Foundation. Le README inclut un avertissement : les marques commerciales de tout contributeur au projet ne peuvent pas être utilisées en association avec le projet sans la permission expresse du contributeur. Le README ajoute une note importante : OpenVDB a complété une relicensification de Mozilla Public License Version 2.0 vers Apache License Version 2.0. Les détails complets se trouvent dans le fichier RE-LICENSE_NOTE.txt du dépôt.
Contribution et ressources de documentation
OpenVDB accueille les contributions au projet ; le README renvoie aux directives de contribution (fichier CONTRIBUTING.md) pour les détails. Le dépôt comprend une page de démarrage rapide pour le développeur qui couvre l'installation de base de la bibliothèque principale, avec une note selon laquelle d'autres composants (module Python, OpenVDB AX, NanoVDB, exécutables) peuvent nécessiter des dépendances supplémentaires. La documentation complète de compilation se trouve sur openvdb.org/documentation/doxygen/build.html. Les utilisateurs peuvent aussi accéder aux formulaires de discussion (forum GitHub), à la documentation Doxygen complète, aux versions officielles et au canal Slack (slack.aswf.io) pour obtenir du support.
État du dépôt et intégration dans l'industrie
Le dépôt est actif, avec un dernier push le 2025-11-04. Les badges CI/CD montrent l'état de compilation pour OpenVDB, AX, Nano et les intégrations Houdini. Le projet a complété une certification CII (Core Infrastructure Initiative), indiquant un certain niveau de meilleures pratiques de développement. Le dépôt ne précise pas les critères de production, les SLA, ou les engagements de maintenance commerciale ; les utilisateurs production doivent consulter les versions officielles et prévoir une période de test avant adoption.
Conclusion éditoriale
OpenVDB est une bibliothèque C++ Apache 2.0 conçue pour le stockage de volumes creux. Le dépôt est la branche trunk de développement, contenant les dernières fonctionnalités mais moins testée que les versions de production. Pour évaluer son utilité, consultez la documentation de compilation sur openvdb.org pour votre plateforme cible (Linux, macOS, Windows), vérifiez les dépendances requises (Boost, TBB, c-blosc), et testez la compilation dans votre environnement avant intégration. Le README n'énonce pas de benchmarks de performance, de garanties de disponibilité en production, ou de critères de certification.
Notes de la communauté