在大多数 Android OpenGL 示例中,我看到人们在 onSurfaceChanged 中调用 glViewport。但是,我只是注意到,如果我将其注释掉,我的程序仍然表现相同。所以有必要调用它吗?
问问题
1101 次
1 回答
1
当您的 gl 视图尺寸被修改时,有必要调用处理glViewport
程序。onSurfaceChanged
通常是在设备旋转并交换视图的宽度和高度时。
如果width = height
未旋转或视图,则无需调用 to glViewport
。
默认情况下Activity
将在旋转后重新创建。为避免这种情况,您需要指定您的活动本身正在处理旋转。您需要将这些配置选项添加到您的AndroidManifest.xml
:
<activity android:name="Activity"
android:configChanges="screenSize|orientation">
完成此操作后,您的活动将保留您的 OpenGL 上下文。
于 2013-04-09T15:12:51.463 回答