Быстрый программный рендеринг на iOS - PullRequest
1 голос
/ 31 августа 2010

Плохие новости всем!

Я пытаюсь перенести старую игру для Windows на iPad, и у меня возникла проблема. Большая часть всей графики написана без аппаратного ускорения. В Windows он использует LockRect() вызов из класса IDirect3DSurface8, чтобы получить цветовой буфер из буфера и записать некоторые графические данные. После этого он использует UnlockRect для отправки наших данных цвета пикселей в видеомемору. Но OpenGL ES не имеет такой функциональности. Я пытаюсь подражать этому. У меня есть массив, который я рисую каждый такт игры, используя glTexImage2D(), затем glDrawTexfOES(0, 0, 0, 1024, 768)

Но создание текстуры из массива каждый такт слишком медленный. Как я могу сделать это намного быстрее? Заранее спасибо.

1 Ответ

1 голос
/ 31 августа 2010

Попробуйте отрисовать текстурированный квад и используйте glTexSubImage2D() для повторной загрузки текстуры.

...