Scelta di una tecnologia per il tuo gioco per Windows 10

Sono molti i linguaggi di programmazione e le tecnologie grafiche disponibili per i giochi per Windows 10. Il percorso scelto dipende dal tipo di gioco che vuoi sviluppare, dall'esperienza e le preferenze dello studio di sviluppo per cui lavori e dai requisiti funzionali specifici del tuo gioco. Userai C#, C++ o JavaScript? DirectX, XAML o HTML5?

Approfondisci l'argomento per effettuare la scelta migliore per il tuo gioco.

Scegli una tecnologia

DirectX

Microsoft DirectX è la scelta consigliata per ottenere le massime prestazioni per elementi grafici e multimediali 2D e 3D. Direct3D 12 una novità di Windows 10, offre le prestazioni di un'API di tipo console ed è più veloce ed efficiente che mai. Il tuo gioco potrà usare appieno l'hardware grafico moderno e supportare più oggetti, scene più elaborate ed effetti avanzati. Direct3D 12 offre il supporto della grafica ottimizzata su tutti i dispositivi Windows 10, inclusi PC e Xbox One. Se vuoi usare la pipeline grafica già nota di Direct3D 11, potrai comunque trarre vantaggio dalle nuove funzionalità di rendering e ottimizzazione aggiunte a Direct3D 11.3. Se invece sei uno sviluppatore fedele all'API di Windows desktop con le radici in Win32, questa opzione è comunque ancora disponibile in Windows 10.

L'ampia gamma di funzionalità e la stretta integrazione con la piattaforma di DirectX offrono la potenza e le prestazioni richieste dai giochi con i requisiti più elevati.

XAML

XAML è un linguaggio dichiarativo e di facile utilizzo per l'interfaccia utente con comode funzionalità come animazioni, storyboard, data binding, grafica vettoriale scalabile (SVG), ridimensionamento dinamico e grafici delle scene. XAML è una buona scelta per l'interfaccia utente, i menu, gli sprite e la grafica 2D dei giochi. Per facilitare il layout dell'interfaccia utente, XAML è compatibile con strumenti di progettazione e sviluppo come Expression Blend e Microsoft Visual Studio. XAML viene usato comunemente con C#, ma anche C++ è una buona scelta se è il tuo linguaggio preferito oppure se il tuo gioco ha requisiti elevati per la CPU.

HTML 5

HTML (HyperText Markup Language) è un linguaggio di markup dell'interfaccia utente comune usato per pagine Web, app e rich client. Nei giochi per Windows è possibile usare HTML5 come livello di presentazione completo con le funzionalità note di HTML, l'accesso a Universal Windows Platform e il supporto di funzionalità Web moderne come AppCache, Web Worker, canvas, trascinamento della selezione, programmazione asincrona e SVG. Dietro le quinte, il rendering HTML sfrutta la potenza dell'accelerazione hardware DirectX e puoi così ottenere comunque i vantaggi a livello di prestazioni di DirectX senza scrivere codice aggiuntivo. HTML5 è una buona scelta se sei esperto di sviluppo Web, stai convertendo un gioco Web o vuoi usare un linguaggio e livelli grafici più accessibili rispetto ad altre scelte. HTML5 viene usato con JavaScript, ma supporta anche la chiamata di componenti creati con C# o C++/CX.

JavaScript

JavaScript è un linguaggio di scripting dinamico usato per le applicazioni Web e rich client moderne.

Le app scritte in Windows JavaScript possono accedere alle potenti funzionalità di Universal Windows Platform in modo semplice e intuitivo, come metodi e proprietà delle classi JavaScript orientate agli oggetti. JavaScript è una buona scelta se vieni dall'ambiente di sviluppo Web e hai già familiarità con JavaScript oppure vuoi usare le librerie HTML5, CSS, WinJS o JavaScript. Per XAML, scegli invece C# o C++/CX. Per DirectX, scegli C++/CX.

C++

C++/CX è un linguaggio ad alte prestazioni e basso overhead che offre le grandi potenzialità derivanti dalla combinazione di velocità, compatibilità e accesso alla piattaforma. Con C++/CX è facile usare tutte le interessanti funzionalità per i giochi in Windows 10, inclusi DirectX e Xbox Live. Puoi anche riutilizzare codice e librerie C++ esistenti. C++/CX consente di creare codice nativo veloce, senza l'overhead di Garbage Collection, e questo significa buone prestazioni e minore consumo energetico per il tuo gioco, con conseguente maggiore durata della batteria. Puoi usare C++/CX con DirectX o XAML oppure creare un gioco che usa entrambi in combinazione.

C#

C# (pronunciato "C sharp") è un linguaggio moderno e innovativo, semplice, potente, indipendente dai tipi e orientato agli oggetti. C# consente lo sviluppo rapido, pur avendo la familiarità ed espressività dei linguaggi in stile C. Anche se semplice, C# offre numerose funzionalità avanzate come il polimorfismo, i delegati, le funzioni lambda, le chiusure, i metodi iteratori, la covarianza e le espressioni LINQ (Language-Integrated Query). C# è una scelta eccellente per XAML, se vuoi avviare rapidamente lo sviluppo del tuo gioco oppure se hai esperienze precedenti con C#. C# viene usato principalmente con XAML, quindi se vuoi usare DirectX scegli invece C++ oppure scrivi parte del gioco come componente C++ che interagisce con DirectX.

Uso combinato delle tecnologie grafiche

L'infrastruttura DXGI (DirectX Graphics Infrastructure) Microsoft offre interoperabilità e compatibilità per più tecnologie grafiche. Per la grafica ad alte prestazioni puoi usare in combinazione XAML e DirectX, ovvero XAML per i menu e altri elementi semplici dell'interfaccia utente e DirectX per il rendering di scene 2D e 3D complesse. DXGI supporta inoltre la compatibilità tra Direct2D, Direct3D, DirectWrite, DirectCompute e Microsoft Media Foundation.

Uso combinato dei linguaggi con i componenti Windows Runtime

Con Universal Windows Platform è facile combinare componenti scritti in linguaggi diversi. Puoi creare componenti di Windows Runtime in C++, C# o Visual Basic e poi chiamarli da JavaScript, C#, C++ o Visual Basic. Si tratta di un metodo efficace per programmare parti del tuo gioco nel linguaggio di tua scelta. I componenti consentono anche di usare librerie esterne disponibili solo in un linguaggio specifico, nonché di usare codice legacy già disponibile.

Motori di gioco

L'uso di un motore di gioco può velocizzare lo sviluppo e facilitare l'uso di nuove tecnologie come DirectX 12.
Unity

Supporto di DirectX 12 in Unity 5 Unity 5 supporterà DirectX 12 e le prestazioni e l'efficienza di Direct3D 12 saranno disponibili per la piattaforma di sviluppo Unity. Sfrutta appieno i vantaggi della pipeline grafica interamente progettata per utilizzare al meglio più core e il moderno hardware grafico. Con Unity 5 e DirectX 12 puoi aspettarti frequenze dei fotogrammi maggiori, una migliore durata della batteria e grafica di grandissimo impatto.

Unity 5 è la nuova generazione della pluripremiata piattaforma di sviluppo per la creazione di giochi 2D e 3D ed esperienze interattive. Con Unity 5 ottieni incredibili nuove opportunità di esprimere la tua creatività artistica, funzionalità grafiche avanzate e maggiore efficienza.

Unreal Engine

Unreal Engine 4 è una famiglia completa di strumenti di sviluppo per tutti i tipi di giochi e sviluppatori. Unreal Engine è scelto dagli sviluppatori di giochi in tutto il mondo, sia per i giochi per dispositivi mobili che per i giochi con maggiori requisiti per console e PC. I partecipanti al programma per l'accesso in anteprima a DirectX 12 che sottoscrivono Unreal Engine 4 possono ottenere l'accesso a un progetto di sviluppo di Unreal Engine 4.4 che supporta DirectX 12.

Consumi migliori, prestazioni migliori: il tuo gioco in DirectX 12

Direct3D 12 rende possibili nuovi miglioramenti delle prestazioni per il tuo gioco in Windows 10. Scopri come progettare il tuo motore di gioco in modo da ottenere risultati ottimali per riduzione dell'overhead della CPU, miglioramento dell'efficienza della GPU e maggiore stabilità della frequenza dei fotogrammi grazie alla nuova API Direct3D 12. Informazioni sui concetti di base per la creazione di un motore di gioco ad alte prestazioni ed efficiente in Direct3D 12 e indicazioni su dove trovare le fonti migliori per approfondire l'argomento.

Guarda questa relazione sullo sviluppo di GDC 2015

Crea un gioco per Windows 10

Per iniziare

I download, gli strumenti e le informazioni che ti servono per iniziare a sviluppare un gioco per Windows 10.

Progetta

Raccolte e linee guida per trovare informazioni e ispirazione per la progettazione.

Sviluppa

Una raccolta completa di documentazione e informazioni tecniche per lo sviluppo per Windows 10.

Pubblica

Programmi e collaborazioni per facilitare la pubblicazione del gioco in Windows Store, per telefoni, PC e Xbox One.

La pagina è stata utile?
Altro feedback?
Grazie! Il tuo feedback è importante.