libgdx缩放/拖动矩形内部

时间:2013-12-08 17:42:47

标签: java libgdx scene2d

我正在使用scene2d进行棋盘游戏。我希望电路板可以在屏幕的指定矩形部分内进行缩放和移动,而屏幕的其余部分保持不变。

我曾尝试为电路板使用单独的舞台,但尚未找到初始化正确执行此操作的视口和相机的方法。

我在Screen.resize(int width, int height)中尝试了以下代码作为测试,但是boardStage垂直拉伸,当放大时(如此处),它会填满整个屏幕。

hudStage.setViewport(8, 12, true, 0, 12, width, height);
boardStage.setViewport(8, 8, true, 0, 10, width, width); 

OrthographicCamera cam = (OrthographicCamera) boardStage.getCamera();
cam.zoom =.5f;

这样做的正确方法是什么?

2 个答案:

答案 0 :(得分:2)

我们已经为我们的棋盘游戏实施了类似的缩放。 https://play.google.com/store/apps/details?id=net.peakgames.mobile.rummi.android

我们正在使用缩放的第二台相机:

  • scissorStack用于剪辑第二个相机渲染区域。
  • 仅当电路板上有触摸/拖动时才启用第二台摄像机。
  • 当用户拖动电路板时,我们正在改变相机位置。

希望这会有所帮助..

答案 1 :(得分:0)

我认为您想使用scene2d ScrollPane而不是新的舞台。我不完全确定你是如何使用它进行缩放的,但我认为缩放的东西应该可以工作。