Режущая часть текстуры - PullRequest
0 голосов
/ 30 июня 2010

Я пишу для iPhone, OpenGL ES

Знаете ли вы, как я могу нарисовать квад с частью определенной текстуры?

Теперь я рендеринг так:

 static const GLfloat texCoords[] = {
   0.0, 0.0,
   10.0, 0.0,
   10.0, 10.0,
   0.0, 10.0
  };
 glBindTexture(GL_TEXTURE_2D, atlas_tex[0]);

  GLfloat squareVertices[] = {
   0.0f, 0.0f,
   2000.5f, 0.0f,
   2000.5f,  2000.33f,
   0.0f,  2000.33f
  };


    glVertexPointer(2, GL_FLOAT, 0, squareVertices);
    glEnableClientState(GL_VERTEX_ARRAY);
 glTexCoordPointer(2, GL_FLOAT, 0, texCoords);
 glEnableClientState(GL_TEXTURE_COORD_ARRAY);

    glDrawArrays(GL_TRIANGLE_FAN, 0, 4);

Но, конечно, он отображает всю текстуру. Я не знаю, как это сделать.

1 Ответ

2 голосов
/ 30 июня 2010

Если я вас правильно понял, вам нужно соответствующим образом изменить массив texCoords.

Например, попробуйте что-то вроде этого:

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