【问题标题】:Number of vertices ignored by glDrawElements() in libGDXlibGDX 中 glDrawElements() 忽略的顶点数
【发布时间】:2021-10-10 03:13:04
【问题描述】:

我正在尝试使用 libGDX 移植使用 opengl es 2.0 的 Android 游戏。在 libGDX 下,glDrawElements() 例程似乎在 PC 上被破坏,但在 Android 上有效。在 PC 版本上,第二个参数(顶点数)被忽略。当我使用 mFaceIndicesData.length 注释该行并使用 3 个顶点(1 个面三角形)时,它仍然在 PC 版本上绘制所有面,但在 Android 版本上仅绘制一个面,如每个图像所示。

是的,我知道 libGDX 应该与 libGDX 调用一起使用,所以请不要对此发表评论。我有一个完整的游戏引擎,它非常复杂。我更喜欢控制引擎而不是找出其他引擎,而且我很确定它可以做一些 libGDX 不支持的事情。无论如何,我不想从头开始。我只是在寻找一种从 Android 移植到 PC/IOS 的好方法,而 libGDX 似乎是一个不错的选择。

import com.badlogic.gdx.graphics.GL20;
...
    @Override
    public void create() {
    GLES20 = Gdx.gl20;
...

// Works on PC and Android
GLES20.glDrawElements(GL20.GL_TRIANGLES, mFaceIndicesData.length, GL20.GL_UNSIGNED_SHORT, mIndices);

// Only works on Android. Not PC.
//GLES20.glDrawElements(GL20.GL_TRIANGLES, 3, GL20.GL_UNSIGNED_SHORT, mIndices);

        

【问题讨论】:

    标签: libgdx opengl-es-2.0


    【解决方案1】:

    我在 libgdx 问题网站上发布了这个问题。它已被确认为一个错误,他们正在修复它。

    https://github.com/libgdx/libgdx/issues/6618

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-10
      • 1970-01-01
      • 1970-01-01
      • 2022-06-13
      • 2019-04-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多