Względna grawitacja
Zacząłem ostatnio używać silnika jMonkey, co jest bardzo miłe. Ale utknąłem, próbując wprowadzić względną grawitację.
Chcę, aby planety orbitowały wokół siebie (niekoniecznie w idealnie okrągłej orbicie, w zależności od prędkości). Więc każdy obiekt powinien wpływać na inne obiekty.
Co mam teraz:
wyłączenie globalnej grawitacji
bulletAppState.getPhysicsSpace().setGravity(Vector3f.ZERO);
inicjowanie sfer i dodawanie do przestrzeni fizycznej
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);
Zauważyłem, że istnieje metoda setGravity w klasie RigidBodyControl, ale po prostu ustawia kierunek. Tak więc obiekt idzie tak, aż zniknie.
Naprawdę nie mogę się doczekać odpowiedzi.