Когда я рисую один квадрат со следующими вершинами:
private static float[] vertexArray = {
// vertex
-0.5f, 0.5f, 0.5f,
-0.5f, -0.5f, 0.5f,
0.5f, -0.5f, 0.5f,
0.5f, 0.5f, 0.5f
};
private static short indicesArray[] = {
0, 1, 2,
0, 2, 3,
};
Результат хорош, он рисует цикл правильно
, но когда я рисую другой параллельный квадратследуя
private static float[] vertexArray = {
// vertex
-0.5f, 0.5f, 0.5f,
-0.5f, -0.5f, 0.5f,
0.5f, -0.5f, 0.5f,
0.5f, 0.5f, 0.5f,
-0.5f, 0.5f, -0.5f,
-0.5f, -0.5f, -0.5f,
0.5f, -0.5f, -0.5f,
0.5f, 0.5f, -0.5f,
};
private static short indicesArray[] = {
0, 1, 2,
0, 2, 3,
4, 5, 6,
4, 6, 7,
};
результат таков:
Я не знаю, почему это происходит.Я думаю, что есть кое-что, чего я не знаю о том, как GL_LINE_LOOP работает. GL_LINE_STRIPS тоже дает тот же результат.Как это исправить?Я хочу, чтобы квадраты были отдельными.
код следующий:
GLES30.glDrawElements(GLES30.GL_LINE_LOOP, indicesArray.length,GLES30.GL_UNSIGNED_SHORT,0);
Заранее спасибо.
извините за большие картинки Я надеюсь, что кто-то поможет мне исправить это.