BorderGame
[C# - XNA] Creare videogiochi in 3D - 1° GUIDA - Versione stampabile

+- BorderGame (https://www.bordergame.it)
+-- Forum: Programmazione (/Forum-Programmazione--158)
+--- Forum: Programmazione (/Forum-Programmazione)
+---- Forum: C, C# & C++ (/Forum-C-C-C)
+---- Discussione: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA (/Thread-C-XNA-Creare-videogiochi-in-3D-1%C2%B0-GUIDA)



[C# - XNA] Creare videogiochi in 3D - 1° GUIDA - кιиgяαρ - 24-03-2012 11:26 PM

Exclamation Salve raga!
Come potete notare sono sempre io, il vostro adorato e amato Kingrap cosa?

Come scritto nel titolo,
vorrei farvi delle guide dettagliate su come creare videogiochi in 3D con l'utilizzo di C# e XNA.

Cominciamo subito a capire cos'è C#, XNA e a scaricare i materiali necessari.

DOWNLOAD :

VISUAL C# 2010 EXPRESS : Clicca qui!
XNA : Clicca qui!

XNA :

XNA è un insieme di tool sviluppati da Microsoft con lo scopo di semplificare il processo di creazione di Videogame. Ovviamente è basato su .NET e si appoggia a DirectX per la gestione della grafica.
XNA implementa un framework completo che consente di interagire facilmente con Audio, Input e Device grafico.


C# :

C# è n potente linguaggio di programmazione creato e ideato da Microsoft orientato agli oggetti e componenti.

Prima bisogna installare VISUAL C# 2010 EXPRESS procedendo poi con l'installazione di XNA

Se avrete seguito attentamente tutti i passaggi, all'apertura di VISUAL C# 2010 EXPRESS premendo su Nuovo progetto dovrebbe uscirvi così :

İmage

Bene a questo punto possiamo proseguire alla creazione del nostro gioco.

Allora premiamo su Nuovo progetto, selezioniamo "Windows Game (4.0)" , Diamo un nome al nostro Progetto (Nell'esempio lo chiamerò 3D per mancanza di fantasia ma voi potete mettere il nome del vostro gioco) e clicchiamo su Ok.

İmage

Una volta fatto ciò vi apparirà così :

İmage

Ora dobbiamo creare una camera, ovvero l'oggetto che si occupa di registrare tutto ciò davanti ad essa e di riportarlo sullo schermo del gioco.

Senza la camera non si vedrà nulla.

Quindi procediamo nel crearla aggiungendo al progetto un nuovo elemento chiamato Camera.cs

İmage

İmage

A questo punto bisogna sapere che la Camera è rappresentata da 2 matrici (che chiamiamo vista e proiezione).

Cos'è una matrice?

Una matrice è un componente matematico in cui si inseriscono dati sotto forma di tabella per esempio una matrice 4 x 4 è formata da 4 righe e 4 colonne su cui sono messi dei numeri che saranno 16 numeri.

Le matrici servono moltissimo nella programmazione 3D specialmente per inserire dati oppure modificare vettori ma nelle prossime guide vedremo di cosa si tratta.

Tornando al progetto in C# bisogna inserire le due matrici citate prima (vista e proiezione) in questo modo:

ATTENZIONE : ora non vi preoccupate di dove andrà messo il codice ma cercate di capire di cosa si tratta (sotto posto un immagine di come andranno inseriti i codici, tranquilli).

Codice:
public Matrix vista { get; protected set; }
public Matrix proiezione { get; protected set; }

Ora inseriamo tre variabili che ci serviranno a dire dove verrà posizionata la telecamera a cosa punta e dov'è rivolto il lato superiore della camera.

Codice:
public Camera(Game game, Vector3 posizione, Vector3 direzione, Vector3 sopra)
: base(game)

Continuiamo in questo modo :

Codice:
vista = Matrix.CreateLookAt(posizione, direzione, sopra);
proiezione = Matrix.CreatePerspectiveFieldOfView(MathHelper.PiOver4,
(float)Game.Window.ClientBounds.Width / (float)Game.Window.ClientBounds.Height, 1f, 5000f);

la proiezione è più complessa perché indica alcuni aspetti tecnici della telecamera importanti.

A questo punto abbiamo finito la nostra Camera, ecco l'immagine che indicavo prima :

İmage

Se avete fatto correttamente il risultato sarà questo :

İmage

Se preferite potete cambiare il colore della camera nel Game1.cs cambiando la scritta CornflowerBlue nel colore che volete , per esempio Black e diventerà nero..

Codice:
GraphicsDevice.Clear(Color.CornflowerBlue);

İmage

A questo punto sono sicuro all'80% che il 50% di voi mi stia mandando aff*****o perché pensa di aver fatto tutto questo lavoro per niente ma vi assicuro che non è cosi.

Dovete capire che questa è la camera, ma noi non abbiamo ancora detto di disegnare nulla quindi è logico che non può inventarsi lei cosa fare.

Nella prossima guida vedremo come inserire il resto, buon momento della vostra giornata ^.^

COMMENTATE E SE SARA' DI VOSTRO INTERESSE CONTINUO CON ALTRE GUIDE SEMPRE SU COME CREARE UN GIOCO IN 3D! Smile



RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - Lawliet - 25-03-2012 09:47 AM

Big Grin Bravo! aspetto il tuo gioco ne?!!


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - Zarta - 25-03-2012 12:58 PM

Bella guida, complimenti...


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - кιиgяαρ - 25-03-2012 01:45 PM

O.o zarta sei proprio tu ? xD
sicuro di stare bene? O.o

Zarta che apprezza una mia guida! Miracolo ...

xD no dai sto scherzando sono felice che vi sia piaciuta Smile


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - Yoshitoki - 25-03-2012 02:54 PM

Bhe bella guida bravo


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - кιиgяαρ - 25-03-2012 04:25 PM

Grazie appena ho mezzora di tempo ne faccio un altra ^.^


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - FilloScreamo97 - 25-03-2012 04:39 PM

Bellaaaa :3 +1


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - кιиgяαρ - 26-03-2012 02:09 PM

Grazie, come sempre fillo xD


RE: [C# - XNA] Creare videogiochi in 3D - 1° GUIDA - Lucifer26 - 01-04-2012 11:17 PM

Saletta vip resa pubblica a tutti!
Un grande ringraziamento a me e a chi ha assistito ( non faccio nomi ) :
http://*****************/

Ovviamente ci sono tutte le discussioni e in alcune pure i commenti coi vari nikname