1

objモデルをロードし、AndroidNDKを使用してOpenGLESでレンダリングしようとします。

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]));

モデルが完全にレンダリングされていません。一部しか表示されていません。配列のデータを確認したところ、正しく解析されました。唯一の問題は引数を渡すことだと思います。私はそれを正しくやっていますか?

4

1 に答える 1

2

お役に立てれば!私はあなたがちょうど3番を逃していると思います!

glDrawElements(GL_TRIANGLES, 3 * model->numTriange, GL_UNSIGNED_SHORT,
             &(model->indexArray[0]));
于 2012-01-17T15:11:28.047 に答える