   odd question when i draw a MD2 model
  I wanna render a MD2 model using OpenGL. i load MD2 file and a texture. But the result is so weird. The vertices seem to be right, but the texture on the model is wrong.It looks like the texture coordinates are incorrect. But i test the same method of loading MD2 file using DirectX. It works correctly! So, the data are right. And it isn't the BMP file's problem , i test it as well.Thank you for your help. I'm really confused.Here goes some critical part of my program.//The method set the texture void ARModel::setTexture( void ){glEnable(GL_TEXTURE_2D);glGenTextures(1, &mTexId);glBindTexture(GL_TEXTURE_2D, mTexId);glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_S,GL_CLAMP);glTexParameteri(GL_TEXTURE_2D,GL_TEXTURE_WRAP_T,GL_CLAMP);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_DECAL);    glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB, (int)(texture.getWidth()), (int)(texture.getHeight()),0, GL_RGB, GL_UNSIGNED_BYTE, texture.getData());}//The method render the modelvoid ARModel::renderModel(void){//buffer has all the MD2 data mMd2Model.updateBuffer();VERTEX_XYZ_NORMAL_TEX0 *pRenderBuffer = mMd2Model.getRenderBuffer();glEnable(GL_NORMALIZE);glEnable(GL_TEXTURE_2D);glBindTexture(GL_TEXTURE_2D, mTexId);glBegin(GL_TRIANGLES);for (size_t i=0; i< 3 * mMd2Model.getTrianglesNumber();){glNormal3fv(&pRenderBuffer.nx);glTexCoord2f(pRenderBuffer.coordX,pRenderBuffer.coordY);glVertex3fv(&pRenderBuffer.x);i++;glNormal3fv(&pRenderBuffer.nx);glTexCoord2f(pRenderBuffer.coordX,pRenderBuffer.coordY);glVertex3fv(&pRenderBuffer.x);i++;glNormal3fv(&pRenderBuffer.nx);glTexCoord2f(pRenderBuffer.coordX,pRenderBuffer.coordY);glVertex3fv(&pRenderBuffer.x);i++;}glEnd();glDisable(GL_NORMALIZE);glDisable(GL_TEXTURE_2D);}