Orx è un motore di gioco 2D portatile open source, che attualmente funziona su Windows, Mac, Linux, iOS e Android (2.3+) e utilizza OpenGL (ES per iOS / Android) per l'accelerazione del rendering. È basato sui dati e utilizza un sistema di configurazione semplice ma potente che consente di prototipare e convalidare rapidamente le idee. In questo articolo, condividerò consigli e risorse per l'apprendimento di Orx e ti mostrerò di cosa è capace.
Ho provato diversi motori di gioco e framework (Corona SDK, AndEngine e recentemente Unity) prima di trovare Orx e, da allora, non ho mai trovato nulla di simile o più facile da usare per le mie esigenze. (Ammettiamolo, questa è una dichiarazione soggettiva).
Sotto il cofano, Orx utilizza il rendering accelerato con OpenGL, con auto-dosaggio quando possibile, OpenAL per il posizionamento del suono e Box2D per la fisica.
Ecco i motivi principali per cui rimango con Orx.
Onestamente, questa è la ragione principale. L'autore di Orx (alias iarwain) è davvero un bravo ragazzo, di larghe vedute e molto utile (sia per quanto riguarda Orx stesso che per il gamedev in generale), e per me è impagabile. Se sei bloccato con qualcosa, o ti manca un'API, lascia un post nel forum e riceverai una risposta in pochissimo tempo.
Non sono un estremista open source; Non mi interessa usare una buona libreria / framework closed source se fa il lavoro correttamente e ha una buona API e documentazione. Ma essere open-source con una licenza molto permissiva (zlib, nel caso di Orx) è sempre un vantaggio. Questo mi ha permesso di scrivere e riscrivere i plugin Android per farlo funzionare, ed è sempre interessante vedere cosa c'è sotto il cofano.
(Anche il codice Orx e le API sono molto puliti, quindi puoi imparare molto da scavare a loro.)
Questo dove Orx brilla. Francamente, il sistema di configurazione merita un articolo completo per se stesso, perché c'è molto da fare. La configurazione potrebbe non essere il nome migliore, perché è molto più della semplice configurazione del motore. La sintassi è basata su .INI
file e aggiunge alcune funzionalità utili, come l'ereditarietà delle sezioni.
Esistono molti usi diversi per il sistema di configurazione:
In Orx puoi, ovviamente, creare oggetti motore tramite l'API, ma puoi anche crearli specificando il nome di una sezione nel tuo .INI
File:
orxOBJECT * pstSoldier = orxObject_CreateFromConfig ("Soldato"); [Soldato] Grafica = SoldierGraphic Position = (0, 0, 0) [SoldierGraphic] Texture = soldier.png Pivot = center
Quanto sopra creerà e mostrerà lo "sprite" del Soldato nel centro del mondo. Ora posso aggiungere effetti, shader e animazioni, cambiare le sue dimensioni, la sua texture e altro, senza cambiare una singola riga di codice! Questo è genio.
Orx è un motore di gioco 2D completamente funzionante che funziona su piattaforme sia desktop che mobili e può essere utilizzato per la prototipazione e per i giochi completi con tutti gli effetti brillanti che puoi immaginare.
Personalmente raccomanderò Orx a chiunque voglia fare giochi e concentrarsi sulla logica del gioco, sia professionale, indipendente o amatoriale. Se conosci C / C ++, dovresti provare, penso che rimarrai colpito.
Può sembrare che sto promuovendo il prodotto (beh, forse lo sono, un po '), ma questa è la mia esperienza personale che sto esprimendo qui.
Sfortunatamente, Orx soffre di una scarsa esposizione pubblica, quindi non c'è un grande gioco pubblicato da mostrare. Ma diamo un'occhiata a quali giochi Orx ci sono già.
Mushroom Stew è un piccolo gioco di piattaforme sviluppato dall'autore di Orx. Include ombreggiatori con effetto acqua e alcune distorsioni locali.
Conosciuto anche come The Clarion Project, questo è un remake del gioco Commodore 64 del 1986 N.E.X.U.S.
Le Magasin des Suicides è stato realizzato da me come gioco promozionale Android / iOS per il film francese con lo stesso nome.
Hazardous Attack è uno sparatutto animato realizzato da Oxl Games.
Puoi trovare i link per il download sul sito ufficiale di Orx. Librerie precompilate sono disponibili per ogni piattaforma per l'ultima versione rilasciata.
Dato che Orx è open source, puoi anche ottenere l'albero dei sorgenti completo dal repository ufficiale di Bitbucket. Questo repository è sempre in buone condizioni e pronto per essere compilato, ed è il modo consigliato per iniziare a lavorare con Orx poiché include le ultime correzioni e le nuove funzionalità aggiunte al motore di gioco. Contiene anche la fonte delle esercitazioni.
Se hai scaricato le librerie precompilate (sconsigliato) sei tutto pronto; basta aggiungere il includere
e lib
cartella al tuo progetto di gioco e inizia a lavorare sul tuo prossimo gioco killer.
Se hai clonato il repository Mercurial, devi prima compilare il motore. Nessun grosso problema qui. Orx utilizza premake4 per configurare il progetto da compilare per la piattaforma desiderata (tranne Android).
Orx / code / build
elencopremake
(situato in Orx / extern / premake
) con l'IDE desiderato come argomento.Ecco l'elenco degli argomenti supportati.
codeblocks
: Genera i file di progetto Code :: BlocksCodeLite
: Genera file di progetto CodeLitegmake
: Genera makefile GNU per POSIX, MinGW e Cygwinvs2002
: Genera i file di progetto di Microsoft Visual Studio 2002VS2003
: Genera i file di progetto di Microsoft Visual Studio 2003VS2005
: Genera i file di progetto di Microsoft Visual Studio 2005VS2008
: Genera i file di progetto di Microsoft Visual Studio 2008VS2010
: Genera i file di progetto di Microsoft Visual Studio 2010vs2012
: Genera i file di progetto di Microsoft Visual Studio 2012vs2013
: Genera i file di progetto di Microsoft Visual Studio 2013xcode3
: Genera file di progetto Apple Xcode 3 (sperimentale)xcode4
: Genera file di progetto Apple Xcode 4 (sperimentale)Per Android, avrai installato l'ultimo NDK Android installato. Poi:
Orx / code / build / Android
elenco.NDK-build
.install.sh
script per copiare i binari nella loro directory di installazione.I forum di Orx dovrebbero essere il tuo primo posto in cui cercare aiuto. La comunità è molto piccola, ma i membri esperti sono disposti ad aiutare chiunque.
L'autore del motore è anche molto veloce nel rispondere e, in qualità di sviluppatore senior di giochi (che attualmente lavora presso Ubisoft Montreal), ha sempre consigli pertinenti da offrire per risolvere un problema.
Il wiki Orx è anche un buon posto dove guardare se sei perso. Ci sono sezioni per aiutarti a configurare il tuo ambiente per le diverse piattaforme supportate e una sezione per aiutarti con il sistema di configurazione.
I tutorial ti guideranno dalle basi alle funzionalità più avanzate di Orx.
Il primo tutorial mostra come rendere la scena più semplice e come si può giocare con le diverse proprietà dell'oggetto nel .INI
file per cambiare la scena senza cambiare il codice.
È un buon tutorial per sperimentare la parte di Orx basata sui dati e come ti permette di prototipare rapidamente qualcosa.
Consentitemi di chiarire: Orx non è Unity, quindi non troverete un Editor di scene completo con anteprima in tempo reale o qualcosa del genere.
Tuttavia, la community ha creato alcuni strumenti per aiutarti con diversi aspetti di Orx. Li puoi trovare nella pagina di Bitxucket di Orx. Ho arrotondato alcuni dei miei preferiti.
Scroll / ScrollEd non è davvero uno strumento, è più simile a un livello in cima a Orx che ti aiuta con il binding delle classi degli oggetti di gioco C ++.
Include anche un editor di livelli.
TexturePacker Exporter è un esportatore per il potente strumento TexturePacker.
AnimationEditor è un semplice strumento GUI per aiutarti a creare animazioni per Orx.
TiledToOrx è un semplice strumento GUI che converte i file di Tiled Map Editor (.TMX
) in ORX Config (.INI
) File.
Orx è un motore di gioco sviluppato attivamente. L'ho utilizzato per i miei progetti personali per due anni e ho perso il conto di tutte le nuove funzionalità aggiunte da allora. È possibile controllare l'elenco completo delle funzionalità nella pagina Informazioni su Orx.
Spero che questa piccola introduzione ti abbia dato un assaggio di cosa sia Orx e cosa lo renda un motore di gioco potente e interessante. Posso solo incoraggiarti a dargli un colpo e giocare con i tutorial. Non esitate a fare le vostre domande qui o nel forum di Orx.