2008-10-29 14 views
1

Je regarde un nouveau projet où les approches Native et Managed semblent être une bonne idée. Ceci est une application de bureau Windows qui devrait supporter une interface MDI. La zone client utilisera largement Direct3D. Les développeurs sur le projet sont également qualifiés sur C#, C++/CLI et MFC.Projet MDI Direct3D: MFC ou .NET?

MFC Avantages:

  • Doc/Voir l'architecture
  • La plupart Direct3D ressources en ligne utilisent encore C++

code managé Avantages:

  • Le .NET Framework
  • C#

Que puis-je ajouter aux listes ci-dessus? Ne brûlez pas ça. Deux listes. Juste ajouter à eux.

Note: J'ai de très bonnes raisons (à faire avec l'IDE et le débogage) de ne pas utiliser le mode mixte. Alors comptez ça.

Répondre

2

Pourquoi ne pas utiliser les deux?

Vous pouvez écrire l'interface utilisateur (formulaires) en utilisant C#/VB.NET et rendre la fenêtre en utilisant C++.

Fondamentalement tout ce que vous devez faire est de passer le HWND (handle de fenêtre) du C# au C++ et initialiser le C++ en utilisant cette valeur.

Vous pouvez voir un exemple sur mon blog: How-to Render managed (.NET) form using native DirectX

1

Cela ne s'ajoute pas directement à l'une ou l'autre de ces listes, mais la manière «recommandée» de faire de la 3D avec .NET utilise actuellement XNA - Managed DirectX est en cours de désapprobation.

Editer: Bien sûr, WPF 3D est aussi une option! Oublié cela:}

+0

Woah! Ce que vous avez dit à propos de XNA est une nouvelle pour moi. Des pointeurs? –

+0

http://en.wikipedia.org/wiki/Microsoft_XNA, à une estimation;) – moobaa

+0

Nah. Pointers pour savoir pourquoi MDX est dépréciée en faveur de XNA? –

Questions connexes