Xna dans WinForm [Résolu]

Signaler
Messages postés
16
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
4 février 2010
-
Messages postés
16
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
4 février 2010
-
Bonjour,
Je cherche à inclure dans une winform un panel contenant une fenetre XNA afin d'afficher un objet qui bouge en fonction de données recus et traités dans la winform.
Savez vous si c'est possible et comment le faire?
Merci.

3 réponses

Messages postés
16
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
4 février 2010

Ca y est j'ai trouvé comment faire!!!!!
http://creators.xna.com/en-US/sample/winforms_series2C'est propre et clair
Messages postés
1860
Date d'inscription
lundi 28 novembre 2005
Statut
Modérateur
Dernière intervention
14 février 2015
40
Salut

Je sais que c'est faisable d'intégrer un composant DirectX dans une Winform. Puisque XNA est basé sur DirectX, il doit très certainement y avoir moyen.

Si je me souviens bien, il fallait prendre un composant (Panel par exemple), et attacher la méthode Render() de DirectX à l'événement Paint de ton panel.

Krimog : while (!(succeed = try())) ;
- NON, "LE BAR" n'est PAS un langage de programmation ! -
Messages postés
16
Date d'inscription
lundi 11 décembre 2006
Statut
Membre
Dernière intervention
4 février 2010

Merci pour ton aide, finallement j'ai trouvé un lien qui m'éxplique comment faire :
http://www.ziggyware.com/readarticle.php?article_id=82

J'ai suivi les instruction ca fonctionne. Mais ce n'est ce qu'il y a de mieux, car ca n'utilise pas toutes les possibilités du xna. En effet par exemple, dans l'exemple il faut creer un timer pour rafraichir les données dans le Panel, c'est dommage car le XNA le prévoi automatiquement!!!

donc j'ai essayé de créer mon exemple moi même. J'ai créé une WinForm, et j'y ai mis un Panel. J'ai créé une WindowsGameLibrary.

ca compile très bien, mais quand il arrive à ca :
MyCubeTest =

new WindowsGameLibrary1.
Cube(
ref panel2);MyCubeTest.Run();

Il y a l'erreur sur le "Run()":
"Le démarrage d'une deuxième boucle de messages sur un seul thread n'est pas une opération valide. Utilisez Form.ShowDialog à la place."
je comprend car dans dans la winform il y a déjà un thread lancé :

Application

.Run(
new
Form1());

Savez vous comment faire pour quand même lancé mon appli ?
Merci par avance.