DrawElements и BadExec - PullRequest
       1

DrawElements и BadExec

0 голосов
/ 03 февраля 2012

Пока я использую следующие строки, у меня постоянно совпадает BAD_EXEC:

glVertexPointer(3, GL_FLOAT, 0, [drawObjectTmp getVertices]);
glDrawElements(GL_TRIANGLE_STRIP, [drawObjectTmp getVerticesSizeArray], GL_UNSIGNED_SHORT, [drawObjectTmp getVertexIndices]);

Где getVertexindices возвращает массив, определенный как (GLushort *), а getsizesSizeArray возвращает его размер. Я перепроверил контекст массива; оно имеет правильные значения.

Если я заменю массив следующим, он будет работать нормально:

static const GLfloat cubeVertices[] = {
    -1.0, -1.0,  1.0,
    1.0, -1.0,  1.0,
    -1.0,  1.0,  1.0,
    1.0,  1.0,  1.0,
    -1.0, -1.0, -1.0,
    1.0, -1.0, -1.0,
    -1.0,  1.0, -1.0,
    1.0,  1.0, -1.0,
};

Что именно я делаю не так?

1 Ответ

0 голосов
/ 03 февраля 2012

Вы уверены, что не включили другие массивы (например, массив TexCoord, или Color, или Normal)?

Вы уверены, что getVertexIndices не содержит индекс вершины, который находится вне возвращенного массива getVertices?

Вы уверены, что getVertices возвращает указатель на память, которая не освобождается во время glDrawElements?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...