OpenGL при включении телефона Android - PullRequest
5 голосов
/ 14 сентября 2010

Как это называется (какой термин мне гуглить) при переворачивании / наклоне телефона, , чтобы при запуске Android вращалось представление ?

Мое приложение (OpenGL) падает, когда ясделать это, есть ли определенные шаги, которые вы должны сделать при обработке OpenGL, когда это происходит?

Есть что-то еще, о чем я мог бы подумать?

Ответы [ 4 ]

5 голосов
/ 16 февраля 2011

если вы не установите атрибуты AndroidManifest.xml для действий, которые обрабатывают свои собственные вращения, ваша деятельность будет перезапущена, контекст GL будет воссоздан, и, по крайней мере, любые поверхности и буферы, которые вы использовалибыть недействительным.

в моем приложении gles 1.1, у меня есть следующее в моем AndroidManifest.xml, в котором указано, что мое приложение хочет жить через изменения конфигурации клавиатуры и ориентации и что приложение поддерживает любую ориентацию,но не хочет, чтобы это изменилось, потому что я не хочу иметь дело с перезагрузкой текстур или переделкой игрового макета (пока)

<application android:label="@string/app_name" 
             android:icon="@drawable/icon" 
             android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
             android:debuggable="true">
    <activity android:name="MainActivity"
              android:configChanges="keyboard|keyboardHidden|orientation"
              android:screenOrientation="nosensor"
              android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
3 голосов
/ 14 сентября 2010

Проблема похожа на изменение конфигурации, которое происходит при изменении ориентации экрана.См. Изменения конфигурации .Возможно, вы захотите сообщить Android, что вы сами справитесь с изменением ориентации через атрибут configChanges .

0 голосов
/ 18 сентября 2010

Вы можете попробовать поискать «Поворот экрана на Android» или «Поворот экрана на Android OpenGL», так как вы пытаетесь сделать 3D.Когда экран поворачивается, текущая поверхность разрушается и создается новая, уже учитывающая новые размеры экрана.

Я бы порекомендовал взглянуть на некоторый пример кода, просто чтобы увидеть правильный способ обработки поворота экрана, посмотритедля "ApiDemos.apk" в Android (кстати, с открытым исходным кодом), особенно тех, кто использует GL ", все они обрабатывают поворот экрана.

0 голосов
/ 14 сентября 2010
...