Haxe (pronunciato "Hex"), è un linguaggio open source e multipiattaforma, in grado di compilare in varie lingue, per Windows, Flash Player, WebOS, Android, Blackberry e HTML5 (in versione beta al momento della scrittura). NME, che va di pari passo con Haxe, è la libreria che consente questa incredibile azione multipiattaforma.
Sebbene questo articolo sia rivolto a coloro che hanno esperienza di programmazione e sviluppo del gioco, fornisce gli strumenti e le risorse necessari a qualcuno con poca o nessuna esperienza per iniziare con Haxe come prima lingua. In questo articolo ti dirò perché dovresti usare Haxe, aiutarti a far funzionare Haxe e NME sulla tua macchina, indicarti alcuni dei migliori materiali di apprendimento disponibili e aiutarti a mettere piede nella porta con Haxe Comunità.
Post correlatiSe sei coinvolto nella programmazione o nello sviluppo di giochi, o forse anche solo trascorri una notevole quantità di tempo su Internet, hai sentito la frase "Flash sta morendo". Non ho intenzione di sprecare il tempo di nessuno con quel dibattito in questo momento, ma l'idea è legata al mio prossimo pensiero. Come sviluppatore di giochi, in particolare uno che ha fatto solo soldi attraverso i giochi Flash fino ad ora, questa frase era moderatamente relativa a me.
Ora dichiarerò che non sono convinto che Flash sia morto, o che stia per morire in qualunque momento presto, ma volevo comunque un piano di backup. Ora ho trovato una risposta alle mie preoccupazioni: Haxe.
Ho sempre desiderato lavorare con altre piattaforme oltre a Flash, ma la quantità di lavoro necessaria per cambiare è sempre sembrata troppo grande per giustificare o affrontare; Haxe cambia tutto questo. Come lingua, Haxe è quasi identico al codice AS3 che ho scritto da anni. Ancora meglio, FlashDevelop (il mio editor preferito per i giochi Flash) ha un incredibile supporto per Haxe, quindi non ho nemmeno bisogno di familiarizzare con un nuovo IDE. Haxe non solo mi da la sicurezza di non fare più affidamento su Flash, ma mi permette anche di indirizzare nuove piattaforme.
In passato, il targeting di più piattaforme è sempre stato un enorme dolore, al punto che di solito faccio finta che l'opzione non esista. O devi portare il tuo codice in una nuova lingua (che potresti conoscere o non sapere), o guardarti intorno per qualcuno che è provato e provato a farlo per te. Ho venduto i diritti mobili a uno dei miei giochi prima, ma anche dopo un pagamento anticipato per me, il gioco non è mai andato in diretta.
Con Haxe, puoi esportare su varie piattaforme semplicemente modificando una casella a discesa e aggiungendo un piccolo bit di codice condizionale per rilevare la piattaforma e modificare le impostazioni come la modalità a schermo intero. Questo non vuol dire che di tanto in tanto non dovrai risolvere alcuni nodi, ma da quello che ho letto, e la mia piccola esperienza, ho detto che non vale la pena di menzionare.
La cosa più importante che devi fare prima è preparare il tuo computer pronto per usare Haxe e NME.
Ottenere Haxe e NME attivi e in esecuzione può essere un po 'confuso, ma ho scritto una guida completa sul mio sito Web per guidarti passo dopo passo. Vai avanti e segui la mia guida introduttiva a Haxe, NME e FlashDevelop ora e torna indietro una volta che sei attivo e funzionante. Nota che la mia guida utilizza FlashDevelop e, mentre suggerisco fortemente questo IDE, ce ne sono altri, quindi sentiti libero di sperimentare.
Se non stai utilizzando una macchina Windows, sfortunatamente non ho una guida completa passo dopo passo. Detto questo, Haxe è compatibile con entrambe le piattaforme, e puoi trovare gli installer e le istruzioni di base sulla pagina di download di Haxe. Se si riscontrano problemi specifici, suggerisco di passare alla mia guida di Windows Haxe, in quanto potrebbe far luce su cosa è andato storto. Se ciò non funziona, vai alla sezione "Partecipa alla community" e contatta Haxe tramite Twitter o via email per ulteriore assistenza.
Una volta impostato il tuo ambiente di lavoro, ti consigliamo di familiarizzare con la sintassi di base di Haxe. io altamente suggerisci di farlo leggendo il riferimento alla sintassi di Haxe.
Se ti senti più a tuo agio con la sintassi di base di Haxe, ora sei una spugna, in attesa di assorbire tutta la conoscenza che Haxe ha da offrire. A questo punto, suggerisco di sfogliare l'intera pagina di riferimento Haxe e di leggere qualsiasi cosa e tutto ciò che ti colpisce. Il team di supporto Haxe ha svolto un lavoro straordinario costruendo il proprio materiale di riferimento, e chiunque abbia iniziato dovrebbe farne un grande uso.
Che tu provenga da AS3, Java o qualche altra lingua, il porting su Haxe è piuttosto semplice. Dal momento che Haxe supporta quasi tutte le funzioni utilizzate da qualsiasi linguaggio tradizionale, in genere sei bloccato solo con alcune noiose modifiche alla sintassi. Detto questo, qualsiasi IDE moderno supporta find-and-replace (con FlashDevelop che supporta "Trova e sostituisci file", con targeting per ogni file del progetto) e con un po 'di pazienza, è possibile eseguire il porting del progetto in pochissimo tempo.
Se hai progetti che ritieni possano essere portati, ti consiglio caldamente di farlo, poiché l'esperienza che acquisirai imparando la nuova sintassi e i codici di errore è estremamente preziosa. Una volta eseguito il porting del gioco, puoi anche andare avanti e far funzionare il tuo gioco su altre piattaforme attraverso la potenza di NME - una ricompensa molto bella per tutto il tuo duro lavoro. A questo punto, potresti quindi inviare i tuoi progetti precedenti a nuove piattaforme e potenzialmente guadagnare alcune entrate che non hai mai visto arrivare.
Se sei come me, ami assolutamente le biblioteche. Mentre sono perfettamente in grado di creare un gioco da zero, preferisco usare una libreria collaudata e completa di funzionalità. A causa della facilità di porting, della comunità in crescita e della bellezza complessiva di Haxe, ci sono alcune librerie che aiutano a portare a termine il lavoro.
Haxe viene fornito con il sorprendente gestore di pacchetti Haxax di Haxe, che tiene traccia di tutte le librerie disponibili inviate al gestore. Ciò consente di cercare le librerie da una posizione comoda e persino aggiornare tutte le librerie installate sul computer alla loro versione più recente, utilizzando il aggiornamento haxelib
comando all'interno del prompt dei comandi.
Quando una nuova libreria viene scaricata e installata, è necessario assicurarsi che il progetto includa il classpath di tale libreria. Come spiegato nel mio articolo introduttivo, tutti i progetti Haxe contengono un application.nmml
file. In questo file, c'è una piccola sezione di codice per classpath e haxe libs. Se avessimo scaricato la libreria HaxePunk e volessimo includerla nel nostro progetto, aggiungeremmo semplicemente quanto segue al nostro application.nmml
file:
Questo è il nostro progetto sapere che stiamo usando la libreria HaxePunk, che controlla il gestore dei pacchetti Haxelib Haxe. NME è anche una libreria controllata tramite Haxelib, motivo per cui vedrai quanto segue in qualsiasi progetto HMEe NME creato con FlashDevelop.
Proprio come prima, questo permette al nostro progetto di sapere che stiamo usando la libreria NME, che è anche gestita attraverso haxelib. Mentre è possibile definire manualmente un percorso di classe per una libreria, la maggior parte delle principali librerie sono supportate da haxelib e il sistema è significativamente più organizzato.
Haxe ha una nuova, ma fiorente comunità. Mentre Haxe è ancora giovane, sta rapidamente crescendo in popolarità. Dopo essermi unito a Haxe, sembrava quasi che stavo saltando sul carro, perché ovunque guardassi, sempre più persone che conoscevo stavano parlando di Haxe; questa è stata ovviamente una coincidenza, ma dimostra che Haxe è in aumento.
I membri della comunità con cui ho interagito finora sono grandiosi. Matt Tuttle fa un ottimo lavoro gestendo HaxePunk su GitHub, gli account Twitter Haxe sono sempre pronti a rispondere ai tweet e ho visto sempre più post di blog relativi a Haxe di qualità. Vi esorto vivamente a diventare attivi nella comunità, poiché questo è stato il modo migliore in assoluto per me di ottenere aiuto e aiutare gli altri, con questo linguaggio straordinario.
Haxe ha un numero di account Twitter che sono decentemente attivi e sempre più sviluppatori si uniscono alla community ogni giorno. Di seguito sono riportati due account ufficiali che consiglio vivamente di seguire se si desidera rimanere nel ciclo Twitter Haxe. Sentiti libero di twittare loro tutte le domande che potresti avere, dato che sono molto veloci nel rispondere e mi sono sempre state d'aiuto.
Il gruppo Haxe Google sembra essere uno dei luoghi più attivi della rete per chiedere una domanda relativa a Haxe e ottenere una risposta rapida. Se preferisci i forum su una risposta di Twitter, unisciti a questo gruppo.
Ora che sei dotato della possibilità di programmare usando Haxe e NME, ci sono infinite opportunità per te come sviluppatore di giochi. Con questo potente linguaggio, ora puoi spingere i tuoi progetti su un numero crescente di piattaforme supportate. Il tuo conto in banca crescerà, la tua reputazione prospererà e tu farai tutto con meno sforzo che mai.
Spero che tu abbia imparato molto su Haxe attraverso questo articolo e, a nome dell'intera comunità di Haxe, non vedo l'ora di vederti aiutare questa incredibile comunità e lingua a crescere.