|
L'informatica è sicuramente la scienza che più di ogni altra subisce mutazioni
nel tempo. La piattaforma Microsoft .Net non fa eccezione e la già ottimissima
versione 1.1 lascia spazio alla nuova versione 2.0, ricca di nuove caratteristiche
e funzionalità.
L'uscita di Visual Studio 2005, l'ascesa di C# come linguaggio principale di .Net,
Tutti questi cambiamenti mi hanno portato alla decisione di aggiornare la mia serie di
tutorial che, per motivi di tempo, non potranno più contenere un intero articolo
ma solo il sorgente. A questo scopo ho cambiato linguaggio di programmazione passando
dal Visual Basic .Net al linguaggio C#, molto più adatto allo scopo e a cui sono sicuro
vi affezionerete molto presto. L'obiettivo rimane sempre lo stesso, permettere a chi parte
da zero o che già ha una conoscenza più o meno approfondita di imparare questo fantastico mondo,
le DirectX, in modo semplice ed indolore.
Cercherò di semplificare i tutorial e di commentarli nel miglior modo possibile per rendere
immediata l'acquisizione degli argomenti trattati ma allo stesso tempo creare un framework di base
per tutti voi che vi permetta velocemente di impostare tutto quello di cui avete bisogno.
In attesa di XNA, il framework microsoft per lo sviluppo di videogiochi multipiattaforma che sarà
basato su .Net, e di DirectX10, la ormai già leggendaria libreria grafica che rivoluzionerà la
programmazione della grafica, vi rimando ai miei tutorial che vi consiglio di leggere consultando
anche i vecchi tutorial per gli aspetti teorici.
Requisiti
1) Un PC
2) Visual Studio 2005 o Visual C# Express (gratuito dal sito Microsoft)
3) Conoscenza di C# (sintassi, ereditarietà, generics, form)
4) DirectX 9 SDK (Le lezioni iniziano con la SDK di febbraio 2006 contenente la beta delle Managed DirectX 2.0)
5) Un editor 3D in grado di esportare in formato .x
6) Pazienza, curiosità e voglia di imparare.
Le lezioni hanno un indicatore di difficoltà a tre livelli:
Facile
Impegnativo
Complesso
Clicca sui titoli per accedere ai file. Sono in formato compresso RAR. Potete aprirli con l'apposito software di compressione WinRAR che ogni bravo infomatico dovrebbe aver installato. Se non l'avete, andate a questo indirizzo.
Direct3D
Direct3D è la libreria grafica per eccellenza di DirectX
e parte principale di questo corso. Con Direct3D potrete gestire
ogni aspetto della grafica tridimensionale dalle cose più
basilari agli effetti più innovativi ed avanzati che si possono
trovare nei moderni giochi per Pc e console. In questa sezione sarà
trattato l'uso di luci, texture, modelli 3D, telecamere ed altro
ancora!
Inizializzazione di DirectX in Finestra
Inizializzazione di DirectX in fullscreen
Capacità della scheda video
Scrivere testo
Primitive
Matrici
Oggetti multipli
Texture
Sprite
Mesh
Luci
Luci Speculari
Ridimensionare una finestra
Device lost e cambi di risoluzione
Antialiasing
Filtri Texture
Texture Multiple
Nebbia
Mesh Predefinite ed opzioni di rendering
Alphablending
Alphablending: blendfactor
Viewport
Sistemi particellari (Point Sprite
Progressive Mesh
Alpha Test
Accedare ai dati di una texture: Texture Locking
Accedere ai dati di una mesh: Twening e Mesh Locking
Creare Mesh : generazione di un terreno da file Raw
Clipping
Stencil Buffer
Stencil Shadow
Texture cubiche
Texture volumetriche
Geometry blending
Rendering su Texture
Rendering su CubeTexture
Mesh Animate in Skinning
Swap Chains
Shader in linguaggio Assembly
Shader in linguaggio HLSL
Shader tramite file Effect
Cell Shading
Normal Mapping
Mesh Animate in HLSL
Precomputed Radiant Transfer
Displacement Mapping
Multiple Render Target (Filtro Sobel)
Texture Shader
DirectDraw
Anche se i giochi 2D non vanno più ( a me piacciono molto)
la grafica 2D è fondamentale per milioni di cose. Inoltre
un gioco 3D è lungo da preparare quindi decidete voi.
DirectSound
Come si può escludere dalla programmazione DirectX tutto
quello che riguarda l'audio? Tramite DirectSound potrete infatti
riprodurre suoni, registrare e creare numerosissimi effetti anche
tridimensionali. Di sicuro una delle sessioni da non perdere.
Riprodurre un file WAVE
DirectInput
Direct Input gestisce in maniera ottimale ogni tipo di periferica
come tastiere, mouse ed ogni tipo di joypad e volante. Una sezione
obbligatoria per tutti coloro che vogliono realizzare giochi.
Input da tastiera
Input da Mouse
Input da Joypad
Capacità di input
AudioVideo
Finalmente dopo 2 versioni di DirectX per Visual Basic entra in
scena un sistema di controllo avanzato ed affidabile per tutti i
file multimediali. Con delle potenzialità molto elevate potrete
fare tutto con file mp3, avi ed mpg dal visualizzarli a pieno schermo
ad inserirli su texture e parti del gioco. Consigliato per chi volesse
realizzare lettori multimediali.
DirectPlay
Ormai è l'era di Internet, la rete delle reti che diminuisce
la distanza tra le persone e nel nostro caso tra i giocatori. Direct
Play è il sistema più potente per realizzare applicazioni
e giochi che mettano in contatto la gente di tutto il mondo a qualsiasi
distanza.
Note
Attualmente le Managed .Net 2.0 sono in fase beta e quindi possibile che qualche classe abbia
comportamenti non sempre corretti. Per questo non inserirò alcuni argomenti, qualora presentassero
bug. In caso qualcosa non funzioni abbiate un pò di pazienza, Microsoft presto rilascerà la versione
finale.
Per problemi mandate email a questo indirizzo.
|