Je comprends qu'il y a plusieurs façons de mélanger XNA et WPF dans la même application. Je trouve attrayant d'utiliser WPF pour tous les trucs GUI et HUD dans mes jeux XNA. Quelqu'un at-il une expérience pratique sur comment cette approche fonctionne dans la vie réelle en utilisant .NET 3.5 SP1? Des pièges (tels que le "airspace problem")? Un indice sur ce qui fonctionne le mieux?À quel point WPF se mélange-t-il avec XNA dans la réalité?
Répondre
Il y a un ajout dans 3.5 SP1 qui permet une meilleure interaction entre DirectX et WPF (D3DImage), et un moyen d'y arriver est via XNA.
Voici quelques détails:
http://jmorrill.hjtcentral.com/Default.aspx?tabid=428&EntryID=259
Thamir Khason présenté une excellente séance à propos de WPF/XNA/Silverlight chez Tech-ed ... Voici ses diapositives: http://blogs.microsoft.co.il/blogs/tamir/archive/2008/04/14/my-teched-08-presentation-slides-download.aspx
PS. C'était assez impressionnant de voir ... il avait un jeu qui courait sur la Xbox. Sur son ordinateur de bureau en utilisant WPF pour héberger XNA et ons son téléphone portable en utilisant Silverlight tous jouer les uns contre les autres !!!
Personnellement, je déconseille d'essayer de faire cette intégration. Je sais ce que vous allez faire ... la facilité de définir des éléments GUI/HUD dans WPF l'emporte largement sur la tentative de faire la même chose dans XNA tout simplement vieux. Cependant, pensez raisonnablement au temps que vous passerez à essayer d'activer ce scénario par rapport à ce que vous économiseriez si vous faisiez tout simplement "nativement" dans XNA. En outre (et cela ne peut pas être un problème pour vous), WPF est pas pris en charge sur le xbox ou zune ... alors vous seriez-vous limiterez :-)
intégration XNA est élevé sur notre liste de choses à ajouter à WPF donc nous cherchons à cela pour les futures versions. Restez à l'écoute (sur le blog de GregSc) pour les détails dès qu'ils sont disponibles.
Ian Ellison-Taylor
En savoir plus sur cette here
Hé, je sais que c'est un certain temps après avoir affiché, mais si vous êtes toujours à la recherche d'une solution WPF pour XNA vous pouvez garder un oeil sur http://red-badger.com/product. La solution XPF place wpf dans XNA. Alors jetez un oeil, pour le moment il est libre car il est en version bêta mais cela va changer car ils ajoutent plus de composants
Ce n'est pas vraiment ce que je cherche. Il n'utilise pas WPF. Au lieu de cela, il utilise son propre ensemble de classes et de contrôles qui imitent juste les parties de WPF. – bitbonk
Vous voulez utiliser un D3DImage, mais D3DImage fonctionne différemment sur Windows XP vs Windows Vista ou 7.
Sur Vista ou 7, vous créez un renderTarget NON verrouillable à utiliser avec le D3DImage & vous utilisez un périphérique Direct3D9EX. Sur XP, vous créez un renderTarget verrouillable à utiliser avec le D3DImage & utilisez un périphérique Direct3D9 normal.
Egalement utilisé pour l'utilisation de XNA, il serait peut-être préférable d'utiliser SlimDX si vous le faites simplement pour le PC. SlimDX ne manque pas toutes les fonctionnalités de Direct3D & prend en charge Direct3D 9, 10 & 11.
Peut-être, les choses ont changé depuis? –