Gravidade Relativa
Eu comecei a usar o engine jMonkey recentemente, o que é muito bom. Mas eu fiquei preso tentando implementar a gravidade relativa.
Eu quero fazer planetas orbitando ao redor um do outro (não necessariamente em órbita perfeitamente circular, depende da velocidade). Então, todo objeto deve afetar outros objetos.
O que eu tenho agora:
desligando a gravidade global
bulletAppState.getPhysicsSpace().setGravity(Vector3f.ZERO);
inicializando esferas e adicionando ao espaço físico
Sphere sphere = new Sphere(50, 50, 5);
Geometry sun = new Geometry("Sun", sphere);
sun.setMaterial(stone_mat);
rootNode.attachChild(sun);
sun.setLocalTranslation(0, 0, 0);
sunPhysics = new RigidBodyControl((float) (50*Math.pow(10, 5)));
sun.addControl(sunPhysics);
bulletAppState.getPhysicsSpace().add(sunPhysics);
Geometry mercury = new Geometry("Mercury", sphere);
mercury.setMaterial(stone_mat);
rootNode.attachChild(mercury);
mercury.setLocalTranslation(15f, 0, 0);
mercuryPhysics = new RigidBodyControl((float) (5));
mercury.addControl(mercuryPhysics);
bulletAppState.getPhysicsSpace().add(mercuryPhysics);
Percebi que existe o método setGravity na classe RigidBodyControl, mas apenas define a direção. Então, o objeto vai desse jeito até que ele desapareça.
Estou realmente ansioso por respostas.