LibGDX - 设置相机时发生闪烁

时间:2013-11-22 12:20:43

标签: box2d libgdx orthographic

我正在尝试将我的程序划分为模型和视图。起初我根据输入控制了相机,一切正常。现在我决定创建一个CameraModel类,并根据CameraModel的属性更新真实相机。当我创建一个新的Box2D Body时出现问题 - 然后屏幕闪烁。也许这不是相机问题,但只有在我使用此代码时才会发生:

CameraModel model = level01.getCameraModel();
camera.up.set(model.getUp());
camera.position.set(model.getPosition());
camera.zoom = model.getZoom();

......而不是:

Body playerModel = level01.getPlayer().getBody();
Vector2 Pos = playerModel.getPosition();
Vector3 wv = new Vector3(Pos.x,Pos.y,0.0f);
camera.up.x = (float) Math.cos(playerModel.getAngle());
camera.up.y = (float) Math.sin(playerModel.getAngle());
camera.position.x = wv.x + camera.up.x * 200f;
camera.position.y = wv.y + camera.up.y * 200f;

确切地说,只有当我使用这一行camera.position.set(model.getPosition());时。其他所有属性都没有问题。 什么可能导致闪烁?

1 个答案:

答案 0 :(得分:0)

问题是我的代码很混乱并传递了实际的向量,而不是副本......所以视图跳得非常快。