3DVIA Studio
3DVIA Studio est un logiciel de création d'Expériences 3D interactives, telles que des jeux vidéo ou des serious games.
Développé par | Dassault Systèmes |
---|---|
Dernière version | 2.14.391 () |
Environnement | Microsoft Windows |
Langues | Anglais |
Site web | 3dvia.com/studio |
Description du logiciel
3DVIA Studio est un environnement de développement 3D temps réel permettant la collaboration entre artistes et développeurs pour la création d'Expériences 3D interactives, qui seront publiées sur le site 3DVIA.com dans la section Expériences. Ce n'est pas un logiciel de Conception Assistée par Ordinateur, mais il permet d'importer des modèles 3D de logiciels comme Maya, 3DS Max, ou encore CATIA.
Puisqu'il permet le prototypage rapide d'applications, 3DVIA Studio fait également partie des logiciels CASE préconisés par la méthode RAD.
Studio est lié au site 3DVIA.com de manière bidirectionnelle. En effet, si les applications 3D développées dans Studio sont publiées sur 3DVIA.com, Studio est aussi capable d'importer des contenus provenant de ce même site :
Différentes méthodes de description des comportements
Comme Virtools, 3DVIA Studio permet à l'utilisateur de développer ses applications de deux manières complémentaires :
- La programmation Schématique, qui est constituée par l'assemblage de blocs de programmation (Building-Blocks)
- La programmation en VSL, un langage interprété avec une syntaxe proche du C++
Exemple de programmation VSL
On définit en début de code deux variables : un axe de rotation RotationAxis de vecteur (0,1,0), et une vitesse Speed de 3 rad/s.
{ vkKeyboardPtr keyboard = vkIODeviceManager::Keyboard(); vkVec3 RotationAxis = vkVec3(0,1,0); float Speed = 3 * iCtx.clock.deltaTime/1000; if (keyboard.IsKeyPressed(vkKeyboard::eLeft) == true) { Object.Rotate(RotationAxis, Speed); } else if (keyboard.IsKeyPressed(vkKeyboard::eRight) == true) { Object.Rotate(- RotationAxis, Speed); } return true; }
Le moteur physique
3DVIA Studio intègre un moteur physique développé par Dassault Systèmes. Celui-ci rend possible la « physicalisation » – selon le néologisme consacré – d'objets 3D présents dans une application. Au-delà de leur géométrie, ces objets physiques possèdent alors une masse, deviennent soumis à la gravité, sont capables de rentrer en collision avec d'autres objets physiques ou encore de rebondir plus ou moins sur d'autres objets suivant un coefficient choisi par l'utilisateur.