画像回転でOpenGLを使っていたのだが,どうやらビットマップよりテクスチャ貼り付けのほうが速いらしい.というわけで,描画を glDrawPixels からテクスチャに切り替え.
glEnable( GL_TEXTURE_2D );
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
glTexImage2D(GL_TEXTURE_2D , 0 , GL_RGBA , ImageWidth , ImageHeight, 0 , GL_RGBA, GL_UNSIGNED_BYTE , rotatedPixels);
glBegin(GL_POLYGON);
glTexCoord2f(0 , 0); glVertex2f(whiteSpace ,whiteSpace);
glTexCoord2f(0 , 1); glVertex2f(whiteSpace , ImageHeight+whiteSpace);
glTexCoord2f(1 , 1); glVertex2f(ImageWidth + whiteSpace, ImageHeight+whiteSpace);
glTexCoord2f(1 , 0); glVertex2f(ImageWidth + whiteSpace, whiteSpace);
glEnd();
glDisable( GL_TEXTURE_2D );
- Newer: ことはじめ