2010-07-22 15 views
6

Ho lavorato in C++ in ambienti embedded per un certo numero di anni, sviluppando applicazioni di navigazione. C'è un'azienda di giochi nella mia città natale che mi piace, ma non ho esperienza nello sviluppo di giochi. Potresti considerare un'app di navigazione come un tipo di gioco, a seconda di chi stai scappando.Sono uno sviluppatore C++ esperto - come posso entrare nel settore dei giochi?

La mia domanda è: quali misure devo intraprendere per entrare nel settore? È una cattiva idea entrare nel settore in questa fase (ho 30 anni)?

+2

Perché non vieni con questa compagnia? Ti dicono meglio che qualcuno qui. – alxx

+1

http://gamedev.stackexchange.com/ potrebbe essere un posto più appropriato per pubblicare questa domanda – tenpn

risposta

11

Essere 30 non importa, è possibile inserire il settore dei giochi a qualsiasi età a patto di avere la guida e abilità.

  • iniziare a leggere su argomenti di gioco, e siti web di sviluppo del gioco (gamedev, Gamasutra etc.)
  • avviare i giochi di scrittura. I cloni dei giochi che ti piacciono, le tue idee originali, le demo tecniche, tutto ciò a cui puoi puntare e dire "l'ho scritto, e nel modo in cui ho imparato queste cose e risolto questi problemi".
  • Se esiste un'area specifica di interesse, AI, Rendering, Frontend, Strumenti & Pipeline, Audio, concentrarsi sulla creazione di giochi/demo/progetti di esempio che ti sfidano in quell'area. "Sì, l'ho fatto" suona molto meglio in un'intervista di "sì, ne ho sentito parlare".
  • Conoscere persone del settore se è possibile, attraverso forum online, amici di amici, ecc ... Un buon contatto può fare di più per le vostre possibilità di settimane di codifica demo o mesi di invio riprende. Le società di giochi possono avere case aperte o fiere del lavoro.
  • I lavori "entry level" nello sviluppo di giochi sono probabilmente Frontend o Tools. Se hai fatto app di navigazione, suoni del genere potrebbero essere adatti a te. Se questo ha incluso più lavoro di basso livello e ottimizzazione su piattaforme embedded, potresti anche considerare i ruoli di sistema.
+0

Buon consiglio, grazie. –

+0

Questi sono ottimi suggerimenti. Sottolineerei senz'altro il punto 2. Scrivi i tuoi giochi. (Buono) Le società di videogiochi vogliono persone onestamente appassionate di giochi. Poche cose dimostrano la tua passione meglio dei progetti intrapresi nel tuo tempo libero. – Quintus

3

Ti suggerisco di iniziare a provare a scrivere alcuni giochi nel tuo tempo libero. Avere delle dimostrazioni è sempre un buon inizio quando vai a un colloquio e ti darà alcuni spunti su quale sarà il tuo lavoro.

Gamedev.net ha un eccellente set di tutorial da utilizzare per ottenere un sacco di concetti di codifica del gioco.

Hanno qualche offerta di lavoro? Se è così, guarda ciò che chiedono nel CV e inizia ad educarti su quei concetti/tecnologie.

in contatto con loro e chiedere se hanno qualche posti di lavoro per un ingegnere software eccellente non può male neanche :)

+0

Le demo non faranno certamente del male, ma sarebbero più utili a un programmatore laureato o inesperto che cerca di farsi notare. – tenpn

+0

Se non hai mai lavorato nel game design, penserei che questo potrebbe essere un buon punto di partenza per imparare le basi comunque? –

1

"industria dei videogiochi" è una domanda ampia. Ci sono:

  1. AI programmazione
  2. grafica di programmazione.
  3. Programmazione del suono.
  4. Programmazione utensile.
  5. Scripting.
  6. Programmazione fisica.
  7. Programmazione di rete.

Probabilmente già puoi occuparti di # 7, # 5 e # 4.

Come per il resto, in genere si tratta di un qualche tipo di API, inoltre è necessaria un'ottima comprensione della matematica 3D (a meno che non si crei un gioco 2D, ovvero).

Per la matematica 3d non posso aiutarti. Ho raccolto informazioni in varie fonti non inglesi e la maggior parte di esse non sono più disponibili. Tuttavia, penso che this resource potrebbe contenere informazioni di interesse.

Per generale 3d informazioni grafica è necessario studiare DirectX SDK e NVIDIA SDK (sia DirectX e OpenGL), in più ci sono i libri OpenGL si deve leggere:
1. Francesco s Hill, "Computer grafica utilizzando OpenGL".
2. OpenGL programming guide aka "Red Book"
3. OpenGL shading language (aka "Orange Book")
4. E si potrebbe desiderare di dare un'occhiata a OpenGL reference manucal ("Blue Book")

Sto parlando di OpenGL perché, mentre non offre lo stesso livello di controllo per le risorse hardware, è è più facile da iniziare rispetto a DirectX e disponibile su una più ampia gamma di piattaforme e ha la stessa potenza di DirectX. Inoltre, GLSL non è molto diverso da HLSL (ad eccezione del fatto che GLSL non ha residui di programmazione di assembly shader come HLSL), abbastanza vicino al C++, quindi è relativamente facile iniziare.

Una cosa importante: se si desidera seriamente affrontare il 3D, è necessario essere in grado di immaginare facilmente le operazioni 3d nella propria mente. Cioè come ruotare l'oggetto, ridimensionare l'oggetto, spostare l'oggetto, che cosa significa matrice, quali sono i vettori di riflessione, come tagliare il poligono con i piani, come trovare l'intersezione di due mesh, ecc. e si dovrebbe avere almeno una comprensione di base di una cosa più complessa come operazioni booleane su mesh poligonali. Non ho idea di come sviluppare questa abilità (è molto vicino al "disegno meccanico"), ma senza di essa avrai molte difficoltà.

+0

Ho uno sfondo matematico (computer vision/elaborazione delle immagini), quindi la matematica 3d non mi mette troppo in mente. Più l'esperienza. Grazie per le informazioni. –

+0

+1 per i grandi libri OpenGL. Quelli sono i migliori per l'apprendimento effettivo dell'API. – Sanctus2099

1

Mettere semplicemente "esperto C++ dev" sul tuo CV probabilmente ti farà entrare. L'industria dei giochi (per lo meno nel Regno Unito) è dominata da laureati e programmatori inesperti - i più grandi o bruciano o vengono promossi alla direzione.

Un sacco di giochi di programmazione è solo programmazione - le competenze sono interamente trasferibili. E la tua esperienza con il software di navigazione probabilmente ti mette in un ruolo correlato all'IA.

Se qualcuno con il tuo background mi ha fatto domanda, farei certamente un'intervista.

2

Vedo che già accettato una risposta, ma mi butto in miei due centesimi:

Se l'azienda fa console (ad esempio Xbox360, PS3) o palmare (ad esempio DS, iPhone) giochi, si dovrebbe assolutamente enfatizza l'aspetto incorporato del tuo curriculum. Alcuni aneddoti su come hai ottimizzato il layout di memoria di una classe, o velocizzato un po 'di codice sfruttando una caratteristica oscura del chipset mostreranno che puoi pensare come un programmatore di console. Inoltre, se hai fatto qualche tipo di AI per le app di navigazione (ad esempio A *, Djikstra), è bene menzionarlo.

Alcune persone consigliano di scrivere giochi - questo non è un cattivo piano a lungo termine se si sa che si vuole entrare nel settore, ma non penso che dovresti lasciare che ti impedisca di candidarti a questa particolare azienda nel frattempo . Tuttavia, dovresti sicuramente prendere una copia di uno dei loro ultimi giochi, giocarci per alcune ore nel fine settimana e poter dire quello che ti è piaciuto.

Per quanto riguarda i siti Web, ho seguito la raccomandazione di Gamasutra, insieme a Kotaku.

Buona fortuna!

0

Bene, ho iniziato alle 16 con lo sviluppo del gioco (a pagamento). Cerca lavori su siti web. Crea i tuoi giochi a basso budget e poi pubblicali in un modo o nell'altro.
Se sei bravo, ti cercherò, altrimenti dovrai lottare un po '.

Problemi correlati