Java 如何在JmonkeyEngine3中使用物理控件旋转空间?

Java 如何在JmonkeyEngine3中使用物理控件旋转空间?,java,physics,jmonkeyengine,Java,Physics,Jmonkeyengine,我从asset Manager加载了一个3D模型,并将CharacterControl添加为控件。一切都正常,但当我试着旋转模型时,它不起作用 private CharacterControl player; private Spatial model; public static final Quaternion YAW045 = new Quaternion().fromAngleAxis(FastMath.PI/4, new Vector3f(0,1,0)); @Override

我从asset Manager加载了一个3D模型,并将CharacterControl添加为控件。一切都正常,但当我试着旋转模型时,它不起作用

private CharacterControl player;
private Spatial model;
public static final Quaternion YAW045   = new Quaternion().fromAngleAxis(FastMath.PI/4,   new Vector3f(0,1,0));

@Override
public void simpleInitApp() {

    // add bullet app sate to state manager
    bulletAppState = new BulletAppState();
    stateManager.attach(bulletAppState);
    bulletAppState.getPhysicsSpace().enableDebug(assetManager);

this.addModel();
}

private void addModel(){
   model = assetManager.loadModel("Models/Oto/Oto.mesh.j3o");
   model.setLocalTranslation(new Vector3f(0,10,0));

    capsuleShape = new CapsuleCollisionShape(1f, 7.9f, 1);
    player = new CharacterControl(capsuleShape, 1f);
    bulletAppState.getPhysicsSpace().add(player);

   model.addControl(player);
   rootNode.attachChild(model);

   model.rotate(YAW045);
}
请帮帮我。

理查德是对的。
CharacterControl
类有一个
setViewDirection()
方法。 您确实应该切换到
更好的CharacterControl
,因为它具有更好的集成。我不知道为什么
CharacterControl
没有被弃用

在一般物理学中,物体在子弹物理空间中有一个单独的“生命”。例如,另一个常见的物理控件:
RigidBodyControl
类有一个
setPhysicsRotation(四元数旋转)
方法(就像它有一个
setPhysicsLocation()
方法一样)

更多信息在wiki中(尽管它引用了
CharacterControl
): 理查德是对的。
CharacterControl
类有一个
setViewDirection()
方法。 您确实应该切换到
更好的CharacterControl
,因为它具有更好的集成。我不知道为什么
CharacterControl
没有被弃用

在一般物理学中,物体在子弹物理空间中有一个单独的“生命”。例如,另一个常见的物理控件:
RigidBodyControl
类有一个
setPhysicsRotation(四元数旋转)
方法(就像它有一个
setPhysicsLocation()
方法一样)

更多信息在wiki中(尽管它引用了
CharacterControl
):

如果我回忆正确(我已经有一段时间没有使用控件了),玩家控件现在正在控制旋转、位置等。您也不能手动移动它,因为控件会将其直接向后移动。我希望角色控件将有一个旋转方法,尽管如果我正确地回忆(这是一段时间,因为我做了任何与控件相关的事情)玩家控件现在正在控制旋转、位置等,我可能会出错。你也不能手动移动它,因为控件将直接向后移动。我希望角色控件将有一个旋转方法,尽管我可能错了