如何在LibGDX

时间:2015-05-30 12:02:43

标签: java opengl libgdx

我很难在LibGDX中找到基本的OpenGL功能glPushMatrixglPopMatrix

我渲染了我的场景,我想在场景顶部渲染一个叠加层,但我想在屏幕坐标中进行渲染,所以我想推送模型视图矩阵并加载标识。

本质上我想执行相当于:

glMatrixMode(GL_MODELVIEW);
glPushMatrix();
glLoadIdentity();

... stuff ...

glPopMatrix();

但是对于我的生活,我在LibGDX文档中或在我看过的源代码部分中都找不到push或pop的提及。

我错过了什么吗?还有其他一些实现这一目标的首选方式吗?

编辑:

我想要实现的是在我加载下一个级别然后淡入时淡化为黑色。我通过使用alpha在显示器上渲染黑色矩形来实现此目的。这些都不是问题,我只想拥有一个独立于当前世界变换的固定的已知坐标系来渲染这个矩形。

1 个答案:

答案 0 :(得分:2)

这些方法是OpenGL ES 1的固定渲染管道的一部分。自libGDX版本1.0.0以来,已经删除了对OpenGL ES 1的支持。仅支持OpenGL ES 2及更高版本的可编程渲染管道。如果你真的想使用这些旧方法,那么你可以使用旧版本的libGDX。

问题"如何渲染HUD叠加?"太宽泛了,无法在这里解释。但是对于基本方法(比如渲染HUD覆盖),libGDX完全不需要使用任何gl方法。您可能需要查看wiki,其中包含一些基本的examples。并遵循tutorial(虽然教程往往会过时,所以请注意这一点。)

但假设您使用的是SpriteBatch,请使用batch.setProjectionMatrix()