Tôi đã bắt đầu sử dụng công cụ jMonkey gần đây, điều này rất hay. Nhưng tôi đã bị mắc kẹt cố gắng để thực hiện trọng lực tương đối.Tỷ trọng tương đối
Tôi muốn làm cho các hành tinh quay quanh nhau (không nhất thiết phải trong quỹ đạo tròn hoàn hảo, phụ thuộc vào vận tốc). Vì vậy, mọi đối tượng nên ảnh hưởng đến các đối tượng khác.
Những gì tôi có ngay bây giờ:
tắt trọng lực toàn cầu
bulletAppState.getPhysicsSpace().setGravity(Vector3f.ZERO);
khởi tạo các lĩnh vực và thêm vào không gian vật lý
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);
tôi nhận thấy rằng có phương pháp setGravity trong lớp RigidBodyControl, nhưng nó chỉ định hướng. Vì vậy, đối tượng đi theo cách đó cho đến khi nó biến mất.
Tôi thực sự mong chờ câu trả lời.
Bạn có thể áp dụng lực với phương pháp applyCentralForce – Max
Cảm ơn, tôi cho rằng có thể có cách "đơn giản hơn" để thực hiện điều đó.Nhưng không có vấn đề, tôi sẽ thử nó theo cách bạn đề nghị :) –