Vous travaillerez au sein de l'équipe en charge du moteur de rendu 3D des applications natives C++, qui est un composant critique et central au sein de la 3DExperience platform.
Vos missions
- Concevoir et prototyper la couche d'intégration entre notre modèle de données de graphe de scène et le SDK NVIDIA PhysX, afin que la simulation physique devienne une fonctionnalité native de notre environnement de rendu/CAO plutôt qu'un outil externe. Ceci serait utile pour la simulation d'expérience et l'analyse en temps réel de l'usine Delmia.
Concrètement :
- Étudiez le modèle d'objet de base de PhysX et identifiez la correspondance la plus claire entre les nœuds/transformations/hiérarchies de notre graphe de scène et les acteurs et contraintes de PhysX.
- Définir comment les données spécifiques à la physique (masse, formes de collision, articulations, propriétés des matériaux, racines d'articulation) doivent être créées et stockées sur les nœuds de notre graphe de scène — en évaluant une approche basée sur un schéma/attribut similaire à UsdPhysics (schémas API attachés aux nœuds existants plutôt qu'une hiérarchie parallèle uniquement physique).
- Mettre en œuvre une boucle de synchronisation bidirectionnelle : graphe de scène → PhysX (création/mise à jour des acteurs, des formes et des articulations lorsque le graphe change) et PhysX → graphe de scène (réécriture des transformations simulées après chaque simulate() étape fetchResults() ) sans rompre la sémantique de la hiérarchie CAO existante (transformations locales vs globales, instanciation, mises à jour paramétriques).
- Traiter le graphe de scène pour aplatir les corps rigides et/ou composer les maillages de collision.
- Activez la simulation de corps rigides et mous accélérée par GPU grâce au partage d'objets GPU entre Stellar et PhysX.
- Fournir un prototype fonctionnel démontrant la dynamique des corps rigides, les articulations/contraintes et la réponse de collision de base pilotée directement par notre graphe de scène, ainsi qu'un rapport technique sur la conception du modèle de données choisi et ses compromis (flux de travail de création, performances, repli CPU/GPU, extensibilité aux corps mous/vêtements).
Vos Qualifications
Étudiant en cursus BAC+5 en école d’ingénieurs ou formation universitaire, vous êtes à la recherche d'un stage de 6 mois.
- Vous devez impérativement avoir une bonne connaissance du langage C++.
- Des connaissances supplémentaires en informatique graphique, en rendu 3D, en OpenGL ou en Vulkan seront également appréciées.
- Vous faites preuve d’autonomie et de rigueur, afin d'être en mesure de mener à bien un développement intégré dans une base de code importante et techniquement complexe.
Type de contrat : Stage conventionné seulement
Nous rejoindre c'est aussi
Intégrer une entreprise scientifique au cœur de l’innovation technologique, portée par une forte croissance depuis plus de 40 ans.
Principaux avantages et bénéfices :
- Environnement multiculturel
- Cadre de travail convivial axé sur le bien-être et la santé (salles de sport & de musique, conciergerie…)
- Engagement en faveur de la diversité et de l’inclusion
- Politique dynamique de développement de carrière : plan de formation, mobilités internes, etc
Inclusion statement
As a game-changer in sustainable technology and innovation, Dassault Systèmes is striving to build more inclusive and diverse teams across the globe. We believe that our people are our number one asset and we want all employees to feel empowered to bring their whole selves to work every day. It is our goal that our people feel a sense of pride and a passion for belonging. As a company leading change, it’s our responsibility to foster opportunities for all people to participate in a harmonized Workforce of the Future.