Raccomandazione C # (Mono) / Java 3D Game Engine [chiuso]


14

Puoi consigliare un buon motore di gioco C # per lo sviluppo multipiattaforma (Win / Mac / Linux, non mi importa delle console)?

Ho una certa esperienza con OpenGL grezzo e ho giocato con i collegamenti Java e JMonkeyEngine. Tuttavia sono un po 'deluso da quelle soluzioni e ho provato Ogre3D che mi è sembrato davvero promettente ma preferirei non dover sviluppare con il PITA che è C ++.

Ho dato un'occhiata a questo elenco ma è abbastanza travolgente. Non sto cercando una soluzione all-in-one, cioè non ho davvero bisogno del supporto per il networking, l'audio e tutto quel jazz ma non sarebbe male se fosse supportato.

Forse c'è anche una fantastica soluzione Java là fuori che non conosco?


Deve essere C # - che dire di Java?
Dave O.

1
Sarei sicuramente interessato a ciò che mi consiglieresti.
Raoul,

Ho modificato la domanda di conseguenza
Raoul,

Ho commentato la risposta corrispondente
Dave O.

Risposte:


14

Unity sta effettivamente utilizzando Mono nel suo back-end. Sebbene molti dei suoi tutorial di scripting utilizzino JavaScript, puoi effettivamente programmare Unity completamente in C # / Mono.


Nessun Linux però.
Kaj,

Questa è un'ottima opzione per Win / Mac. L'unità è molto bella.
Corv1nus,

1
Anche la mia risposta L'unità è grandiosa. Peccato per il supporto Linux, ma forse potrebbe arrivare un giorno.
BerggreenDK

3

JMonkeyEngine è davvero il motore 3D più consigliato per Java. Xith3D è talvolta raccomandato come alternativa, in quanto è anche un motore grafico in stile scenegraph.

Potresti andare con LWJGL o JOGL ma quelli non sono motori tanto quanto le librerie e scriveresti OpenGL non elaborato.

Non consiglio Java3D , penso che sia quasi abbandonato.

Penso che LWJGL sia il migliore che otterrai, ma ancora una volta è una libreria di giochi, non un motore grafico. OGRE è un motore grafico scenegrafico come JMonkeyEngine; LWJGL è per Java ciò che SDL è per C ++. Fornisce funzioni per OpenGL, audio e input, e ci si aspetta che funzioni con quello. Personalmente mi piace quel tipo di potere.


Ne avevo paura. Ho usato JMonkeyEngine 1 e 2 ma non sono soddisfatto delle loro pratiche di sviluppo e questo peggiora con JME3. Penso che quei ragazzi conoscano le loro cose in 3D ma non hanno idea delle pratiche di sviluppo Java, senza offesa. Conosco LWJGL e JOGL ovviamente, ma non voglio implementare la mia API scenegraph ecc. (Almeno per ora).
Raoul,

@Raoul è quello che consiglierei: la libreria grafica Java leggera, breve LWJGL. La documentazione è un po 'scarsa ma generalmente è solo un wrapper per OpenGL. Quindi se conosci un po 'OpenGL ti sentirai presto a conoscenza di LWJGL e in più ci sono buoni tutorial disponibili. tribaltrouble.com per esempio è stato realizzato con LWJGL :-)
Dave O.

3

Guarderei Ardor3D e darei un'altra occhiata a JMonkeyEngine.


Ardor3D

Creato dallo sviluppatore / i originale / i di JMonkeyEngine che ha deciso che era necessaria una pausa pulita per poter ricominciare da capo e utilizzare tutta l'esperienza acquisita sviluppandola per creare un'API e una piattaforma migliori.

Le persone che conosco hanno usato Ardor3D hanno cose molto positive da dire sul suo design e API. È in fase di sviluppo attivo e ha una buona comunità e una buona documentazione API, anche se i tutorial sono un po 'scarsi e generalmente dovrete avere familiarità con i concetti di programmazione 3D per poterli raccogliere.


jMonkeyEngine

Un'acquisizione da parte della community di JMonkeyEngine che gli sviluppatori Ardor3D hanno lasciato alle spalle, è andato sempre più rafforzando dal rilascio di JME3 che ha risolto una serie di carenze nella progettazione di JME2.

Vi è un'ampia documentazione che include tutorial e molti progetti che la utilizzano. Se hai avuto problemi con JMonkeyEngine 2 o precedenti, vale la pena dare un'altra occhiata alla versione 3.


Altri


1

Il motore 3D Axiom si basa su una porta C # di Ogre. Ha i renderer DirectX, OpenGL e XNA, quindi è molto portatile, sebbene alcune piattaforme non siano mantenute molto attivamente.


Inoltre, viene fornito con un editor elegante.
drxzcl,




0

OpenTK è utilizzato per MonoGame . Sfortunatamente MonoGame al momento supporta solo le API 2D di XNA, ma hai detto che hai avuto qualche esperienza OpenGL in modo da poter usare il wrapper OpenTK per realizzare grafica 3D. Probabilmente potresti anche trovare alcune librerie di grafici di scene che sono implementate in C # o in C ++ con wrapper C #.

Per l'audio, OpenTK racchiude OpenAL o se desideri qualcosa di più robusto e prevedi di rilasciare il gioco come freeware, FMOD non costa nulla da usare. Diventa costoso se vuoi caricare per il tuo gioco. Un'alternativa più economica sarebbe BASSO .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.