Для нашей игры на ОС Android мы в основном использовали ndk для написания нашей игры и тонкую оболочку Java, чтобы мы могли поддерживать все устройства с аппаратным обеспечением Gles 2.0.
Наша реализация довольно стандартна,используя переопределения GLSurfaceView, мы: * создаем / возобновляем часть игры на c ++ onSurfaceChanged (), * визуализируем onDrawFrame (), * информируем движок о потере gl Context в destroyContex (), который обычно происходит, когда приложение приостанавливается или разрушается.
Когда контекст gl воссоздается (при возобновлении - onSurfaceChanged ()), мы возвращаем информацию в игру и перезагружаем все ресурсы gl обратно. За время между onSurfaceChanged () и первым onDrawFrame через экранчерный, но я заметил довольно много 3D-игр, у которых нет такой проблемы (например, Gun Bros), они также, кажется, не перезагружают свои ресурсы (если у них нет всей памяти и быстро загружают их обратно).
Любая информация о том, почему это происходит?