CGSI3
Messages postés416Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention 7 janvier 2018
-
28 mai 2011 à 20:50
CGSI3
Messages postés416Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention 7 janvier 2018
-
6 févr. 2012 à 10:59
Bonjour a tous,
Je cherche un moteur Physique pour mon appli 3D.
Beaucoups sont issues du C/C++ (newton, ODE, ...) et tres peu sont adaptable au Vb.Net.
Je n'ai pour l'instant trouvé aucun wrapper.
Avez vous une idée ?
Merci pour votre attention CGSI3
CGSI3
Messages postés416Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention 7 janvier 20181 29 mai 2011 à 18:40
ReBonjour a tous,
Après près d'une semaine de recherche ...
Voici seulement 2 Liens qui vous seront utiles si choisissez la
voie VB.Net pour vos animations.
ODE est un vieux moteur toujours actif qui a le mérite d'être petit mais suffisant pour débuter.
(Gestion de la gravitée, des collisions, des joints entres membres ...)
Mogre est quand a lui "Beaucoup plus complet" mais également plus compliqué ....
Ce n'est pas, pour l'instant, la voie que je retiens, mais certains d'entre vous aimerons peut être s'y frotter.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018211 4 févr. 2012 à 16:47
Bonjour,
programmé en C# utilisable en Vb.Net
certes (les dll) , mais : où sont donc les descriptifs des dll , pour les utiliser en VB.Net ?
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Vous n’avez pas trouvé la réponse que vous recherchez ?
CGSI3
Messages postés416Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention 7 janvier 20181 6 févr. 2012 à 09:47
Bonjour,
Oups désolé, vous m'avez surpris dans mon monologue ...
Je ne pensais pas intéresser qqun avec cela, je vais donc faire un petit code avec des cubes pour illustrer une partie de l'utilisation de cette DLL et la déposer.
Pour ma part je suis reparti des sources fournies par l'auteur et que j'ai traduit avec un convertisseur en Vb.Net. ( juste pour la comprendre, on peut surement la retranscrire entièrement en Vb.Net 2010 ... même si la conversion n'est pas parfaite)
Perso je ne peux pas tout seul et je dois donc utiliser la DLL en C#
Ensuite j'ai essayé de comprendre l'ensemble et je suis arrivé a une petite démo perso 3D assez sympathique qui fonctionne.
(Collision & Gravitée)
Je vous prepare une petite source simple pour illustrer tout cela.
CGSI3
CGSI3
Messages postés416Date d'inscriptionvendredi 22 février 2008StatutMembreDernière intervention 7 janvier 20181 6 févr. 2012 à 10:59
Bonjour,
Je vous en faut une présentation rapide
Utiliser la DLL Jitter.DLL (version 0.1.7.0) a placer sous le repertoire /bin/debug de votre projet et a mettre en référence.
Création d'un monde Jitter
Public World As Jitter.World
Collision = New Jitter.Collision.CollisionSystemSAP
World = New Jitter.World(Collision)
Définir une gravitée
World.Gravity = New JVector(0, -9.81, 0)
Ajouter un objet (exemple ici un objet caméra possédant la propriétée RigidBody de Jitter
Public _WorldPosition As New Jitter.Dynamics.RigidBody(New Jitter.Collision.Shapes.SphereShape(5))
=> A ce niveau plusieurs types d'objets sont utilisable BoxShape, SphereShape, etc...
On ajoute cet objet dans notre monde comme ceci:
World.AddBody(_Camera._WorldPosition)
Définir et récupérer le positionnement et l'orientation de l'objet
Translation ou positionnement dans le monde 3D d'un objet
Dim Pos as Jitter.LinearMath.JVector
Pos.x=10 : Pos.y=10 : Pos.z=10
_WorldPosition.Position= Pos
Donner une vitesse dans les 3 dimensions (Même principe que le positionnement)
Dim V As Jitter.LinearMath.JVector = _WorldPosition.LinearVelocity
Récupérer l'Orientation de l'objets (avec une matrice de rotation 3*3)
Dim JM As Jitter.LinearMath.JMatrix = _WorldPosition.Orientation
Indique si un objet est statique dans l'espace
_WorldPosition.IsStatic = True
Donne l'état de notre monde 0.1 seconde + tard a effectuer dans un Timer
World.Step(0.1, True)
Je suis surpris que Vb.Net2010 ne permettent pas a la DLL de fonctionner, perso la version 2008 ne pose aucun pb. Dites moi ce qu'il en est.
CGSI3