I am starting a research project and need to nail down a programming language and 3D graphics API where I will be creating an environment in the field of molecular cell biology where I will be simulating a large range of experiments in silico. This will be an ongoing project which will keep expanding and growing in size. The experiments will be done in discrete time and will encompass a complex physics engine. Pretty graphics are not of importance nor is is audio. I run Ubuntu and this is the environment I will be developing in.
The pairs I have investigated thus far are:
java : flexible,scalable,lib/dependency organization (maven),oo
- jogl: full control of graphics
- jMonkeyEngine: full game library, includes jBullet, maybe a bit overkill for what I need.
c++ : High speed, low level, oo
- opengl:full control of graphics
- maya:built in physics engine, infrastructure already in place, proprietary, not free
matlab : Heavily math based, but difficult to maintain and scale
- simulink : proprietary, not free
I am least familiar with Maya but it was suggested to me by a friend as a good approach. When would Maya be a good solution and would it be a good selection for this type of case? Just as thinking jMonkey would be overkill this is kinda my feeling on Maya.
Are there any other pairings I should investigate?
Also has anyone had any experience modifying an existing physics library and the flexibility or complexity of doing so (ie Bullet, JBullet, jinngine)? Unsure at this point if I should start from scratch or try and modify/expand an existing one.
Any thoughts, feedback, input or any other suggestions would be greatly appreciated.