IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

PhysX, le moteur physique de NVIDIA devient libre,
PhysX 4 se focalisera sur la précision de la simulation

Le , par dourouc05

58PARTAGES

17  0 
PhysX est le moteur physique de NVIDIA. Il a commencé son histoire comme NovodeX, en 2002, en Suède, avant d'être racheté par Ageia en 2004 : l'objectif était de fournir un accélérateur pour les calculs physiques (une carte PCI à intégrer dans son ordinateur), ce qui libère les autres processeurs lors de l'exécution d'un jeu. NVIDIA a alors racheté Ageia en 2008 : les accélérateurs physiques ont alors été remplacés par les cartes graphiques, devenues plus puissantes et plus programmables.

En 2015, NVIDIA a ouvert le code source de PhysX sur GitHub. Il fallait s'enregistrer sur le site de NVIDIA pour avoir accès au code sous une licence propriétaire. Depuis hier, ce code est vraiment libre : il est disponible sous licence BSD sans condition, toujours sur GitHub. Certes, le dépôt public n'est pas celui de développement, mais la situation s'améliore franchement d'un point de vue libriste. Les autres modules physiques de GameWorks (comme NvCloth, Blast ou Flow) ne sont pas concernés : ils restent sous une licence propriétaire, même s'il suffit de s'enregistrer pour y avoir accès. De même, le code pour les consoles (Xbox One, PS 4 et Switch) n'est pas libéré.

PhysX 4.0 sera aussi concerné par cette libération du code, lors de sa sortie (prévue le 20 décembre). Comme annoncé lors de la GDC 2018, cette version se focalise sur la précision de la simulation, de telle sorte que le moteur physique ne soit pas qu'utile dans les jeux. Dans les nouvelles fonctionnalités, on compte un nouveau solveur, TGS (temporal Gauss-Seidel), pour toutes les articulations et jointures. La robustesse de cette méthode est notamment due au fait que les contraintes sont recalculées à chaque itération. Toujours dans les jointures, l'adjonction des coordonnées réduites augmente fortement la stabilité numérique.

Au niveau de la performance, de nouvelles méthodes de filtrage ont été introduites pour la cinématique et la statique. Une nouvelle hiérarchie de volumes englobants sert à accélérer les requêtes dans les scènes qui comportent un grand nombre d'objets simulés.
NVIDIA a aussi produit une vidéo qui démontre les prouesses de cette nouvelle version, notamment en la comparant à PhysX 3.4. La scène sur le jeu d'échecs vaut le détour : on y voit un bras robotisé simulé par PhysX 4 parfaitement déplacer des pièces, tandis que celui simulé par PhysX 3.4 renverse un grand nombre de pièces, à cause du manque de stabilité de sa simulation.


Source : NVIDIA announces PhysX SDK 4.0, makes engine open-source under BSD-3 license, NVIDIA Extends PhysX for High Fidelity Simulations, Goes Open Source.

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Bousk
Rédacteur/Modérateur https://www.developpez.com
Le 04/12/2018 à 17:54
Citation Envoyé par Steinvikel Voir le message
Je ne suis pas sûr de comprendre. Est-ce qu'il faut comprendre que la partie du code de PhysX dédié à Xbox One, PS 4 et Switch, ne sont pas inclus dans la partie de PhysX couvert sous BSD 2 clauses... et par conséquent que PhysX est publié sous une double licence ?
Tout à fait.
Le code des consoles n'est jamais fournie. Il faut des autorisations des constructeurs et il faut prouver que tu as ces autorisations pour qu'ils te fournissent l'implémentation des plateformes concernées.
3  0 
Avatar de dourouc05
Responsable Qt & Livres https://www.developpez.com
Le 20/12/2018 à 23:26
Le code de PhysX 4 est maintenant disponible en ligne, sans besoin de s'inscrire, comme prévu. Comme attendu, il ne s'agit pas du dépôt de développement, mais c'est néanmoins un bon pas en avant : n'importe qui pourra modifier le code de PhysX et le redistribuer sans problème (sous licence BSD… ou autre, donc). NVIDIA n'a pas indiqué si les contributions externes étaient encouragées ou si elles seront simplement ignorées.

Dépôt sur GitHub

Guide de l'utilisateur
Documentation de l'API
1  0 
Avatar de Steinvikel
Membre expert https://www.developpez.com
Le 04/12/2018 à 16:55
Pourquoi aurait-il livré un hypothétique atout face à un concurrent pour qui ce type de démarche est monnaie courante ? --> aucun impacte.
Il le livre aujourd'hui car il montre une belle image par son apparente générosité, permettant une démarcation favorable dans les esprits, durant une période ou sa concurrence est mise à mal.

Citation Envoyé par dourouc05 Voir le message
PhysX est le moteur physique de NVIDIA. Il a commencé son histoire comme NovodeX, en 2002, en Suède, avant d'être racheté par Ageia en 2004 : l'objectif était de fournir un accélérateur pour les calculs physiques (une carte PCI à intégrer dans son ordinateur), ce qui libère les autres processeurs lors de l'exécution d'un jeu. NVIDIA a alors racheté Ageia en 2008
Ça fait du bien d'avoir des articles un peu plus fiable qu'ailleurs.
ex : "La techno PhysX remonte à 2005, avec sa création par Ageia. L’idée consistait à offrir une carte PCIe d’accélération dédiée pour gérer
en matériel les effets physiques d’un moteur 3D, finalement racheté par NVIDIA en 2008."

Citation Envoyé par dourouc05 Voir le message
Les autres modules physiques de GameWorks (comme NvCloth, Blast ou Flow) ne sont pas concernés : ils restent sous une licence propriétaire, même s'il suffit de s'enregistrer pour y avoir accès. De même, le code pour les consoles (Xbox One, PS 4 et Switch) n'est pas libéré.
Je ne suis pas sûr de comprendre. Est-ce qu'il faut comprendre que la partie du code de PhysX dédié à Xbox One, PS 4 et Switch, ne sont pas inclus dans la partie de PhysX couvert sous BSD 2 clauses... et par conséquent que PhysX est publié sous une double licence ?
0  0 
Avatar de darklinux
Membre extrêmement actif https://www.developpez.com
Le 04/12/2018 à 7:02
Depuis le temps , Nvidia aurait faire cela il y a bien longtemps
0  1