如何管理摄像机顺利移动到游戏角色?

时间:2012-02-28 06:30:04

标签: android libgdx

我正在使用libgdx为Android制作游戏,我的要求是当角色扮演游戏时,我们的工作是

         if velocity == normal(==25) 
        cam.position.y = character.position.y;

但是,如果获得一些力量,那么需要的是我们顺利地接受角色的y位置 为此,我指定为

             if when velocity >25(means get power)
           cam.position.y = character.position.y-screenHieght/3;  

它正在工作但是角色不能顺利移动并且没有真正的效果。         请有人帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:1)

在对您的问题进行第二次阅读后,我认为您正在询问如何平稳地更新您的相机,无论玩家的移动速度如何。

以下是我更新相机的方法:

     protected void updateCamera() {
        float tX = cameraObjective.pos.x - cam.position.x;
        float tY = cameraObjective.pos.y - cam.position.y;
        float newX = cam.position.x + tX;
        float newY = cam.position.y + tY;
        if ( newX < camBounds.x || newX > camBounds.x + camBounds.width ){
            tX = 0;
        }
        if ( newY < camBounds.y  - camBounds.height || newY > camBounds.y  ){
            tY = 0;
        }
        cam.translate(tX, tY, 0);
    }

cambounds是一个巨大的矩形,用于定义相机的移动限制,因此如果它对您的情况没有帮助,您可以省略该部分