gpt4 book ai didi

java - 如何走楼梯和斜坡?

转载 作者:搜寻专家 更新时间:2023-10-31 20:12:33 48 4
gpt4 key购买 nike

我们使用 jme3,BetterCharacterControl 的一个问题是 setMaxSlope 没有实现。引擎的开发者说我们可以使用新的 Controller 自行解决:

http://hub.jmonkeyengine.org/forum/topic/setmaxslope-for-bettercharactercontrol/

我真的很想要一个解决方案,因为 my game需要它。我之前问过,但我们没有解决:

How to improve character control for my 3D game?

你能帮助我们进步吗?我已经录制了一个有问题的视频:

http://www.youtube.com/watch?v=PF_UzoOXD0E

一些文档在这里: http://hub.jmonkeyengine.org/wiki/doku.php/jme3:advanced:walking_character?s[]=bettercharactercontrol#bettercharactercontrol

我为 Controller 添加功能所做的努力:

package adventure;

import com.jme3.math.Vector3f;
import com.jme3.bullet.control.BetterCharacterControl;

public class GameCharControl extends BetterCharacterControl {
protected Vector3f lastlocation = new Vector3f();

public GameCharControl(float x, float y, float z) {
super(x, y, z);
}

@Override
public void update(float tpf) {
super.update(tpf);
System.out.println("location " + location);
System.out.println("lastlocation " + lastlocation);

if (location.equals(lastlocation)) {
System.out.println("update2");
this.setHeightPercent(101);
}
rigidBody.getPhysicsLocation(location);
applyPhysicsTransform(location, rotation);
lastlocation = location;
}
}

但是上面没有做任何改变,或者如果我将高度设置为 101 那么游戏角色就很难移动了。你能帮我们看看应该做什么吗?

最佳答案

由于运动将角色视为由 PhysicsJoint 组成的 PhysicsRigidBody,因此他的腿或膝盖可能没有足够的向上动能。希望那里的参数没有设置为适应该尺寸的楼梯。

由于您在通过倾斜的楼梯时遇到了最大的麻烦,因此次要措施可能是调整步行方向。我怀疑您是否可以依赖 location.equals(laSTLocation) 但在短距离内可以很好地检查角色是否遇到了障碍物。一旦您知道有一个步骤,您想要干净地缩放它或停留在下面。

关于java - 如何走楼梯和斜坡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18554168/

48 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com