La société NVIDIA a publié la version du moteur de simulation des processus physiques PhysX 5.6 et l'outil associé PhysX SDK. Une nouvelle version de la bibliothèque de modélisation des fluides Flow 2.2.0 est également disponible. Le code du projet est distribué sous la licence BSD-3 et prend en charge les plateformes Linux, macOS, iOS, Windows et Android.
Bien que le PhysX SDK ait été publié avec le code source sous la licence BSD depuis 2018, le code a jusqu'à présent été publié avec une exception significative — le code du noyau de simulation (GPU simulation kernel) n'était pas inclus. Dans la mise à jour du SDK PhysX 5.6, NVIDIA a ouvert sous la licence BSD tout ce code et l'a inclus dans le SDK. Plus de 500 noyaux prêts à l'emploi pour CUDA sont disponibles, offrant des fonctionnalités telles que la dynamique des corps rigides, la simulation des fluides et la modélisation de la déformation des objets. De plus, l'accès à Flow GPU est ouvert avec une mise en œuvre complète des shaders de calcul sur GPU pour Flow SDK.
PhysX est l'un des moteurs physiques les plus populaires, utilisé pour traiter les interactions physiques dans presque mille jeux et faisant partie de nombreux moteurs de jeu, y compris Unreal Engine, Unity3D, AnvilNext, Stingray, Dunia 2 et REDengine. Le moteur est évolutif pour divers matériels, allant des smartphones aux stations de travail puissantes avec des CPU et GPU multicœurs, et permet d'utiliser les capacités du GPU pour accélérer le traitement des effets.
Parmi les domaines d'application de PhysX, on trouve la réalisation d'effets tels que les destructions, les explosions, les mouvements réalistes des personnages et des véhicules, la fumée tourbillonnante, les arbres se ployant sous le vent, l'eau s'écoulant et contournant les obstacles, les vêtements flottants et déchirés, ainsi que les collisions et interactions avec des corps rigides et souples. En plus du développement de jeux, le moteur peut également être utilisé dans des domaines tels que la synthèse de données pour la recherche en intelligence artificielle et l'entraînement de réseaux neuronaux, la création d'environnements réalistes pour l'entraînement des robots, la simulation de conditions réelles lors de l'essai de véhicules autonomes et de pilotes automatiques.
Source : opennet.ru
