Плохие новости всем!Быстрое рендеринг программного обеспечения на iOS
Я пытаюсь перенести старую игру Windows на iPad, и у меня есть проблема. Большая часть графики написана без аппаратного ускорения. В Windows он использует LockRect()
вызов из класса IDirect3DSurface8
, чтобы получить colorbuffer от backbuffer и написать некоторые графические данные. После этого он использует UnlockRect
для отправки данных о пиксельных цветах в видео. Но OpenGL ES не обладает такой функциональностью. Я пытаюсь подражать этому. У меня есть массив, который я рисую каждый такт игры, используя glTexImage2D()
, затем glDrawTexfOES(0, 0, 0, 1024, 768)
Но создание текстуры из массива каждый такт происходит слишком медленно. Как я могу сделать это намного быстрее? Заранее спасибо.
Если вы вынимаете весь код записи графических данных, как быстро вы можете создать новую текстуру, используя glTexImage2D() для каждого кадра (или отметки)? Можете ли вы делать 30 или 60 кадров в секунду? – hotpaw2
Код не подходит, поэтому его было бы трудно понять. Но могу сказать, что без создания текстуры каждый такт FPS почти удвоился. – XRazont