LibGDX 3d遵循一个对象或点

时间:2014-11-04 10:42:17

标签: java algorithm 3d path libgdx

旋转物体到方向位置时遇到麻烦。

我需要将ModelInstance(示例代码)旋转到point或ModelIstance。

但是当我使用setToLookAt时,它总是重置我的变换。我需要像look一样的东西,不要设置它,只是朝着方向寻找。

我该怎么办?

变量:

private Vector3 position;
private ArrayList<Vector3> path;
private int currentWaypointId = 0;
private Vector3 direction = new Vector3();
private Vector3 tmpV2 = new Vector3(), tmpV1 = new Vector3();
private float speed;

更新方法:

public void update(float delta){
    if(path != null){
        transform.getTranslation(tmpV2);
        tmpV1 = path.get(currentWaypointId).cpy();

         if (tmpV1.dst(tmpV2) < 2){
             currentWaypointId++;
             if (currentWaypointId >= path.size()) currentWaypointId = 0;
             tmpV1 = path.get(currentWaypointId).cpy();
         }

         direction = (tmpV1).sub(tmpV2).nor();

         transform.translate(direction.scl(speed*delta));
    }
}

Example

感谢您的回答

0 个答案:

没有答案