Che cos'è lo "sviluppo di strumenti?"


18

Ho cercato diversi lavori nel settore dei giochi e molti dei lavori che ho visto pubblicizzati riguardano una posizione di "Tool Developer". Non so cosa sia in realtà.

Qualcuno potrebbe spiegare di cosa si tratta per me, per favore? E se qualcuno avesse dei collegamenti a materiale che mi aiutasse a capirlo di più, sarebbe molto apprezzato.

Risposte:


22

Una posizione di programmazione degli strumenti è generalmente quella di essere un moltiplicatore di forza per il resto del team di sviluppo. La natura esatta del lavoro varierà ovviamente ampiamente da studio a studio, a seconda delle esigenze individuali di quella società.

Principalmente, tuttavia, verrai incaricato di creare software che sarebbe stato utilizzato da altri sviluppatori all'interno dello studio e il ruolo di quel software potrebbe essere quello di:

  • risorse o contenuti dell'autore (livelli, modelli, oggetti, incantesimi, qualunque cosa) direttamente per il gioco
  • fungere da ponte tra il gioco del tuo studio o costruire pipeline e altri strumenti per la creazione di contenuti (ad esempio, esportatori di Maya).
  • far parte di processi di compilazione automatizzati che trasformano le risorse del gioco sorgente nei loro moduli compilati finali per la distribuzione con il gioco al dettaglio
  • assistere gli sviluppatori nelle attività quotidiane di plateplate, come la sincronizzazione con particolari build del gioco o la transizione tra i rami

È anche importante notare che in alcuni studi questa è considerata una posizione estremamente entry-level, perché finisce per comportare per lo più un lavoro grugnito sconsiderato (spostare i pulsanti su un'interfaccia utente per un designer, forse). In altri, è esattamente l'opposto, poiché comporta la cura e l'alimentazione di condutture di costruzione e distribuzione mission-critical per MMO di spedizione live.

La gamma di responsabilità e aspettative è ampia (anche se in realtà, questo vale per quasi tutte le posizioni nel settore), ma l'obiettivo generale è generalmente lo stesso: tenere d'occhio eventuali strozzature nell'organizzazione, quindi acquistare, costruire o riqualificare fino a quando non hai ottimizzato il collo di bottiglia.


17

In breve: sviluppare programmi usati da altri per creare qualcosa (ad es. Strumenti).

Un esempio popolare e semplice sarebbe un editor di livelli per un gioco.

Ma questo potrebbe essere molto più dietro le quinte, come alcuni programmi di tracciamento delle versioni, un tracker di bug, forum, alcuni controlli per verificare che il contenuto sia senza errori, ecc.


6

Un programmatore di strumenti è un ruolo specializzato, che sta diventando essenziale per la produzione. Sei essenzialmente qualcuno che osserva la pipeline utilizzata per creare un gioco e trova modi per ottimizzare il processo.

Come programmatore di strumenti per diversi giochi a tripla A, ho fatto:

  • Crea nuovi editor, ad esempio livello, grafico e suono, che i designer possono utilizzare.
  • Estendi, correggi i bug o aggiungi funzionalità agli editor esistenti, ad esempio in Unreal 3 e 4.
  • Scrittura di script e plug-in per pacchetti di creazione di contenuti digitali (DCC) come Maya e Photoshop, ad esempio importazione / esportazione di animazioni, gestione dei contenuti, ecc.
  • Integrazione del controllo del codice sorgente (Perforce) negli strumenti.
  • Modifica strumenti open source per adattarsi a una pipeline.
  • Verifica del contenuto.
  • Padroneggiare il gioco finale per console.
  • Costruire sistema e integrazione continua.
  • Strumenti di importazione ed esportazione di localizzazione.
  • Occasionalmente scrivi nuove funzionalità del motore e strumenti di supporto.
  • Database gestiti con miliardi di record, ad esempio dati sulle prestazioni.
  • Cloud computing / applicazioni per server back-end (AWS)
  • ... eccetera

In alcuni studi, ad esempio indipendenti, si prevede che ogni programmatore possa scrivere strumenti per aiutare la produzione del gioco.

Di seguito sono riportati alcuni link a IGDA Tools SIG e al blog Toolsmiths (International Game Developers - Tools Special Interest Group).


1

Scenario 1: Flash e AS3

A volte è necessario creare alcune funzionalità che ti aiuteranno maggiormente nella pipeline di produzione del gioco. Per "strumento" significa qualcosa che può aiutarti ad accelerare il tuo processo di sviluppo.

Ad esempio Flash fondamentalmente non fornisce un perfetto rilevamento delle collisioni di pixel. Quindi potresti scriverne uno tu stesso o provare a cercare su google se un ragazzo lo ha fatto prima e metterlo come codice open source. Una raccolta di codici sorgente in cartelle organizzate in modo adeguato ti aiuterà a lungo termine. Qualcosa come la tua biblioteca.

Scenario 2 Unità

Allo stesso modo puoi usare unityscript (versione di unità di javascript) o c # per scrivere componenti, piccoli piccoli strumenti come ad esempio B Spline, curve di Bezier. Cose che non vengono come default nell'unità. Scrivine uno tu stesso o prendine uno da lì in Internet. Vengono in versioni gratuite / a pagamento.


1
Nella mia esperienza, uno "sviluppatore di strumenti" è assunto principalmente per gli studi AAA, che non hai affrontato affatto nei tuoi "scenari".
Stephan van den Heuvel,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.