私は、Java と弾丸の物理学を一度に学習することで、自分の道を戦い抜こうとしています。一度にすべてを行うには少し多すぎる可能性がありますが、私は挑戦が好きです.
これまでのところ、次のコードを使用して、g3db オブジェクトをインポートし、それらに弾丸物理学を適用し、画面上で操作する方法を学びました。
assets = new AssetManager();
assets.load("globe.g3db", Model.class);
assets.load("crate.g3db", Model.class);
assets.finishLoading();
Model model = assets.get("globe.g3db", Model.class);
ModelInstance inst = new ModelInstance(model);
inst.transform.trn(0, 20, 0);
btRigidBody body;
btSphereShape sh = new btSphereShape(1);
sh.calculateLocalInertia(1, new Vector3(0,0,0));
body = new btRigidBody(new btRigidBody.btRigidBodyConstructionInfo(3, new btDefaultMotionState(inst.transform), sh));
body.setUserValue(Minstances.size);
body.proceedToTransform(inst.transform);
motionState = new MyMotionState();
motionState.transform = inst.transform;
body.setMotionState(motionState);
dynamicsWorld.addRigidBody(body );
Minstances.add(inst);
これはうまく機能します。地面の上に置くと、落下して地面に静止しますが、動き回ると転がらずに滑ります。簡単な修正はありますか?