Извините, если я говорю кратко; оказывается, что Safari на iPad отбрасывает ваш набор текста, когда он выполняет одну из возможных перезагрузок, вызванных предупреждением памяти.
Допущения: вы пометили вопрос iPhone, так что вы говорите о Cocoa Touch (с точкой отсчета в верхнем левом углу, положительным на оси у вниз). Точно так же вам, вероятно, нужны точки, а не пиксели - поэтому их 320x480 на экране, независимо от того, на дисплее сетчатки или нет.
glOrtho - именно то, что вам нужно - см. Справочную страницу по адресу http://www.khronos.org/opengles/documentation/opengles1_0/html/glOrtho.html. Итак, вы, вероятно, захотите сделать это со своим стеком проекций:
glOrthof (0, 320, 480, 0, 1, 1000);
А затем сделайте это один раз в виде модели:
glTranslatef (0, 0, -500)
И отправьте всю будущую геометрию без компонента z.
Для этого нужно настроить видовой экран без перспективы (т. Е. Позиция z не влияет на размер объекта), при этом левый край экрана равен x = 0, правый - x = 320, верхний - y = 0 и дно у = 480. Он произвольно размещает ближнюю плоскость отсечения на расстоянии 1, а дальнюю на расстоянии 1000, поскольку они должны быть где-то. Но затем он переводится на полпути (ладно, не совсем точно) между ними, и поэтому, если вы не отправите больше координат z, тогда вся ваша геометрия будет видимой, и у вас будет некоторая свобода для поворотов вокруг y или x, если вы хочу их.
Будьте осторожны: вызовы glVertex недоступны на iOS, поскольку они не являются частью OpenGL ES. Они также устарели в современном OpenGL. Короткая версия заключается в том, что они действительно неэффективны, и водителю сложно быстро с ними справиться. glVertexPointer - это то, что нужно использовать, передавая массив чисел C.