2016-04-25 12 views
6

mi hanno un compito:UWP e DirectX

'Seconda componente deve essere scritto in C++ e deve essere un montaggio/componente UWP che verrà utilizzato dalla prima parte del compito. Deve essere un componente DirectX che disegna in SwapChain con uno sfondo trasparente. Il contenuto deve essere un'animazione 2D che deve essere associata alla posizione corrente del mouse. Il contenuto deve essere controllabile tramite un insieme di metodi pubblici.

Il componente DirectX deve essere posizionato sopra la GUI C# in modo che funga da sovrapposizione. Imposta overlay trasparente agli eventi, non deve acquisire alcun evento GUI e interferire in altro modo con l'app C#. Usa l'host C# per inviare eventi del mouse e modifica del contenuto al livello DX. '

Ma non ho idea di come combinare UWP e DirectX. Ho già installato la parte dell'app UWP C# e quali sono le prospettive?

Sarò grato per qualsiasi risposta e idee.

+0

guardare lì: http://www.unknowncheats.me/forum/c-and-c-/84234-external-directx-overlay-translated.html - c'è un semplice esempio di come scrivere a qualsiasi regione del dispositivo directx. Informazioni sulla cattura degli eventi del mouse: è necessario ascoltare WM_MOUSE *** tipi di eventi nella funzione WinMain. – VitaliyK

risposta

1

È necessario includere un SwapChainPanel o SwapChainBackgroundPanel di controllo nel file XAML. Questa superficie verrà utilizzata per disegnare il tuo contenuto DirectX. Si dispone di un campione uwp predefinito in Modello Visual C++ denominato DirectX 11 e XAML App. Può aiutarti a capire l'impianto idraulico, ma c'è solo il codice C++ su questa soluzione.

+0

Descrivono XAML + C# code-behind con un controllo SwapChainPanel o SwapChainBackgroundPanel che può essere reso con DirectX. Non esiste il supporto C# incorporato per DirectX, ma è possibile utilizzare un assembly di terze parti come [SharpDX] (http://sharpdx.org/). Il modello di Visual C++ integrato "DirectX 11 e XAML App (Universal Windows)" fa questo per C++ code-behind, ma non c'è un modello incorporato per C# code-behind combinato con DirectX. –

+0

Si potrebbe dare un'occhiata a [Win2D] (https://github.com/Microsoft/Win2D) che è un wrapper C# per Direct2D, e in particolare [Win2D Samples] (https://github.com/ Repository Microsoft/Win2D-Samples). –

1

MonoGame!

È un framework di gioco, basato su XNA4 che funziona su UWP, tra una miriade di altre piattaforme. Puoi scegliere i campioni per imparare quello che ti serve.

http://www.monogame.net/