Ho già una ragionevole esperienza con C ++ e OpenGL e di recente ho deciso di provare lo sviluppo di giochi per dispositivi mobili. Dopo aver creato con successo una semplice app OpenGL ES per Android usando Java, ho cercato modi per indirizzare sia Android che iOS con il minor codice di riscrittura possibile. Ho provato a utilizzare gli strumenti di sviluppo multipiattaforma orgogliosamente orgogliosi di Visual Studio 2015, ma li ho trovati troppo nuovi e quindi estremamente sotto documentati. Potrei costruire i progetti di template che il programma mi ha dato, ma non sono riuscito a capire come, dati questi template, potrei aggiungere risorse al gioco o gestire l'input del touchscreen.
Ho un desiderio purtroppo specifico, troppo specifico per trovarlo con Google. Voglio creare un gioco OpenGL ES usando C ++, con wrapper sottili specifici per piattaforma per Android e iOS. Le persone mi hanno fatto domande simili (anche se non esattamente le stesse) e più di una persona che ha risposto ha affermato che ciò che voglio fare non è solo possibile, ma relativamente semplice, dal momento che non devo preoccuparmi dell'interfaccia utente.
Ho provato questo tutorial , ma ha quasi tre anni e quindi probabilmente progettato per la tecnologia più vecchia, e di conseguenza ho incontrato vari bug non rilevati. A partire da ora, però, quel tutorial è la cosa più vicina a ciò che voglio che ho trovato. Tutto il resto è solo per Android o mi consiglia di pagare centinaia di dollari all'anno per utilizzare l'SDK Marmalade. A volte ho voglia di scrivere il codice due volte, una volta in Java e una volta in Objective-C, ma sono motivato dalla consapevolezza che questa soluzione è possibile, ma per qualche ragione, non trattata da nessuna parte in nessun dettaglio moderno.
Per riassumere, voglio creare un gioco OpenGL ES per iOS e Android, con una singola base di codice C ++ racchiusa in piccole quantità di codice specifico per la piattaforma. Tuttavia, nonostante il fatto che diverse persone abbiano raccomandato questo approccio, nessuno può dirmi come farlo. Qualcuno può dirmi se è effettivamente possibile e, in tal caso, cosa posso fare o dove posso andare per imparare come?