libGDX的相机变焦问题

时间:2014-12-15 05:39:43

标签: camera libgdx zoom

嘿伙计们我正在使用libGDX开发Android游戏,我在这里遇到了缩放问题。它基本上是一个滑雪狩猎风格的2D游戏,我想在高度变化时实现放大/缩小效果。是否可以使用OrthoGraphicCamera解决这个问题?或者我应该实时更改对象的大小(因为我仍然希望将背景保持为固定大小)?

1 个答案:

答案 0 :(得分:0)

如果Camera.zoom无法解决您的问题,您可以使用 批量未经修改以绘制您的背景,并使用batch.getProjectionMatrix().cpy().scale (yourScaleVariableX, yourScaleVariableY, 0); 只模拟你想要的项目,变化的变量,而不是你希望有所帮助。

简单的例子:

变量类

Matrix4 testMatrix;
float yourScaleVariableX;
float yourScaleVariableY;

示例渲染方法

.//

batch.begin();

yourBackground.draw...

batch.end();

batch.begin();

testMatrix = batch.getProjectionMatrix().cpy().scale (yourScaleVariable, yourScaleVariable, 0);

batch.setProjectionMatrix(testMatrix);

yourItem.draw..

batch.end();

我认为更有效,更改矩阵,调整所有对象的大小。

我希望能够解释清楚。

修改

我没有意识到,当我写下答案时,你可以存储保存原始矩阵,然后再编辑它以供以后使用,或使用batch.setProjectionMatrix (camera.combined);恢复