Précédent   Forum des professionnels en informatique > Applications > Développement 2D, 3D et Jeux > API graphiques > DirectX
DirectX Forum d'entraide sur le développement avec DirectX. Avant de poster -> FAQ DirectX
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 21/06/2011, 12h28   #1
Membre à l'essai
 
Homme
Technicien Qualité Logiciel
Inscription : janvier 2010
Messages : 39
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Technicien Qualité Logiciel
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2010
Messages : 39
Points : 23
Points : 23
Par défaut Directx dans une WinForm

Bonjour à tous,

Ma question va peut être vous paraître bête, mais je voulais savoir s'il était possible d'inclure un composant Directx dans une WinForm.

Pour vous donnez un exemple, je me suis amusé à créer un éditeur de carte en 2D, que je l'ai réalisé en VB.net.

Aujourd'hui je voudrais utiliser Directx pour la partie graphique, car actuellement j'utilise le GUI, donc je me suis intéressé à Directx en lisant des tutos et en faisant des exercices.

Donc voilà, est-il possible d'avoir une WinForm qui va me permettre d'avoir tous les outils de l'éditeur, puis dans cette form une "image" gérer en Directx ??
Car pour l'instant je sais juste créer une fenêtre Directx et afficher des sprites ou dessiner des formes à l'intérieur.

Je vous remercie.
Cryo.
CryoCid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/06/2011, 16h55   #2
Invité régulier
 
Homme Quentin Ventura
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Nom : Homme Quentin Ventura
Localisation : Canada

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 8
Points : 8
Réponse courte: Oui

:p

Réponse longue, mais peut être incorrecte (c'est la méthode que j'utilise actuellement)

Toutes tes fonctions / variables directx tu les balances dans une classe qui hérite de Windows.Form.Panel (par exemple)

Ensuite pour la description de ta SwapChain:

Code :
1
2
3
4
5
6
7
8
 
var description = new SwapChainDescription()
{
       ....
                OutputHandle = Handle,
                IsWindowed = false,
       ....
 };
Ta classe MyPanel devra avoir une fonction Draw qui sera appelée pour dessiner l'affichage

Et quelque part dans ton application, tu dois avoir une boucle Application.(...) je crois ... dedans tu fais appel a ta fonction Draw()
Du genre pour moi avec SlimDX:
Code :
1
2
3
4
5
 
MessagePump.Run(this, () =>
{
	MyPanel.Draw();
});
J'ai fait ça un peu en bidouillant, donc je sais pas si c'est efficace ni sémantiquement correct, mais ça fonctionne ...
qventura est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/06/2011, 15h50   #3
Membre à l'essai
 
Homme
Technicien Qualité Logiciel
Inscription : janvier 2010
Messages : 39
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Technicien Qualité Logiciel
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : janvier 2010
Messages : 39
Points : 23
Points : 23
Bonjour qventura,

Je vous remercie de votre réponse et encore plus pour votre exemple car du coup en effet ça fonctionne nikel comme ça.

Bonne journée.
CryoCid est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/06/2011, 17h43   #4
Invité régulier
 
Homme Quentin Ventura
Inscription : juin 2011
Messages : 30
Détails du profil
Informations personnelles :
Nom : Homme Quentin Ventura
Localisation : Canada

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : juin 2011
Messages : 30
Points : 8
Points : 8
Attention tout de même !
Chez moi mon petit logiciel (de merde, on peut le dire) me bouffe 50% de ma charge CPU ... Soit le total sur un des coeur du processeur en fait !
Doit y'avoir un petit problème dans ce que je fais En tout cas heureux d'avoir pu aider
qventura est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/11/2011, 14h46   #5
Invité de passage
 
Homme
Joueur
Inscription : novembre 2011
Messages : 3
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Joueur
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : novembre 2011
Messages : 3
Points : 1
Points : 1
Par défaut Directx dans une WinForm

Il faut télécharger sur le site de Microsoft le SDK de DirectX for Managed ou quelque chose comme ça. Ensuite, cliquer-droit sur le projet et aller sur référence. Là, il faut cliquer sur Ajouter un nouvelle référence. Dans l'onglet .NET, cliquer sur Microsoft.DirectX ou quelque chose comme ça et faire OK.

Et voilà !
jtruc34 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h47.


 
 
 
 
Partenaires

Hébergement Web