SlimDX Ansichtsfenster in WPF-Steuerelemente
Wechsel bin ich von WinForms/WPF XNA/SlimDX, weil:
- a) alle Vorteile von WPF gegenüber
WinForms (aber lernen, Kurve = AUA!) - b) ich würde gern mehrere
SlimDX Fenstern befestigt, um Platten.
XNA hat 1 "Spiel" - Bildschirm. - c, last and least) DirectX 10 Unterstützung
Alle meine vorherigen XNA-code ist in C#. Ich habe ein Problem, herauszufinden, wie man den port bei SlimDX und WPF auf einem hohen Niveau. Ich habe gesucht wie verrückt. Die nächsten, die ich gefunden habe sind:
1) http://www.gamedev.net/community/forums/topic.asp?topic_id=507941
Viele Artikel weisen auf diese Diskussion, aber es ist unvollständig und ich kann nicht herausfinden, XAML, und ich bekomme Gerätefehler nach dem anbringen alle _slimDXDevice und Window1 Ereignisse ausgelassen wurden.
2) http://www.codeproject.com/KB/WPF/D3DImage.aspx
In diesem Artikel angenommen, dass der Benutzer die Portierung von C++. Ich bin portieren von XNA-code, der sehr nah an MDX-code.
Könnte ich zu dem Punkt, wo ich habe eine WPF-Formular mit einer benutzerdefinierten SlimDX getrieben viewport, war nur eine Blaue box, ich könnte von dort aus gehen. In XNA-ich gerendert viele verschiedene RenderTargets und platziert Sie auf dem ganzen Bildschirm, jetzt will ich Sie steuert. Aber zuerst nur 1 blue box! 😀
Irgendwelche Ideen? Ich fühle, dass diese ist entweder einfach oder, dass es eine "cookie-cutter" code, der mir fehlt. Sehr geschätzt!
- Wir haben ein Beispiel demonstriert dies in SlimDX, aber ich glaube nicht, dass es überprüft wird, in dem SVN-repository, und ich kann momentan nicht in Kontakt mit dem Entwickler, der es in seiner Arbeitskopie. Diese Frage ist irgendwie vage. Bitten Sie um Hilfe mit dem Gerät, das Fehler? Wenn ja, könntest du Sie posten?
- Ich kann sehen, wie es ist eine vage Frage. Ich bin nicht zu Fragen, über bestimmte Fehler, meistens bin ich auf der Suche für eine sehr einfache und high-level-Lösung für das WPF/SlimDX mit C#. Ich kann nicht scheinen, um es zu finden, dokumentiert oder ein Beispiel überall.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kann man sich die Probe nun. Es ist nur geprüft worden sind, in unser repository, so dass Sie müssen verwenden Sie SVN, um es zu bekommen (oder warten, bis wir versenden die Feb-2010-Version):
http://code.google.com/p/slimdx/source/detail?r=1356
D3DImage ist die Klasse, die Sie verwenden möchten. Obwohl die codeproject tutorial C++, es ist sehr zutreffend, SlimDX und WPF.
Alles, was Sie zu tun haben, mit Ihrem SlimDX, ist ausführen von code normalerweise, aber NICHT Vorhanden(...) auf Ihrem Gerät oder der swap-chain. An der Stelle, wo Sie würde ein Geschenk(...), tun ein D3DImage.SetBackBuffer(...) und senden Sie Ihre SlimDX-Oberfläche ComPointer Eigenschaft. Dann tun D3DImage.AddDirect(...) und Sie haben jetzt D3D zusammengesetzt, die in WPF.
Also, stellen Sie sicher, Sie erstellen eine IDirect3DDevice9Ex oder sonst Ihre Leistung wird schrecklich sein in nichts, aber XP!
Ich vor kurzem war Herumspielen mit D3DImage und SlimDX und fand es nicht zu schwierig, um es arbeiten (mit DirextX9). Ich habe einige code auf meinem home pc, die poste ich später, aber es ist ziemlich ähnlich wie der code in die links.
Ich war nie in der Lage, um es arbeiten mit einer höheren directx-version, obwohl. Jeremia hat eine schöne blog-post über die Verwendung von directx9-Gerät als eine Verbindung zwischen directx 10/11/d2d und die D3DImage, aber ich konnte es nicht funktioniert mit Slimdx. Ich hatte nicht viel Mühe, aber als directx9 haben, was ich brauchte, es zu tun, und ich wollte, dass es unter XP funktioniert.