Не могу нарисовать загруженные модели в OpenGL ES 1.x с C ++ - PullRequest
1 голос
/ 17 января 2012

Я загружаю модели obj и пытаюсь их визуализировать с помощью OpenGL ES с помощью Android NDK:

class ObjModel{
public:
    ObjModel();
    ~ObjModel();

    int numVertex, numNormal,numTexCoord, numTriange;

    float *vertexArray;
    float *normalArray;
    float *texCoordArray;
    unsigned short *indexArray;

    void loadModel(string fileName);
};

model->loadModel(filename);

glVertexPointer(3, GL_FLOAT, 0,  &(model->vertexArray[0]));
glNormalPointer(GL_FLOAT, 0,  &(model->normalArray[0]));
glDrawElements(GL_TRIANGLES, model->numTriange, GL_UNSIGNED_SHORT,
                 &(model->indexArray[0]));

Модель отображается не полностью, я вижу только ее часть.Я проверил данные в массивах, и они правильно проанализированы.Я думаю, что единственная проблема может быть с передачей аргументов.Я правильно делаю?

1 Ответ

2 голосов
/ 17 января 2012

Надеюсь, это поможет!Я думаю, что вы просто пропустите номер 3!

glDrawElements(GL_TRIANGLES, 3 * model->numTriange, GL_UNSIGNED_SHORT,
             &(model->indexArray[0]));
...