Экраны iPad и iPhone имеют разные пропорции. IPhone 3: 2, а iPad 4: 3. Телефоны Android имеют слишком широкий диапазон различных пропорций, чтобы перечислять их, и я бы не стал комментировать Bada. Поэтому, если вы не собираетесь показывать свое изображение в почтовом ящике или столбике или растягивать его так, чтобы соотношение сторон менялось от устройства к устройству, количество видимого внутреннего мира будет меняться между устройствами.
В тот момент, когда вы зафиксировали левый и правый параметры при расчете верха и низа на основе пропорций экрана. Таким образом, вы получите одинаковое количество вашего мира по экрану на каждом устройстве, но количество по вертикали изменится.
Если ваша игра включает в себя камеру, движущуюся в 3d, то вы действительно мало что можете с этим поделать. Но так как вы говорите о вещах, выровненных по сторонам экрана, я думаю, что камера перемещается в 2d?
Как правило, если камера движется по вертикали, то вы, вероятно, хотите сохранить то, что у вас есть. Ваши уровни уровней, которые в точности соответствуют ширине экрана, будут равны ширине экрана каждого. Более широкие устройства смогут видеть дальше впереди или сзади, но все готово.
Если камера движется по горизонтали, то вы, вероятно, захотите перейти к предоставлению фиксированных значений для верха и низа и вычислению влево и вправо в соответствии с соотношением сторон. Итак, я думаю, это будет:
glOrthof(-1.0 * mWidth / mHeight, //LEFT
1.0 * mWidth / mHeight, //RIGHT
-1.0 , //BOTTOM
1.0 , //TOP
-2.0, //NEAR
100.0); //FAR
С точки зрения возможности закрыть все это внутри библиотеки, вам, вероятно, просто нужно получить флаг о том, должна ли быть фиксирована логическая ширина области просмотра, адаптирована ли высота к экрану или зафиксирована высота и адаптирована ли ширина.