Sto avviando un progetto di ricerca e ho bisogno di definire un linguaggio di programmazione e un'API di grafica 3D in cui creerò un ambiente nel campo della biologia cellulare molecolare dove simulerò una vasta gamma di esperimenti in silico. Questo sarà un progetto in corso che continuerà ad espandersi e crescere di dimensioni. Gli esperimenti saranno fatti in tempo discreto e comprenderanno un complesso motore fisico. La grafica carina non è importante né l'audio. Corro Ubuntu e questo è l'ambiente in cui mi sto sviluppando.
Le coppie che ho esaminato fino ad ora sono:
java : organizzazione flessibile, scalabile, lib / dipendente (maven), oo
- jogl: controllo completo della grafica
- jMonkeyEngine: libreria di giochi completa, include jBullet, forse un po 'eccessivo per quello di cui ho bisogno.
c ++ : alta velocità, basso livello, oo
- opengl: controllo completo della grafica
- maya: motore fisico costruito, infrastruttura già installata, proprietaria, non gratuita
matlab : pesantemente basato sulla matematica, ma difficile da mantenere e scalare
- simulink: proprietario, non libero
Ho meno familiarità con Maya, ma mi è stato suggerito da un amico come un buon approccio. Quando Maya sarebbe una buona soluzione e sarebbe una buona scelta per questo tipo di caso? Proprio come pensare che jMonkey sarebbe eccessivo, questo è un po 'il mio sentimento su Maya.
Ci sono altri accoppiamenti che dovrei investigare?
Qualcuno ha avuto esperienza nel modificare una libreria fisica esistente e la flessibilità o la complessità di farlo (ad es. Bullet, JBullet, jinngine)? Incerto a questo punto se dovessi iniziare da zero o provare e modificare / espandere uno esistente.
Qualsiasi pensiero, feedback, input o qualsiasi altro suggerimento sarebbe molto apprezzato.
Grazie