Salta al contenuto principale
Massively Fun Un piccolo studio indie che crea giochi stravaganti e sorprendenti, svelando esattamente come li realizziamo.

Alcuni link su questo sito sono link di affiliazione: se acquisti tramite essi, potremmo ricevere una commissione senza alcun costo aggiuntivo per te. Questo non influisce mai sui nostri consigli. Consulta la nostra informativa sugli affiliati per i dettagli. Informativa sulle affiliazioni.

Seattle Game Dev JS: Uno sguardo al passato e un passo avanti.

Ed è con questa pietra miliare in mente che vorremmo dire un sentito ringraziamento a tutti i nostri membri, sponsor e a chiunque abbia contribuito a rendere i nostri incontri quelle fantastiche pepite di conoscenza che sono!

Quest’anno sembra essere ancora migliore del precedente. Abbiamo iniziato con un’interruzione di corrente, seguita da un’incredibile ripresa e una presentazione (nonostante l’assenza di corrente!) sulle ottimizzazioni HTML5, tenuta dal team mobile di Double Down. Mai un momento di noia!

L’anno scorso il nostro gruppo è passato da 0 a 380 membri, un traguardo enorme! La crew di Game Dev JS è una comunità diversificata composta da sviluppatori, artisti, gamer, program manager, amministratori di rete e appassionati di JS di ogni tipo. Il nostro membro sviluppatore più giovane ha solo 13 anni! Mantenendo sempre i contenuti aggiornati, i relatori vivaci e i membri coinvolti, siamo stati in grado di costruire una community solida: non avremmo potuto farcela senza di voi!

Se sei interessato a JS, il meetup è un’ottima occasione per divertirsi, imparare qualcosa di nuovo, condividere le proprie conoscenze e incontrare personaggi molto interessanti.

Key Takeaways

  • Seattle Game Dev JS è cresciuta da zero a 380 membri nel suo primo anno, basandosi su un mix di talk, lightning demo e happy hour.
  • La programmazione del gruppo per il 2012 ha coperto l’intero stack HTML5: rendering, trucchi con il canvas, audio, wrapper nativi, Windows 8 e architettura server node.js.
  • Una comunità come questa funziona perché rimane deliberatamente interdisciplinare: sviluppatori, artisti, PM e amministratori di rete tutti in un’unica stanza.
  • Il modo migliore per ottenere valore da un meetup è presentarsi, fare domande ed eventualmente presentare qualcosa a propria volta.
  • La pianificazione per il 2013 è aperta: vogliamo le vostre idee sugli argomenti, suggerimenti sulla sede e proposte per i relatori.

Perché è importante un gruppo di sviluppo di giochi JavaScript

Quando abbiamo fondato questo gruppo, “sviluppo di giochi HTML5” era ancora una frase che faceva storcere il naso a molte persone. L’elemento <canvas> era agli inizi, le prestazioni del browser erano incoerenti e l’idea di poter pubblicare un gioco reale — non una demo tecnica — in JavaScript era trattata come una novità piuttosto che come una piattaforma.

Un anno dopo, quella conversazione è cambiata completamente. Il motivo per cui un meetup locale è importante in un campo come questo è che la documentazione è in ritardo rispetto alla realtà.

Correlato: — Grafica, strumenti e modelli già pronti che vengono inseriti direttamente nel tuo progetto Unity.

I post sui blog descrivono cosa funzionava sei mesi fa. I talk delle conferenze sono rifiniti al punto da diventare astratti. Ciò che realmente fa progredire uno sviluppatore è sedersi accanto a qualcuno che ha risolto esattamente il tuo problema la settimana scorsa: un canvas che scatta su un dispositivo specifico, un elemento audio che non si sblocca su mobile, una pipeline di build che si blocca con un bundle di asset di grandi dimensioni.

Questo è il vuoto che Game Dev JS colma. Non è una serie di lezioni. È una stanza piena di persone che si trovano tutte a metà di un problema e confrontano le proprie note.

Cosa abbiamo trattato nel 2012

Ecco alcuni degli argomenti trattati durante l’anno:

Se stai facendo acquisti: — Motore HTML5 senza codice basato su browser che esporta su Web, dispositivi mobili e desktop.

  • Javascript Game Development: an Overview – Grant Goodale, Massively Fun
  • Retained Mode Graphics Libraries – Kevin Moore, Pixel Lab
  • Stupid Canvas Tricks – Dean Hudson, Massively Fun
  • HTML5 port of Zepto Labs’ Cut the Rope – Joel Fillmore, Pixel Lab
  • Challenges of building a native UIWebView application around an HTML5 webapp – Jeff Close, Adam Hardtke, Sean Stringer e Nate Vaughn, DDI
  • Native wrapper technology: CocoonJS – Iker Jamardo, Ludei
  • HTML5 game development for Windows 8 – Giorgio Sardo, Microsoft
  • Game engine design around node.js and express.js – Dean Hudson e Mason Browne, Massively Fun
  • Co+Pilot: a tool built using Javascript and a JQuery like syntax to allow users to make native apps – Myron Millin e David Whitlark
  • Effective HTML5 Game Audio – Chris Khoo, Wappworks Studios

Tutti questi argomenti, insieme a numerosi lightning talk e demo dei membri del gruppo, sono stati presentati durante l’anno. E, naturalmente, ci riuniamo anche per l’occasionale happy hour!

Un ringraziamento molto speciale a Double Down Interactive, Big Fish Games, GameHouse e The Makers Space per l’ospitalità!

I temi dietro i talk

Ripensando a quell’elenco, emergono alcuni fili conduttori chiari — e vale la pena nominarli, perché corrispondono quasi esattamente alle decisioni che ogni sviluppatore HTML5 deve prendere.

Rendering e la questione della modalità retained. Il talk di Kevin Moore sulle librerie grafiche in retained mode e gli “Stupid Canvas Tricks” di Dean Hudson si collocano ai lati opposti di un vero bivio architettonico. Il disegno su canvas in immediate mode offre il controllo totale e un overhead minimo, ma ogni ridisegno va gestito manualmente. Le librerie in retained mode (la stirpe che attraversa framework come CreateJS, PixiJS e successivamente Phaser) forniscono un scene graph, hit testing e tweening pronti all’uso — al costo di un livello di astrazione tra lo sviluppatore e la GPU. Nessuna delle due è “corretta”. La risposta giusta dipende dal fatto che il tuo gioco sia composto da una manciata di sprite o da un mondo complesso e stateful.

Il problema del wrapper. Tre talk separati — la sessione DDI su UIWebView, la presentazione di CocoonJS di Iker Jamardo e Co+Pilot — hanno tutti ruotato attorno alla stessa domanda: come si inserisce una web app in un app store? Nel 2012 le opzioni erano grosso modo:

ApproccioCosa offreIl compromesso
Web app sempliceZero attriti, aggiornamenti istantaneiNessuna presenza negli store, API del dispositivo limitate
Wrapper WebView nativoDistribuzione tramite store, alcuni hook nativiLimite di prestazioni, discrepanza della UI con il chrome nativo
Wrapper accelerato (es. CocoonJS)Canvas accelerato via GPU, velocità quasi nativaVendor lock-in, stranezze specifiche della piattaforma

Quella tabella è ancora oggi un modo utile per ragionare sulla decisione, anche se gli strumenti specifici si sono evoluti.

Correlato: — IDE .NET/C# multipiattaforma con supporto Unity e Unreal Engine di prima classe.

Audio. L’intervento di Chris Khoo sull’audio efficace per i giochi HTML5 era, e rimane, uno degli argomenti più sottovalutati nel settore. L’audio è il punto in cui i giochi web si rompono più spesso: politiche di autoplay, differenze nel supporto dei codec e la latenza tra un gesto dell’utente e l’effettiva attivazione di un suono. Se stai creando un gioco oggi, stanzia del tempo reale per l’audio: non è un problema di semplice “caricamento di un file”.

JavaScript lato server. L’intervento di Dean Hudson e Mason Browne sulla progettazione di basati su node.js ed express.js è stato un primo segnale che il server e il client potevano condividere un linguaggio. Questo conta più di quanto sembri: codice condiviso per la convalida dello stato del gioco, formati di dati condivisi e un unico modello mentale per tutto lo stack.

Come ottenere il massimo da un Meetup

Se sei nuovo in questo tipo di gruppi — o se sei rimasto in disparte e non ti sei ancora fatto avanti — ecco i consigli pratici che daremmo a chiunque.

Preferiti dai lettori: — Libri di programmazione di giochi, tastiere meccaniche, monitor e hardware per sviluppatori.

  • Vieni con un problema specifico. “Il mio gioco è lento” ti porterà simpatia. “Il mio canvas perde frame quando disegno più di qualche centinaio di sprite” ti porterà una risposta.
  • Parla con la persona accanto a te, non solo con il relatore. L’intervento è la scusa; il valore sta nella conversazione nei corridoi.
  • Fai un lightning talk. Cinque minuti su qualcosa che hai imparato è il modo più veloce per diventare un volto noto nel gruppo. Non devi essere un esperto: devi solo aver risolto un problema.
  • Fai follow-up. Scambia i contatti e invia effettivamente il link o lo snippet che hai promesso.
  • Porta la tua prospettiva da non-sviluppatore. I nostri artisti, PM e amministratori di rete pongono le domande che gli sviluppatori dimenticano di fare, e quelle sono spesso le domande più utili nella stanza.

Costruire una comunità che duri

Passare da zero a 380 membri in un anno sembra una metrica di vanità, ma il numero che conta davvero è la retention: quante di quelle persone sono tornate. Alcune cose che abbiamo imparato per mantenere viva una comunità tecnica:

  • Ruota i contenuti. Se ogni incontro è un tutorial sul canvas per principianti, i membri esperti smetteranno di venire. Se ogni incontro è un’ottimizzazione profonda della GPU, perdi i nuovi arrivati. Alterna panoramiche, approfondimenti e demo.
  • Mantieni bassa la barriera per parlare. I lightning talk e le demo dei membri abbassano la posta in gioco e fanno emergere persone che non si candiderebbero mai per uno slot completo.
  • Offri cibo, letteralmente. Gli happy hour e i pasti condivisi fanno più per la coesione della comunità di qualsiasi pianificazione dell’agenda.
  • Ringrazia pubblicamente i tuoi host. Double Down Interactive, Big Fish Games, GameHouse e The Makers Space ci hanno messo a disposizione le sale, e le sale sono il prerequisito meno glamour per tutto il resto.
  • Rendilo accogliente per ogni età e background. Il nostro membro più giovane ha 13 anni. Non è una curiosità: è un promemoria del fatto che questo campo ha una barriera all’ingresso insolitamente bassa, e il gruppo dovrebbe rifletterlo.

Guardando al 2013

Sembra fantastico, vero? Di cosa vorresti che parlassimo nel 2013? Dove vorresti incontrarci?

Alcune direzioni che ci incuriosiscono e su cui vorremmo il vostro input:

  • Prestazioni e profilazione mobile — come misurare effettivamente dove finiscono i frame, utilizzando i dev tool del browser e i test sui dispositivi.
  • Multiplayer e networking — WebSockets, compensazione della latenza e le messi realtà della sincronizzazione in tempo reale.
  • Tooling e workflow — sistemi di build, asset pipeline e come i piccoli team pubblicano senza un ingegnere dedicato ai tool.
  • Fisica e collisioni — quando usare una libreria e quando scriverne una propria.
  • Accessibilità e input — piattaforme con tastiera, touch e controlli di movimento, e come supportarne più di una senza raddoppiare il lavoro.

Rispondi qui sotto con le tue idee o twitta @massivelyfun usando l’hashtag #GameDevJS. A presto!

Domande frequenti

Cos’è Seattle Game Dev JS?

È un gruppo di meetup dell’area di Seattle per persone interessate allo sviluppo di giochi in JavaScript e HTML5. Riunisce sviluppatori, artisti, designer, program manager, amministratori di rete e appassionati di JS in generale per talk, demo lampo ed eventi sociali.

Devo essere uno sviluppatore esperto per partecipare?

No. Il gruppo mescola deliberatamente talk panoramici con approfondimenti tecnici, e i membri vanno da un hobbista di 13 anni a ingegneri professionisti di studi affermati. Se sei curioso dello sviluppo di giochi in JS, il tuo posto è qui.

Come posso proporre un talk o suggerire un argomento?

Rispondi nei commenti a questo post, o twitta @massivelyfun usando l’hashtag #GameDevJS. Stiamo cercando attivamente idee per argomenti, suggerimenti per le sedi e proposte di relatori per il 2013.

Che tipo di argomenti tratta il gruppo?

Storicamente: tecniche di rendering e canvas, librerie grafiche, wrapper nativi e distribuzione negli app store, audio HTML5, sviluppo per Windows 8 e architettura server node.js/express.js. Siamo interessati a espanderci nella profilazione mobile, networking multiplayer, tooling, fisica e accessibilità.

Chi ospita gli incontri?

Siamo stati ospitati da Double Down Interactive, Big Fish Games, GameHouse e The Makers Space, e siamo grati a tutti loro. Se la tua azienda ha spazio e desidera supportare la comunità locale di sviluppatori, ci farebbe piacere ricevere tue notizie.

Questo gruppo riguarda solo i giochi?

Il focus sono i giochi, ma le competenze si sovrappongono fortemente allo sviluppo generale di web e app: il rendering canvas, la gestione dell’audio, i wrapper nativi e l’architettura node.js si applicano tutti ben oltre i giochi. Molti dei nostri membri lavorano su progetti non legati ai giochi.

Condividi questo: Twitter Facebook Google Pinterest Reddit

Ulteriori letture

Frequently asked questions

What is Seattle Game Dev JS?

It's a Seattle-area meetup group for people interested in JavaScript and HTML5 game development. It brings together developers, artists, designers, program managers, network admins, and general JS enthusiasts for talks, lightning demos, and social events.

Do I need to be an experienced developer to attend?

No. The group deliberately mixes overview talks with deep technical dives, and members range from a 13-year-old hobbyist to professional engineers at established studios. If you're curious about JS game development, you belong in the room.

How can I propose a talk or suggest a topic?

Reply in the comments on this post, or tweet @massivelyfun using the GameDevJS hashtag. We're actively looking for topic ideas, venue suggestions, and speaker pitches for 2013.

What kinds of topics does the group cover?

Historically: rendering and canvas techniques, graphics libraries, native wrappers and app-store distribution, HTML5 audio, Windows 8 development, and node.js/express.js server architecture. We're interested in expanding into mobile profiling, multiplayer networking, tooling, physics, and accessibility.

Who hosts the meetings?

We've been hosted by Double Down Interactive, Big Fish Games, GameHouse, and The Makers Space, and we're grateful to all of them. If your company has space and wants to support the local dev community, we'd love to hear from you.

Is this group only about games?

The focus is games, but the skills overlap heavily with general web and app development — canvas rendering, audio handling, native wrappers, and node.js architecture all apply well beyond games. Plenty of our members work on non-game projects. Share this: Twitter Facebook Google Pinterest Reddit <!-- citations:start --> Further reading - [HTML5](https://en.wikipedia.org/wiki/HTML5) — Wikipedia - [Canvas element](https://en.wikipedia.org/wiki/Canvas_element) — Wikipedia - [Node.js](https://en.wikipedia.org/wiki/Node.js) — Wikipedia - [Meetup (service)](https://en.wikipedia.org/wiki/Meetup_(serv


Rifornisci la tua scrivania di sviluppo

Libri di programmazione di giochi, tastiere meccaniche, monitor e hardware per sviluppatori