Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/317.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JBullet刚体_Java_Collision_Jbullet - Fatal编程技术网

Java JBullet刚体

Java JBullet刚体,java,collision,jbullet,Java,Collision,Jbullet,我很难实现与我的游戏的碰撞,更具体地说是与主要玩家的碰撞(一旦它与我设置的盒子碰撞,它就会反弹得很远)。以下是设置查看器的代码: 这是物理世界的设置: 我正在尝试移动播放器,然后将新位置应用到碰撞框,然后执行物理步骤并将位置设置为新碰撞框位置。基本上,我有两个向量,占据一个位置 编辑:有人吗?我仍然有这个问题JBullet的许多单位通常在0-1之间。恢复是造成此问题的原因,恢复是碰撞形状的弹性。你的赔偿额太高了,试着减少它,看看是否有帮助 self_Col.setRestitution(0.1f

我很难实现与我的游戏的碰撞,更具体地说是与主要玩家的碰撞(一旦它与我设置的盒子碰撞,它就会反弹得很远)。以下是设置查看器的代码:

这是物理世界的设置:

我正在尝试移动播放器,然后将新位置应用到碰撞框,然后执行物理步骤并将位置设置为新碰撞框位置。基本上,我有两个向量,占据一个位置


编辑:有人吗?我仍然有这个问题

JBullet的许多单位通常在0-1之间。恢复是造成此问题的原因,恢复是碰撞形状的弹性。你的赔偿额太高了,试着减少它,看看是否有帮助

self_Col.setRestitution(0.1f);
  AxisSweep3 pairCache = new AxisSweep3(new javax.vecmath.Vector3f(-10000, -10000, -10000), new javax.vecmath.Vector3f(10000, 10000, 10000));
    DefaultCollisionConfiguration collisionConfiguration = new DefaultCollisionConfiguration();
    CollisionDispatcher dispatcher = new CollisionDispatcher(collisionConfiguration);
    SequentialImpulseConstraintSolver solver = new SequentialImpulseConstraintSolver();
    detectionWorld = new DiscreteDynamicsWorld(dispatcher, pairCache, solver, collisionConfiguration);
    detectionWorld.setGravity(new javax.vecmath.Vector3f(0, -2f, 0));
self_Col.setRestitution(0.1f);