- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我们使用 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
我为 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/
我尝试只更改一个屏幕而不是所有屏幕的 Gamma 值。 我使用 this code帮助我 但是这个 SetDeviceGammaRamp(GetDC(IntPtr.Zero), ref s_ramp)
我正在尝试在 Debian 机器上运行应用程序。该应用程序是用 C 语言编写的,并使用 DirectFb。但 directfb 部分不起作用。它给出错误“无法设置 Gamma 斜坡-->参数无效”。
我是一名优秀的程序员,十分优秀!