как мы можем вращать текстуру, нарисованную для изображения в проекте open gl, используя цель c? - PullRequest
1 голос
/ 22 августа 2009

Я рисую изображение в OpenGL, используя

[Texture2D_plane drawAtPoint:CGPointMake(_position.x,_position.y)];

Но после определенного момента я хочу сделать поворот текстуры.
Какую функцию я должен использовать для этого?

Откуда-то я использую:

glRotatef(90,_position.x,_position.y,0);

Но я не знаю, как его использовать, я просто хочу повернуть изображение текстуры на 90 градусов.
Эта функция полезна, или мне нужно использовать другой способ ее поворота.

Любой код или ссылка?

Вот моя реализация метода рисования в точке

- (void) drawAtPoint:(CGPoint)point 
{
GLfloat     coordinates[] = { 0,    _maxT,
    _maxS,  _maxT,
    0,      0,
_maxS,  0 };
GLfloat     width = (GLfloat)_width * _maxS,
height = (GLfloat)_height * _maxT;
GLfloat     vertices[] = {  -width / 2 + point.x,   -height / 2 + point.y,  0.0,
    width / 2 + point.x,    -height / 2 + point.y,  0.0,
    -width / 2 + point.x,   height / 2 + point.y,   0.0,
width / 2 + point.x,    height / 2 + point.y,   0.0 };

glBindTexture(GL_TEXTURE_2D, _name);
glVertexPointer(3, GL_FLOAT, 0, vertices);
glTexCoordPointer(2, GL_FLOAT, 0, coordinates);
glDrawArrays(GL_TRIANGLE_STRIP, 0, 4);
}

Это реализация розыгрыша в точке

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