Possiedo un motore di gioco C++ che attualmente supporta Windows, Linux e Android (NDK). È basato su SDL e utilizza OpenGL per il rendering.Esegui codice C# dall'applicazione C++ (Android NDK) gratuitamente
Uno dei vincoli di progettazione di questo motore di gioco è che il costo di sviluppo deve essere di $ 0,00 - costruendo il motore dovrebbe venire a costo zero (oltre alle ore uomo), devo essere autorizzato a ridistribuire liberamente il motore codice e binari, e gli utenti dovrebbero essere in grado di vendere giochi creati usando il motore senza restrizioni.
In questo momento, sto utilizzando un linguaggio di scripting interpretato molto lentamente per la logica del gioco: funziona davvero bene per scrivere codice di colla e semplici risposte agli eventi dell'interfaccia utente, ma non molto altro.
Mi piacerebbe sostituire questo sistema con una soluzione C# - avere l'utente compilare una libreria di classi C# (DLL) contenente la logica di gioco, e avere il lato C++ 'consumare' questa DLL e chiamare i ganci appropriati.
È stato piuttosto difficile trovare informazioni su come ottenere questo in modo multipiattaforma. Ogni piattaforma ha un modo diverso di ospitare i runtime necessari. Inoltre, la maggior parte degli articoli che ho trovato suggeriscono l'uso di framework completi che forniscono astrazioni di piattaforma già implementate nel mio motore.
C'è attualmente un modo per eseguire il codice da una DLL C# da un'applicazione C++ basata su NDK Android senza utilizzare un SDK completamente diverso e senza dover sborsare centinaia di dollari per una licenza?
In particolare, sto prendendo in considerazione alcune delle recenti iniziative di rete open source di Microsoft: tutto ciò che potrei usare? EDIT: per chiarire, Windows e Linux hanno un modo ben documentato di eseguire il codice .net "gratuitamente". Questa domanda riguarda specificamente la chiamata del codice gestito da un'applicazione NDK Android SENZA pagare i costi di licenza a Xamarin o ad un altro fornitore .
Hai mai pensato di utilizzare un linguaggio di scripting JITable? – walkingTarget
@walkingTarget Sì, ma mi piace molto il design del linguaggio di C#. – kiwibonga