2010-06-13 4 views
1

Ahoy,OpenGL ES размер холста

Я работаю над игрой OpenGL ES для Android, использующей NDK. Мое приложение нацелено на SDK 1.6 и выше.

У меня, кажется, проблема с созданием холста из собственного размера телефона. Мой рендеринг выполняется с помощью встроенного gameloop, использующего OpenGL 1.0. Я использую эмулятор, и это дает мне холст 480х320 - это совершенно нормально. Затем, когда я запускаю одно и то же приложение на своем HTC Desire, у которого есть собственное разрешение 800x480, я получаю полотно 533x320.

У кого-нибудь есть информация о том, как бороться с этим? Также приветствуется любая другая информация об этом.

Заранее благодарен!

+0

Какой код вы используете, чтобы установить размер? В примерах, предоставляемых SDK, метод onSurfaceChanged() GLSurfaceView задает правильное соотношение для видового экрана в зависимости от высоты и ширины, которые (насколько я могу судить) автоматически известны. – Maximus

ответ

1

Вы можете отображать разрешения, поддерживаемые вашей игрой в AndroidManifest.xml, на this property. Когда разрешение устройства отсутствует в списке, Android будет масштабировать область просмотра (это называется режимом совместимости).