Domanda

Vorrei sapere come creare un gioco fps con SDL lib?

Ci sono libri che spiegano con esempi?

È stato utile?

Soluzione

questo vince per la maggior parte delle domande aperte. Potresti letteralmente scrivere un libro. Ma accontentiamoci di puntare nella giusta direzione ...

Primo passo, avrai bisogno di buone capacità di debug per un progetto come questo. Codice di ritiro completo di Steve McConnell. Leggi tutto. Il tempo investito pagherà per sé più di ogni altra cosa che potresti leggere / sperimentare.

Metti le mani su un codice sorgente di alcuni giochi. Qualsiasi gioco. Assicurati di vedere qualcosa di semplice prima di vedere qualcosa di grande e complesso, e tieni a mente quando guardi qualsiasi codice di gioco che potrebbero aver avuto una squadra combinata DOVETE più tempo di quanto tu abbia mai avuto. Il punto in questo è vedere la struttura del codice.

Ottieni un riferimento per la matematica 3D, non devi essere QUELLO in profondità, ma dovrai conoscere cose come i prodotti a punti avanti e indietro, essere in grado di capire come creare la matrice per la tua fotocamera nel mondo ecc. (anche se stai scrivendo lo 0% del codice di rendering)

(modifica) Ecco un ottimo libro sulla matematica 3D Mathematics per la programmazione di giochi 3D e la computer grafica, seconda edizione (serie di sviluppo di giochi) Questo non è il tipo che impari al college, è più come un incrocio tra trigoni e concetti pratici più avanzati: come creare una cassetta degli attrezzi per te di fisica semplice, rilevamento efficiente delle collisioni, ecc.

Dovrai sapere qualcosa sul rendering e sulle pipeline. SDL ti dà un vantaggio, ma assicurati di comprendere i concetti di ciò che sta facendo.

Leggi la progettazione pratica del sistema. I vari sistemi dovranno essere collegati. Pensaci bene. Il tuo sistema può essere semplicemente un bene in C o in C ++, è il PENSIERO messo nel modo in cui fluiranno i tuoi dati / controllo che conta, NON quanto perfettamente emuli i modelli di progettazione (anche se questi sono molto utili e anche grossolani)

Fondamenti di AI, non "reale" AI, ma AI funzionale; c'è una grande differenza. Le macchine a stati sono ottime per iniziare e sufficienti per un semplice FPS.

Ulteriori informazioni su stima e pianificazione. Non avrai tempo di fare tutto ciò che vorresti fare per creare correttamente un FPS. Dovrai eseguire sia il triage che l'apprendimento del triage; sono 2 cose separate, essendo quest'ultima difficile. L'esperienza è il miglior insegnante qui di massima. (anche se il leggendario McConnell ha anche un libro su questo)

Avere un sistema per inserire il tuo gameplay nel tuo livello. Se sei SOLO come programmatore, la soluzione migliore è scrivere un plug-in per un programma di editing già esistente come 3DS Max. Consiglio vivamente Max a Maya per un programmatore. Lo script Maya è carino, ma è più orientato verso non programmatori intelligenti. Trovo 3DS Max a pensare di più sulla falsariga di come un programmatore vorrebbe creare e modificare il tuo mondo.

Puoi trascorrere ANNI a creare strumenti che ti consentano di fare ciò nel modo giusto, quindi vuoi fare le cose in modo tale da poterle modificare in modo rapido e preciso Se crei il tuo editor, incorporalo nel tuo mondo di gioco. Se il tuo mondo non è VERAMENTE 3D e vuoi raggiungere velocemente molti livelli puoi salvare i tuoi dati di livello come qualcosa del genere, il che ti farà risparmiare molto tempo Dove X è un muro, le altre lettere sono oggetti di gioco che un semplice parser può tradurre in oggetti di gioco e coordinate del mondo

 xxxxxxxxxxxxxxxxxxxxxxxx
 xx..........P..........x
 xxxxxxx...........I....x
 xR....xxx...........E..x
 xx.................0xxxx
 xxxxxxxxxxxxxxxxxxxxxxxx

Ma tutto dipende dal tuo gioco. Il mio punto è che dovrai ricorrere a "codifica del ghetto" il modo in cui ottieni i dati di gioco nel tuo mondo è molto importante e devi pensare a qualcosa che sia veloce da implementare E veloce con cui lavorare.

E ciò che si riduce è qual è il tuo obiettivo qui? Se vuoi imparare a codificare qualcosa nel modo assolutamente giusto, aspettati di passare la maggior parte del tuo tempo a leggere il codice che sembrava decente un mese fa, ma ora che

Altri suggerimenti

Scarica le fonti di terremoto 3 su fileshack e impara da esse.

Sebbene il post molto lungo sia prezioso nel lungo periodo, ritengo che non fornisca la motivazione istantanea adeguata per far apparire le cose sullo schermo. Ecco alcuni fatti, insieme alla mia opinione

-SDL è una libreria grafica 2D, non puoi scrivere un FPS in 2D, quindi devi andare con una libreria 3D, DirectX o openGL

-SDL ha la capacità di " sync " con openGL, usandolo per la grafica, ma non c'è molto aiuto online per quell'argomento

Ti suggerisco di andare su Lazyfoo.net, che è una risorsa per principianti assolutamente incredibile per la programmazione di giochi con SDL, ti mostra come disegnare sullo schermo, ma ti insegna anche come applicare questo ai giochi di programmazione. Dopo aver attraversato questo, sarai in grado di creare un clone di tetris o la maggior parte degli altri giochi di tipo 2D

Dopo questo, sarai pronto per il 3D (è molto più complesso, richiede una migliore comprensione della matematica e richiede molto più codice per fare cose più semplici) se vai con openGL, dai un'occhiata ai Tutorial di NeHe, loro stai attualmente lavorando su un nuovo set, usando SDL con openGL, perché i tutorial più vecchi, sebbene preziosi, sono codificati piuttosto male e usano l'API windows (win32)

tieni presente che lo sviluppo del gioco è una delle programmazioni più impegnative e gratificanti che incontrerai, quindi buona fortuna

Sebbene non siano specifici per SDL, i NeHe i tutorial di OpenGL sono un ottimo punto di partenza per apprendere come imparare fare 3D.

Se questo è il tuo primo gioco, probabilmente vorrai puntare più in basso di un FPS. Scrivere un semplice gioco Tetris 2D usando SDL ti insegnerà tutto ciò che devi sapere su quella libreria.

Praticamente tutto ciò che dice nel TItle i "Trucchi dei Guru della programmazione del gioco" ti mostrerà come realizzare un gioco FPS. LeMothe li adora.

Modifica: dimenticato quei titoli.

Ho trovato questo sito qualche tempo fa, quando stavo giocando con SDL , tu troverai così programmi di esempio che puoi scaricare qui

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top